1#[derive(Debug, Default)]
5pub struct CustomActionType {
6 properties: CustomActionTypeProperties
7}
8
9#[derive(Debug, Default)]
11pub struct CustomActionTypeProperties {
12 pub category: ::Value<String>,
17 pub configuration_properties: Option<::ValueList<self::custom_action_type::ConfigurationProperties>>,
22 pub input_artifact_details: ::Value<self::custom_action_type::ArtifactDetails>,
27 pub output_artifact_details: ::Value<self::custom_action_type::ArtifactDetails>,
32 pub provider: ::Value<String>,
37 pub settings: Option<::Value<self::custom_action_type::Settings>>,
42 pub tags: Option<::ValueList<::Tag>>,
47 pub version: ::Value<String>,
52}
53
54impl ::serde::Serialize for CustomActionTypeProperties {
55 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
56 let mut map = ::serde::Serializer::serialize_map(s, None)?;
57 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Category", &self.category)?;
58 if let Some(ref configuration_properties) = self.configuration_properties {
59 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ConfigurationProperties", configuration_properties)?;
60 }
61 ::serde::ser::SerializeMap::serialize_entry(&mut map, "InputArtifactDetails", &self.input_artifact_details)?;
62 ::serde::ser::SerializeMap::serialize_entry(&mut map, "OutputArtifactDetails", &self.output_artifact_details)?;
63 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Provider", &self.provider)?;
64 if let Some(ref settings) = self.settings {
65 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Settings", settings)?;
66 }
67 if let Some(ref tags) = self.tags {
68 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
69 }
70 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Version", &self.version)?;
71 ::serde::ser::SerializeMap::end(map)
72 }
73}
74
75impl<'de> ::serde::Deserialize<'de> for CustomActionTypeProperties {
76 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<CustomActionTypeProperties, D::Error> {
77 struct Visitor;
78
79 impl<'de> ::serde::de::Visitor<'de> for Visitor {
80 type Value = CustomActionTypeProperties;
81
82 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
83 write!(f, "a struct of type CustomActionTypeProperties")
84 }
85
86 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
87 let mut category: Option<::Value<String>> = None;
88 let mut configuration_properties: Option<::ValueList<self::custom_action_type::ConfigurationProperties>> = None;
89 let mut input_artifact_details: Option<::Value<self::custom_action_type::ArtifactDetails>> = None;
90 let mut output_artifact_details: Option<::Value<self::custom_action_type::ArtifactDetails>> = None;
91 let mut provider: Option<::Value<String>> = None;
92 let mut settings: Option<::Value<self::custom_action_type::Settings>> = None;
93 let mut tags: Option<::ValueList<::Tag>> = None;
94 let mut version: Option<::Value<String>> = None;
95
96 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
97 match __cfn_key.as_ref() {
98 "Category" => {
99 category = ::serde::de::MapAccess::next_value(&mut map)?;
100 }
101 "ConfigurationProperties" => {
102 configuration_properties = ::serde::de::MapAccess::next_value(&mut map)?;
103 }
104 "InputArtifactDetails" => {
105 input_artifact_details = ::serde::de::MapAccess::next_value(&mut map)?;
106 }
107 "OutputArtifactDetails" => {
108 output_artifact_details = ::serde::de::MapAccess::next_value(&mut map)?;
109 }
110 "Provider" => {
111 provider = ::serde::de::MapAccess::next_value(&mut map)?;
112 }
113 "Settings" => {
114 settings = ::serde::de::MapAccess::next_value(&mut map)?;
115 }
116 "Tags" => {
117 tags = ::serde::de::MapAccess::next_value(&mut map)?;
118 }
119 "Version" => {
120 version = ::serde::de::MapAccess::next_value(&mut map)?;
121 }
122 _ => {}
123 }
124 }
125
126 Ok(CustomActionTypeProperties {
127 category: category.ok_or(::serde::de::Error::missing_field("Category"))?,
128 configuration_properties: configuration_properties,
129 input_artifact_details: input_artifact_details.ok_or(::serde::de::Error::missing_field("InputArtifactDetails"))?,
130 output_artifact_details: output_artifact_details.ok_or(::serde::de::Error::missing_field("OutputArtifactDetails"))?,
131 provider: provider.ok_or(::serde::de::Error::missing_field("Provider"))?,
132 settings: settings,
133 tags: tags,
134 version: version.ok_or(::serde::de::Error::missing_field("Version"))?,
135 })
136 }
137 }
138
139 d.deserialize_map(Visitor)
140 }
141}
142
143impl ::Resource for CustomActionType {
144 type Properties = CustomActionTypeProperties;
145 const TYPE: &'static str = "AWS::CodePipeline::CustomActionType";
146 fn properties(&self) -> &CustomActionTypeProperties {
147 &self.properties
148 }
149 fn properties_mut(&mut self) -> &mut CustomActionTypeProperties {
150 &mut self.properties
151 }
152}
153
154impl ::private::Sealed for CustomActionType {}
155
156impl From<CustomActionTypeProperties> for CustomActionType {
157 fn from(properties: CustomActionTypeProperties) -> CustomActionType {
158 CustomActionType { properties }
159 }
160}
161
162#[derive(Debug, Default)]
164pub struct Pipeline {
165 properties: PipelineProperties
166}
167
168#[derive(Debug, Default)]
170pub struct PipelineProperties {
171 pub artifact_store: Option<::Value<self::pipeline::ArtifactStore>>,
176 pub artifact_stores: Option<::ValueList<self::pipeline::ArtifactStoreMap>>,
181 pub disable_inbound_stage_transitions: Option<::ValueList<self::pipeline::StageTransition>>,
186 pub name: Option<::Value<String>>,
191 pub restart_execution_on_update: Option<::Value<bool>>,
196 pub role_arn: ::Value<String>,
201 pub stages: ::ValueList<self::pipeline::StageDeclaration>,
206 pub tags: Option<::ValueList<::Tag>>,
211}
212
213impl ::serde::Serialize for PipelineProperties {
214 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
215 let mut map = ::serde::Serializer::serialize_map(s, None)?;
216 if let Some(ref artifact_store) = self.artifact_store {
217 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ArtifactStore", artifact_store)?;
218 }
219 if let Some(ref artifact_stores) = self.artifact_stores {
220 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ArtifactStores", artifact_stores)?;
221 }
222 if let Some(ref disable_inbound_stage_transitions) = self.disable_inbound_stage_transitions {
223 ::serde::ser::SerializeMap::serialize_entry(&mut map, "DisableInboundStageTransitions", disable_inbound_stage_transitions)?;
224 }
225 if let Some(ref name) = self.name {
226 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", name)?;
227 }
228 if let Some(ref restart_execution_on_update) = self.restart_execution_on_update {
229 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RestartExecutionOnUpdate", restart_execution_on_update)?;
230 }
231 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RoleArn", &self.role_arn)?;
232 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Stages", &self.stages)?;
233 if let Some(ref tags) = self.tags {
234 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
235 }
236 ::serde::ser::SerializeMap::end(map)
237 }
238}
239
240impl<'de> ::serde::Deserialize<'de> for PipelineProperties {
241 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<PipelineProperties, D::Error> {
242 struct Visitor;
243
244 impl<'de> ::serde::de::Visitor<'de> for Visitor {
245 type Value = PipelineProperties;
246
247 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
248 write!(f, "a struct of type PipelineProperties")
249 }
250
251 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
252 let mut artifact_store: Option<::Value<self::pipeline::ArtifactStore>> = None;
253 let mut artifact_stores: Option<::ValueList<self::pipeline::ArtifactStoreMap>> = None;
254 let mut disable_inbound_stage_transitions: Option<::ValueList<self::pipeline::StageTransition>> = None;
255 let mut name: Option<::Value<String>> = None;
256 let mut restart_execution_on_update: Option<::Value<bool>> = None;
257 let mut role_arn: Option<::Value<String>> = None;
258 let mut stages: Option<::ValueList<self::pipeline::StageDeclaration>> = None;
259 let mut tags: Option<::ValueList<::Tag>> = None;
260
261 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
262 match __cfn_key.as_ref() {
263 "ArtifactStore" => {
264 artifact_store = ::serde::de::MapAccess::next_value(&mut map)?;
265 }
266 "ArtifactStores" => {
267 artifact_stores = ::serde::de::MapAccess::next_value(&mut map)?;
268 }
269 "DisableInboundStageTransitions" => {
270 disable_inbound_stage_transitions = ::serde::de::MapAccess::next_value(&mut map)?;
271 }
272 "Name" => {
273 name = ::serde::de::MapAccess::next_value(&mut map)?;
274 }
275 "RestartExecutionOnUpdate" => {
276 restart_execution_on_update = ::serde::de::MapAccess::next_value(&mut map)?;
277 }
278 "RoleArn" => {
279 role_arn = ::serde::de::MapAccess::next_value(&mut map)?;
280 }
281 "Stages" => {
282 stages = ::serde::de::MapAccess::next_value(&mut map)?;
283 }
284 "Tags" => {
285 tags = ::serde::de::MapAccess::next_value(&mut map)?;
286 }
287 _ => {}
288 }
289 }
290
291 Ok(PipelineProperties {
292 artifact_store: artifact_store,
293 artifact_stores: artifact_stores,
294 disable_inbound_stage_transitions: disable_inbound_stage_transitions,
295 name: name,
296 restart_execution_on_update: restart_execution_on_update,
297 role_arn: role_arn.ok_or(::serde::de::Error::missing_field("RoleArn"))?,
298 stages: stages.ok_or(::serde::de::Error::missing_field("Stages"))?,
299 tags: tags,
300 })
301 }
302 }
303
304 d.deserialize_map(Visitor)
305 }
306}
307
308impl ::Resource for Pipeline {
309 type Properties = PipelineProperties;
310 const TYPE: &'static str = "AWS::CodePipeline::Pipeline";
311 fn properties(&self) -> &PipelineProperties {
312 &self.properties
313 }
314 fn properties_mut(&mut self) -> &mut PipelineProperties {
315 &mut self.properties
316 }
317}
318
319impl ::private::Sealed for Pipeline {}
320
321impl From<PipelineProperties> for Pipeline {
322 fn from(properties: PipelineProperties) -> Pipeline {
323 Pipeline { properties }
324 }
325}
326
327#[derive(Debug, Default)]
329pub struct Webhook {
330 properties: WebhookProperties
331}
332
333#[derive(Debug, Default)]
335pub struct WebhookProperties {
336 pub authentication: ::Value<String>,
341 pub authentication_configuration: ::Value<self::webhook::WebhookAuthConfiguration>,
346 pub filters: ::ValueList<self::webhook::WebhookFilterRule>,
351 pub name: Option<::Value<String>>,
356 pub register_with_third_party: Option<::Value<bool>>,
361 pub target_action: ::Value<String>,
366 pub target_pipeline: ::Value<String>,
371 pub target_pipeline_version: ::Value<u32>,
376}
377
378impl ::serde::Serialize for WebhookProperties {
379 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
380 let mut map = ::serde::Serializer::serialize_map(s, None)?;
381 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Authentication", &self.authentication)?;
382 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AuthenticationConfiguration", &self.authentication_configuration)?;
383 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Filters", &self.filters)?;
384 if let Some(ref name) = self.name {
385 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", name)?;
386 }
387 if let Some(ref register_with_third_party) = self.register_with_third_party {
388 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RegisterWithThirdParty", register_with_third_party)?;
389 }
390 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TargetAction", &self.target_action)?;
391 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TargetPipeline", &self.target_pipeline)?;
392 ::serde::ser::SerializeMap::serialize_entry(&mut map, "TargetPipelineVersion", &self.target_pipeline_version)?;
393 ::serde::ser::SerializeMap::end(map)
394 }
395}
396
397impl<'de> ::serde::Deserialize<'de> for WebhookProperties {
398 fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<WebhookProperties, D::Error> {
399 struct Visitor;
400
401 impl<'de> ::serde::de::Visitor<'de> for Visitor {
402 type Value = WebhookProperties;
403
404 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
405 write!(f, "a struct of type WebhookProperties")
406 }
407
408 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
409 let mut authentication: Option<::Value<String>> = None;
410 let mut authentication_configuration: Option<::Value<self::webhook::WebhookAuthConfiguration>> = None;
411 let mut filters: Option<::ValueList<self::webhook::WebhookFilterRule>> = None;
412 let mut name: Option<::Value<String>> = None;
413 let mut register_with_third_party: Option<::Value<bool>> = None;
414 let mut target_action: Option<::Value<String>> = None;
415 let mut target_pipeline: Option<::Value<String>> = None;
416 let mut target_pipeline_version: Option<::Value<u32>> = None;
417
418 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
419 match __cfn_key.as_ref() {
420 "Authentication" => {
421 authentication = ::serde::de::MapAccess::next_value(&mut map)?;
422 }
423 "AuthenticationConfiguration" => {
424 authentication_configuration = ::serde::de::MapAccess::next_value(&mut map)?;
425 }
426 "Filters" => {
427 filters = ::serde::de::MapAccess::next_value(&mut map)?;
428 }
429 "Name" => {
430 name = ::serde::de::MapAccess::next_value(&mut map)?;
431 }
432 "RegisterWithThirdParty" => {
433 register_with_third_party = ::serde::de::MapAccess::next_value(&mut map)?;
434 }
435 "TargetAction" => {
436 target_action = ::serde::de::MapAccess::next_value(&mut map)?;
437 }
438 "TargetPipeline" => {
439 target_pipeline = ::serde::de::MapAccess::next_value(&mut map)?;
440 }
441 "TargetPipelineVersion" => {
442 target_pipeline_version = ::serde::de::MapAccess::next_value(&mut map)?;
443 }
444 _ => {}
445 }
446 }
447
448 Ok(WebhookProperties {
449 authentication: authentication.ok_or(::serde::de::Error::missing_field("Authentication"))?,
450 authentication_configuration: authentication_configuration.ok_or(::serde::de::Error::missing_field("AuthenticationConfiguration"))?,
451 filters: filters.ok_or(::serde::de::Error::missing_field("Filters"))?,
452 name: name,
453 register_with_third_party: register_with_third_party,
454 target_action: target_action.ok_or(::serde::de::Error::missing_field("TargetAction"))?,
455 target_pipeline: target_pipeline.ok_or(::serde::de::Error::missing_field("TargetPipeline"))?,
456 target_pipeline_version: target_pipeline_version.ok_or(::serde::de::Error::missing_field("TargetPipelineVersion"))?,
457 })
458 }
459 }
460
461 d.deserialize_map(Visitor)
462 }
463}
464
465impl ::Resource for Webhook {
466 type Properties = WebhookProperties;
467 const TYPE: &'static str = "AWS::CodePipeline::Webhook";
468 fn properties(&self) -> &WebhookProperties {
469 &self.properties
470 }
471 fn properties_mut(&mut self) -> &mut WebhookProperties {
472 &mut self.properties
473 }
474}
475
476impl ::private::Sealed for Webhook {}
477
478impl From<WebhookProperties> for Webhook {
479 fn from(properties: WebhookProperties) -> Webhook {
480 Webhook { properties }
481 }
482}
483
484pub mod custom_action_type {
485 #[derive(Debug, Default)]
489 pub struct ArtifactDetails {
490 pub maximum_count: ::Value<u32>,
495 pub minimum_count: ::Value<u32>,
500 }
501
502 impl ::codec::SerializeValue for ArtifactDetails {
503 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
504 let mut map = ::serde::Serializer::serialize_map(s, None)?;
505 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MaximumCount", &self.maximum_count)?;
506 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MinimumCount", &self.minimum_count)?;
507 ::serde::ser::SerializeMap::end(map)
508 }
509 }
510
511 impl ::codec::DeserializeValue for ArtifactDetails {
512 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ArtifactDetails, D::Error> {
513 struct Visitor;
514
515 impl<'de> ::serde::de::Visitor<'de> for Visitor {
516 type Value = ArtifactDetails;
517
518 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
519 write!(f, "a struct of type ArtifactDetails")
520 }
521
522 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
523 let mut maximum_count: Option<::Value<u32>> = None;
524 let mut minimum_count: Option<::Value<u32>> = None;
525
526 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
527 match __cfn_key.as_ref() {
528 "MaximumCount" => {
529 maximum_count = ::serde::de::MapAccess::next_value(&mut map)?;
530 }
531 "MinimumCount" => {
532 minimum_count = ::serde::de::MapAccess::next_value(&mut map)?;
533 }
534 _ => {}
535 }
536 }
537
538 Ok(ArtifactDetails {
539 maximum_count: maximum_count.ok_or(::serde::de::Error::missing_field("MaximumCount"))?,
540 minimum_count: minimum_count.ok_or(::serde::de::Error::missing_field("MinimumCount"))?,
541 })
542 }
543 }
544
545 d.deserialize_map(Visitor)
546 }
547 }
548
549 #[derive(Debug, Default)]
551 pub struct ConfigurationProperties {
552 pub description: Option<::Value<String>>,
557 pub key: ::Value<bool>,
562 pub name: ::Value<String>,
567 pub queryable: Option<::Value<bool>>,
572 pub required: ::Value<bool>,
577 pub secret: ::Value<bool>,
582 pub r#type: Option<::Value<String>>,
587 }
588
589 impl ::codec::SerializeValue for ConfigurationProperties {
590 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
591 let mut map = ::serde::Serializer::serialize_map(s, None)?;
592 if let Some(ref description) = self.description {
593 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
594 }
595 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Key", &self.key)?;
596 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
597 if let Some(ref queryable) = self.queryable {
598 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Queryable", queryable)?;
599 }
600 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Required", &self.required)?;
601 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Secret", &self.secret)?;
602 if let Some(ref r#type) = self.r#type {
603 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Type", r#type)?;
604 }
605 ::serde::ser::SerializeMap::end(map)
606 }
607 }
608
609 impl ::codec::DeserializeValue for ConfigurationProperties {
610 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ConfigurationProperties, D::Error> {
611 struct Visitor;
612
613 impl<'de> ::serde::de::Visitor<'de> for Visitor {
614 type Value = ConfigurationProperties;
615
616 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
617 write!(f, "a struct of type ConfigurationProperties")
618 }
619
620 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
621 let mut description: Option<::Value<String>> = None;
622 let mut key: Option<::Value<bool>> = None;
623 let mut name: Option<::Value<String>> = None;
624 let mut queryable: Option<::Value<bool>> = None;
625 let mut required: Option<::Value<bool>> = None;
626 let mut secret: Option<::Value<bool>> = None;
627 let mut r#type: Option<::Value<String>> = None;
628
629 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
630 match __cfn_key.as_ref() {
631 "Description" => {
632 description = ::serde::de::MapAccess::next_value(&mut map)?;
633 }
634 "Key" => {
635 key = ::serde::de::MapAccess::next_value(&mut map)?;
636 }
637 "Name" => {
638 name = ::serde::de::MapAccess::next_value(&mut map)?;
639 }
640 "Queryable" => {
641 queryable = ::serde::de::MapAccess::next_value(&mut map)?;
642 }
643 "Required" => {
644 required = ::serde::de::MapAccess::next_value(&mut map)?;
645 }
646 "Secret" => {
647 secret = ::serde::de::MapAccess::next_value(&mut map)?;
648 }
649 "Type" => {
650 r#type = ::serde::de::MapAccess::next_value(&mut map)?;
651 }
652 _ => {}
653 }
654 }
655
656 Ok(ConfigurationProperties {
657 description: description,
658 key: key.ok_or(::serde::de::Error::missing_field("Key"))?,
659 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
660 queryable: queryable,
661 required: required.ok_or(::serde::de::Error::missing_field("Required"))?,
662 secret: secret.ok_or(::serde::de::Error::missing_field("Secret"))?,
663 r#type: r#type,
664 })
665 }
666 }
667
668 d.deserialize_map(Visitor)
669 }
670 }
671
672 #[derive(Debug, Default)]
674 pub struct Settings {
675 pub entity_url_template: Option<::Value<String>>,
680 pub execution_url_template: Option<::Value<String>>,
685 pub revision_url_template: Option<::Value<String>>,
690 pub third_party_configuration_url: Option<::Value<String>>,
695 }
696
697 impl ::codec::SerializeValue for Settings {
698 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
699 let mut map = ::serde::Serializer::serialize_map(s, None)?;
700 if let Some(ref entity_url_template) = self.entity_url_template {
701 ::serde::ser::SerializeMap::serialize_entry(&mut map, "EntityUrlTemplate", entity_url_template)?;
702 }
703 if let Some(ref execution_url_template) = self.execution_url_template {
704 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ExecutionUrlTemplate", execution_url_template)?;
705 }
706 if let Some(ref revision_url_template) = self.revision_url_template {
707 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RevisionUrlTemplate", revision_url_template)?;
708 }
709 if let Some(ref third_party_configuration_url) = self.third_party_configuration_url {
710 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ThirdPartyConfigurationUrl", third_party_configuration_url)?;
711 }
712 ::serde::ser::SerializeMap::end(map)
713 }
714 }
715
716 impl ::codec::DeserializeValue for Settings {
717 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<Settings, D::Error> {
718 struct Visitor;
719
720 impl<'de> ::serde::de::Visitor<'de> for Visitor {
721 type Value = Settings;
722
723 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
724 write!(f, "a struct of type Settings")
725 }
726
727 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
728 let mut entity_url_template: Option<::Value<String>> = None;
729 let mut execution_url_template: Option<::Value<String>> = None;
730 let mut revision_url_template: Option<::Value<String>> = None;
731 let mut third_party_configuration_url: Option<::Value<String>> = None;
732
733 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
734 match __cfn_key.as_ref() {
735 "EntityUrlTemplate" => {
736 entity_url_template = ::serde::de::MapAccess::next_value(&mut map)?;
737 }
738 "ExecutionUrlTemplate" => {
739 execution_url_template = ::serde::de::MapAccess::next_value(&mut map)?;
740 }
741 "RevisionUrlTemplate" => {
742 revision_url_template = ::serde::de::MapAccess::next_value(&mut map)?;
743 }
744 "ThirdPartyConfigurationUrl" => {
745 third_party_configuration_url = ::serde::de::MapAccess::next_value(&mut map)?;
746 }
747 _ => {}
748 }
749 }
750
751 Ok(Settings {
752 entity_url_template: entity_url_template,
753 execution_url_template: execution_url_template,
754 revision_url_template: revision_url_template,
755 third_party_configuration_url: third_party_configuration_url,
756 })
757 }
758 }
759
760 d.deserialize_map(Visitor)
761 }
762 }
763}
764
765pub mod pipeline {
766 #[derive(Debug, Default)]
770 pub struct ActionDeclaration {
771 pub action_type_id: ::Value<ActionTypeId>,
776 pub configuration: Option<::Value<::json::Value>>,
781 pub input_artifacts: Option<::ValueList<InputArtifact>>,
786 pub name: ::Value<String>,
791 pub namespace: Option<::Value<String>>,
796 pub output_artifacts: Option<::ValueList<OutputArtifact>>,
801 pub region: Option<::Value<String>>,
806 pub role_arn: Option<::Value<String>>,
811 pub run_order: Option<::Value<u32>>,
816 }
817
818 impl ::codec::SerializeValue for ActionDeclaration {
819 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
820 let mut map = ::serde::Serializer::serialize_map(s, None)?;
821 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ActionTypeId", &self.action_type_id)?;
822 if let Some(ref configuration) = self.configuration {
823 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Configuration", configuration)?;
824 }
825 if let Some(ref input_artifacts) = self.input_artifacts {
826 ::serde::ser::SerializeMap::serialize_entry(&mut map, "InputArtifacts", input_artifacts)?;
827 }
828 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
829 if let Some(ref namespace) = self.namespace {
830 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Namespace", namespace)?;
831 }
832 if let Some(ref output_artifacts) = self.output_artifacts {
833 ::serde::ser::SerializeMap::serialize_entry(&mut map, "OutputArtifacts", output_artifacts)?;
834 }
835 if let Some(ref region) = self.region {
836 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Region", region)?;
837 }
838 if let Some(ref role_arn) = self.role_arn {
839 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RoleArn", role_arn)?;
840 }
841 if let Some(ref run_order) = self.run_order {
842 ::serde::ser::SerializeMap::serialize_entry(&mut map, "RunOrder", run_order)?;
843 }
844 ::serde::ser::SerializeMap::end(map)
845 }
846 }
847
848 impl ::codec::DeserializeValue for ActionDeclaration {
849 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ActionDeclaration, D::Error> {
850 struct Visitor;
851
852 impl<'de> ::serde::de::Visitor<'de> for Visitor {
853 type Value = ActionDeclaration;
854
855 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
856 write!(f, "a struct of type ActionDeclaration")
857 }
858
859 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
860 let mut action_type_id: Option<::Value<ActionTypeId>> = None;
861 let mut configuration: Option<::Value<::json::Value>> = None;
862 let mut input_artifacts: Option<::ValueList<InputArtifact>> = None;
863 let mut name: Option<::Value<String>> = None;
864 let mut namespace: Option<::Value<String>> = None;
865 let mut output_artifacts: Option<::ValueList<OutputArtifact>> = None;
866 let mut region: Option<::Value<String>> = None;
867 let mut role_arn: Option<::Value<String>> = None;
868 let mut run_order: Option<::Value<u32>> = None;
869
870 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
871 match __cfn_key.as_ref() {
872 "ActionTypeId" => {
873 action_type_id = ::serde::de::MapAccess::next_value(&mut map)?;
874 }
875 "Configuration" => {
876 configuration = ::serde::de::MapAccess::next_value(&mut map)?;
877 }
878 "InputArtifacts" => {
879 input_artifacts = ::serde::de::MapAccess::next_value(&mut map)?;
880 }
881 "Name" => {
882 name = ::serde::de::MapAccess::next_value(&mut map)?;
883 }
884 "Namespace" => {
885 namespace = ::serde::de::MapAccess::next_value(&mut map)?;
886 }
887 "OutputArtifacts" => {
888 output_artifacts = ::serde::de::MapAccess::next_value(&mut map)?;
889 }
890 "Region" => {
891 region = ::serde::de::MapAccess::next_value(&mut map)?;
892 }
893 "RoleArn" => {
894 role_arn = ::serde::de::MapAccess::next_value(&mut map)?;
895 }
896 "RunOrder" => {
897 run_order = ::serde::de::MapAccess::next_value(&mut map)?;
898 }
899 _ => {}
900 }
901 }
902
903 Ok(ActionDeclaration {
904 action_type_id: action_type_id.ok_or(::serde::de::Error::missing_field("ActionTypeId"))?,
905 configuration: configuration,
906 input_artifacts: input_artifacts,
907 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
908 namespace: namespace,
909 output_artifacts: output_artifacts,
910 region: region,
911 role_arn: role_arn,
912 run_order: run_order,
913 })
914 }
915 }
916
917 d.deserialize_map(Visitor)
918 }
919 }
920
921 #[derive(Debug, Default)]
923 pub struct ActionTypeId {
924 pub category: ::Value<String>,
929 pub owner: ::Value<String>,
934 pub provider: ::Value<String>,
939 pub version: ::Value<String>,
944 }
945
946 impl ::codec::SerializeValue for ActionTypeId {
947 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
948 let mut map = ::serde::Serializer::serialize_map(s, None)?;
949 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Category", &self.category)?;
950 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Owner", &self.owner)?;
951 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Provider", &self.provider)?;
952 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Version", &self.version)?;
953 ::serde::ser::SerializeMap::end(map)
954 }
955 }
956
957 impl ::codec::DeserializeValue for ActionTypeId {
958 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ActionTypeId, D::Error> {
959 struct Visitor;
960
961 impl<'de> ::serde::de::Visitor<'de> for Visitor {
962 type Value = ActionTypeId;
963
964 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
965 write!(f, "a struct of type ActionTypeId")
966 }
967
968 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
969 let mut category: Option<::Value<String>> = None;
970 let mut owner: Option<::Value<String>> = None;
971 let mut provider: Option<::Value<String>> = None;
972 let mut version: Option<::Value<String>> = None;
973
974 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
975 match __cfn_key.as_ref() {
976 "Category" => {
977 category = ::serde::de::MapAccess::next_value(&mut map)?;
978 }
979 "Owner" => {
980 owner = ::serde::de::MapAccess::next_value(&mut map)?;
981 }
982 "Provider" => {
983 provider = ::serde::de::MapAccess::next_value(&mut map)?;
984 }
985 "Version" => {
986 version = ::serde::de::MapAccess::next_value(&mut map)?;
987 }
988 _ => {}
989 }
990 }
991
992 Ok(ActionTypeId {
993 category: category.ok_or(::serde::de::Error::missing_field("Category"))?,
994 owner: owner.ok_or(::serde::de::Error::missing_field("Owner"))?,
995 provider: provider.ok_or(::serde::de::Error::missing_field("Provider"))?,
996 version: version.ok_or(::serde::de::Error::missing_field("Version"))?,
997 })
998 }
999 }
1000
1001 d.deserialize_map(Visitor)
1002 }
1003 }
1004
1005 #[derive(Debug, Default)]
1007 pub struct ArtifactStore {
1008 pub encryption_key: Option<::Value<EncryptionKey>>,
1013 pub location: ::Value<String>,
1018 pub r#type: ::Value<String>,
1023 }
1024
1025 impl ::codec::SerializeValue for ArtifactStore {
1026 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1027 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1028 if let Some(ref encryption_key) = self.encryption_key {
1029 ::serde::ser::SerializeMap::serialize_entry(&mut map, "EncryptionKey", encryption_key)?;
1030 }
1031 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Location", &self.location)?;
1032 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Type", &self.r#type)?;
1033 ::serde::ser::SerializeMap::end(map)
1034 }
1035 }
1036
1037 impl ::codec::DeserializeValue for ArtifactStore {
1038 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ArtifactStore, D::Error> {
1039 struct Visitor;
1040
1041 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1042 type Value = ArtifactStore;
1043
1044 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1045 write!(f, "a struct of type ArtifactStore")
1046 }
1047
1048 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1049 let mut encryption_key: Option<::Value<EncryptionKey>> = None;
1050 let mut location: Option<::Value<String>> = None;
1051 let mut r#type: Option<::Value<String>> = None;
1052
1053 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1054 match __cfn_key.as_ref() {
1055 "EncryptionKey" => {
1056 encryption_key = ::serde::de::MapAccess::next_value(&mut map)?;
1057 }
1058 "Location" => {
1059 location = ::serde::de::MapAccess::next_value(&mut map)?;
1060 }
1061 "Type" => {
1062 r#type = ::serde::de::MapAccess::next_value(&mut map)?;
1063 }
1064 _ => {}
1065 }
1066 }
1067
1068 Ok(ArtifactStore {
1069 encryption_key: encryption_key,
1070 location: location.ok_or(::serde::de::Error::missing_field("Location"))?,
1071 r#type: r#type.ok_or(::serde::de::Error::missing_field("Type"))?,
1072 })
1073 }
1074 }
1075
1076 d.deserialize_map(Visitor)
1077 }
1078 }
1079
1080 #[derive(Debug, Default)]
1082 pub struct ArtifactStoreMap {
1083 pub artifact_store: ::Value<ArtifactStore>,
1088 pub region: ::Value<String>,
1093 }
1094
1095 impl ::codec::SerializeValue for ArtifactStoreMap {
1096 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1097 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1098 ::serde::ser::SerializeMap::serialize_entry(&mut map, "ArtifactStore", &self.artifact_store)?;
1099 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Region", &self.region)?;
1100 ::serde::ser::SerializeMap::end(map)
1101 }
1102 }
1103
1104 impl ::codec::DeserializeValue for ArtifactStoreMap {
1105 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<ArtifactStoreMap, D::Error> {
1106 struct Visitor;
1107
1108 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1109 type Value = ArtifactStoreMap;
1110
1111 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1112 write!(f, "a struct of type ArtifactStoreMap")
1113 }
1114
1115 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1116 let mut artifact_store: Option<::Value<ArtifactStore>> = None;
1117 let mut region: Option<::Value<String>> = None;
1118
1119 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1120 match __cfn_key.as_ref() {
1121 "ArtifactStore" => {
1122 artifact_store = ::serde::de::MapAccess::next_value(&mut map)?;
1123 }
1124 "Region" => {
1125 region = ::serde::de::MapAccess::next_value(&mut map)?;
1126 }
1127 _ => {}
1128 }
1129 }
1130
1131 Ok(ArtifactStoreMap {
1132 artifact_store: artifact_store.ok_or(::serde::de::Error::missing_field("ArtifactStore"))?,
1133 region: region.ok_or(::serde::de::Error::missing_field("Region"))?,
1134 })
1135 }
1136 }
1137
1138 d.deserialize_map(Visitor)
1139 }
1140 }
1141
1142 #[derive(Debug, Default)]
1144 pub struct BlockerDeclaration {
1145 pub name: ::Value<String>,
1150 pub r#type: ::Value<String>,
1155 }
1156
1157 impl ::codec::SerializeValue for BlockerDeclaration {
1158 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1159 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1160 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
1161 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Type", &self.r#type)?;
1162 ::serde::ser::SerializeMap::end(map)
1163 }
1164 }
1165
1166 impl ::codec::DeserializeValue for BlockerDeclaration {
1167 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<BlockerDeclaration, D::Error> {
1168 struct Visitor;
1169
1170 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1171 type Value = BlockerDeclaration;
1172
1173 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1174 write!(f, "a struct of type BlockerDeclaration")
1175 }
1176
1177 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1178 let mut name: Option<::Value<String>> = None;
1179 let mut r#type: Option<::Value<String>> = None;
1180
1181 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1182 match __cfn_key.as_ref() {
1183 "Name" => {
1184 name = ::serde::de::MapAccess::next_value(&mut map)?;
1185 }
1186 "Type" => {
1187 r#type = ::serde::de::MapAccess::next_value(&mut map)?;
1188 }
1189 _ => {}
1190 }
1191 }
1192
1193 Ok(BlockerDeclaration {
1194 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
1195 r#type: r#type.ok_or(::serde::de::Error::missing_field("Type"))?,
1196 })
1197 }
1198 }
1199
1200 d.deserialize_map(Visitor)
1201 }
1202 }
1203
1204 #[derive(Debug, Default)]
1206 pub struct EncryptionKey {
1207 pub id: ::Value<String>,
1212 pub r#type: ::Value<String>,
1217 }
1218
1219 impl ::codec::SerializeValue for EncryptionKey {
1220 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1221 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1222 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Id", &self.id)?;
1223 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Type", &self.r#type)?;
1224 ::serde::ser::SerializeMap::end(map)
1225 }
1226 }
1227
1228 impl ::codec::DeserializeValue for EncryptionKey {
1229 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<EncryptionKey, D::Error> {
1230 struct Visitor;
1231
1232 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1233 type Value = EncryptionKey;
1234
1235 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1236 write!(f, "a struct of type EncryptionKey")
1237 }
1238
1239 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1240 let mut id: Option<::Value<String>> = None;
1241 let mut r#type: Option<::Value<String>> = None;
1242
1243 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1244 match __cfn_key.as_ref() {
1245 "Id" => {
1246 id = ::serde::de::MapAccess::next_value(&mut map)?;
1247 }
1248 "Type" => {
1249 r#type = ::serde::de::MapAccess::next_value(&mut map)?;
1250 }
1251 _ => {}
1252 }
1253 }
1254
1255 Ok(EncryptionKey {
1256 id: id.ok_or(::serde::de::Error::missing_field("Id"))?,
1257 r#type: r#type.ok_or(::serde::de::Error::missing_field("Type"))?,
1258 })
1259 }
1260 }
1261
1262 d.deserialize_map(Visitor)
1263 }
1264 }
1265
1266 #[derive(Debug, Default)]
1268 pub struct InputArtifact {
1269 pub name: ::Value<String>,
1274 }
1275
1276 impl ::codec::SerializeValue for InputArtifact {
1277 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1278 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1279 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
1280 ::serde::ser::SerializeMap::end(map)
1281 }
1282 }
1283
1284 impl ::codec::DeserializeValue for InputArtifact {
1285 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<InputArtifact, D::Error> {
1286 struct Visitor;
1287
1288 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1289 type Value = InputArtifact;
1290
1291 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1292 write!(f, "a struct of type InputArtifact")
1293 }
1294
1295 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1296 let mut name: Option<::Value<String>> = None;
1297
1298 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1299 match __cfn_key.as_ref() {
1300 "Name" => {
1301 name = ::serde::de::MapAccess::next_value(&mut map)?;
1302 }
1303 _ => {}
1304 }
1305 }
1306
1307 Ok(InputArtifact {
1308 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
1309 })
1310 }
1311 }
1312
1313 d.deserialize_map(Visitor)
1314 }
1315 }
1316
1317 #[derive(Debug, Default)]
1319 pub struct OutputArtifact {
1320 pub name: ::Value<String>,
1325 }
1326
1327 impl ::codec::SerializeValue for OutputArtifact {
1328 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1329 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1330 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
1331 ::serde::ser::SerializeMap::end(map)
1332 }
1333 }
1334
1335 impl ::codec::DeserializeValue for OutputArtifact {
1336 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<OutputArtifact, D::Error> {
1337 struct Visitor;
1338
1339 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1340 type Value = OutputArtifact;
1341
1342 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1343 write!(f, "a struct of type OutputArtifact")
1344 }
1345
1346 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1347 let mut name: Option<::Value<String>> = None;
1348
1349 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1350 match __cfn_key.as_ref() {
1351 "Name" => {
1352 name = ::serde::de::MapAccess::next_value(&mut map)?;
1353 }
1354 _ => {}
1355 }
1356 }
1357
1358 Ok(OutputArtifact {
1359 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
1360 })
1361 }
1362 }
1363
1364 d.deserialize_map(Visitor)
1365 }
1366 }
1367
1368 #[derive(Debug, Default)]
1370 pub struct StageDeclaration {
1371 pub actions: ::ValueList<ActionDeclaration>,
1376 pub blockers: Option<::ValueList<BlockerDeclaration>>,
1381 pub name: ::Value<String>,
1386 }
1387
1388 impl ::codec::SerializeValue for StageDeclaration {
1389 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1390 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1391 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Actions", &self.actions)?;
1392 if let Some(ref blockers) = self.blockers {
1393 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Blockers", blockers)?;
1394 }
1395 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
1396 ::serde::ser::SerializeMap::end(map)
1397 }
1398 }
1399
1400 impl ::codec::DeserializeValue for StageDeclaration {
1401 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<StageDeclaration, D::Error> {
1402 struct Visitor;
1403
1404 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1405 type Value = StageDeclaration;
1406
1407 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1408 write!(f, "a struct of type StageDeclaration")
1409 }
1410
1411 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1412 let mut actions: Option<::ValueList<ActionDeclaration>> = None;
1413 let mut blockers: Option<::ValueList<BlockerDeclaration>> = None;
1414 let mut name: Option<::Value<String>> = None;
1415
1416 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1417 match __cfn_key.as_ref() {
1418 "Actions" => {
1419 actions = ::serde::de::MapAccess::next_value(&mut map)?;
1420 }
1421 "Blockers" => {
1422 blockers = ::serde::de::MapAccess::next_value(&mut map)?;
1423 }
1424 "Name" => {
1425 name = ::serde::de::MapAccess::next_value(&mut map)?;
1426 }
1427 _ => {}
1428 }
1429 }
1430
1431 Ok(StageDeclaration {
1432 actions: actions.ok_or(::serde::de::Error::missing_field("Actions"))?,
1433 blockers: blockers,
1434 name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
1435 })
1436 }
1437 }
1438
1439 d.deserialize_map(Visitor)
1440 }
1441 }
1442
1443 #[derive(Debug, Default)]
1445 pub struct StageTransition {
1446 pub reason: ::Value<String>,
1451 pub stage_name: ::Value<String>,
1456 }
1457
1458 impl ::codec::SerializeValue for StageTransition {
1459 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1460 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1461 ::serde::ser::SerializeMap::serialize_entry(&mut map, "Reason", &self.reason)?;
1462 ::serde::ser::SerializeMap::serialize_entry(&mut map, "StageName", &self.stage_name)?;
1463 ::serde::ser::SerializeMap::end(map)
1464 }
1465 }
1466
1467 impl ::codec::DeserializeValue for StageTransition {
1468 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<StageTransition, D::Error> {
1469 struct Visitor;
1470
1471 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1472 type Value = StageTransition;
1473
1474 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1475 write!(f, "a struct of type StageTransition")
1476 }
1477
1478 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1479 let mut reason: Option<::Value<String>> = None;
1480 let mut stage_name: Option<::Value<String>> = None;
1481
1482 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1483 match __cfn_key.as_ref() {
1484 "Reason" => {
1485 reason = ::serde::de::MapAccess::next_value(&mut map)?;
1486 }
1487 "StageName" => {
1488 stage_name = ::serde::de::MapAccess::next_value(&mut map)?;
1489 }
1490 _ => {}
1491 }
1492 }
1493
1494 Ok(StageTransition {
1495 reason: reason.ok_or(::serde::de::Error::missing_field("Reason"))?,
1496 stage_name: stage_name.ok_or(::serde::de::Error::missing_field("StageName"))?,
1497 })
1498 }
1499 }
1500
1501 d.deserialize_map(Visitor)
1502 }
1503 }
1504}
1505
1506pub mod webhook {
1507 #[derive(Debug, Default)]
1511 pub struct WebhookAuthConfiguration {
1512 pub allowed_ip_range: Option<::Value<String>>,
1517 pub secret_token: Option<::Value<String>>,
1522 }
1523
1524 impl ::codec::SerializeValue for WebhookAuthConfiguration {
1525 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1526 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1527 if let Some(ref allowed_ip_range) = self.allowed_ip_range {
1528 ::serde::ser::SerializeMap::serialize_entry(&mut map, "AllowedIPRange", allowed_ip_range)?;
1529 }
1530 if let Some(ref secret_token) = self.secret_token {
1531 ::serde::ser::SerializeMap::serialize_entry(&mut map, "SecretToken", secret_token)?;
1532 }
1533 ::serde::ser::SerializeMap::end(map)
1534 }
1535 }
1536
1537 impl ::codec::DeserializeValue for WebhookAuthConfiguration {
1538 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<WebhookAuthConfiguration, D::Error> {
1539 struct Visitor;
1540
1541 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1542 type Value = WebhookAuthConfiguration;
1543
1544 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1545 write!(f, "a struct of type WebhookAuthConfiguration")
1546 }
1547
1548 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1549 let mut allowed_ip_range: Option<::Value<String>> = None;
1550 let mut secret_token: Option<::Value<String>> = None;
1551
1552 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1553 match __cfn_key.as_ref() {
1554 "AllowedIPRange" => {
1555 allowed_ip_range = ::serde::de::MapAccess::next_value(&mut map)?;
1556 }
1557 "SecretToken" => {
1558 secret_token = ::serde::de::MapAccess::next_value(&mut map)?;
1559 }
1560 _ => {}
1561 }
1562 }
1563
1564 Ok(WebhookAuthConfiguration {
1565 allowed_ip_range: allowed_ip_range,
1566 secret_token: secret_token,
1567 })
1568 }
1569 }
1570
1571 d.deserialize_map(Visitor)
1572 }
1573 }
1574
1575 #[derive(Debug, Default)]
1577 pub struct WebhookFilterRule {
1578 pub json_path: ::Value<String>,
1583 pub match_equals: Option<::Value<String>>,
1588 }
1589
1590 impl ::codec::SerializeValue for WebhookFilterRule {
1591 fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
1592 let mut map = ::serde::Serializer::serialize_map(s, None)?;
1593 ::serde::ser::SerializeMap::serialize_entry(&mut map, "JsonPath", &self.json_path)?;
1594 if let Some(ref match_equals) = self.match_equals {
1595 ::serde::ser::SerializeMap::serialize_entry(&mut map, "MatchEquals", match_equals)?;
1596 }
1597 ::serde::ser::SerializeMap::end(map)
1598 }
1599 }
1600
1601 impl ::codec::DeserializeValue for WebhookFilterRule {
1602 fn deserialize<'de, D: ::serde::Deserializer<'de>>(d: D) -> Result<WebhookFilterRule, D::Error> {
1603 struct Visitor;
1604
1605 impl<'de> ::serde::de::Visitor<'de> for Visitor {
1606 type Value = WebhookFilterRule;
1607
1608 fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1609 write!(f, "a struct of type WebhookFilterRule")
1610 }
1611
1612 fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
1613 let mut json_path: Option<::Value<String>> = None;
1614 let mut match_equals: Option<::Value<String>> = None;
1615
1616 while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
1617 match __cfn_key.as_ref() {
1618 "JsonPath" => {
1619 json_path = ::serde::de::MapAccess::next_value(&mut map)?;
1620 }
1621 "MatchEquals" => {
1622 match_equals = ::serde::de::MapAccess::next_value(&mut map)?;
1623 }
1624 _ => {}
1625 }
1626 }
1627
1628 Ok(WebhookFilterRule {
1629 json_path: json_path.ok_or(::serde::de::Error::missing_field("JsonPath"))?,
1630 match_equals: match_equals,
1631 })
1632 }
1633 }
1634
1635 d.deserialize_map(Visitor)
1636 }
1637 }
1638}