aws_sdk_cloudformation/operation/create_stack_instances/_create_stack_instances_input.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreateStackInstancesInput {
6 /// <p>The name or unique ID of the StackSet that you want to create stack instances from.</p>
7 pub stack_set_name: ::std::option::Option<::std::string::String>,
8 /// <p>\[Self-managed permissions\] The account IDs of one or more Amazon Web Services accounts that you want to create stack instances in the specified Region(s) for.</p>
9 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
10 pub accounts: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
11 /// <p>\[Service-managed permissions\] The Organizations accounts in which to create stack instances in the specified Amazon Web Services Regions.</p>
12 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
13 pub deployment_targets: ::std::option::Option<crate::types::DeploymentTargets>,
14 /// <p>The names of one or more Amazon Web Services Regions where you want to create stack instances using the specified Amazon Web Services accounts.</p>
15 pub regions: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
16 /// <p>A list of StackSet parameters whose values you want to override in the selected stack instances.</p>
17 /// <p>Any overridden parameter values will be applied to all stack instances in the specified accounts and Amazon Web Services Regions. When specifying parameters and their values, be aware of how CloudFormation sets parameter values during stack instance operations:</p>
18 /// <ul>
19 /// <li>
20 /// <p>To override the current value for a parameter, include the parameter and specify its value.</p></li>
21 /// <li>
22 /// <p>To leave an overridden parameter set to its present value, include the parameter and specify <code>UsePreviousValue</code> as <code>true</code>. (You can't specify both a value and set <code>UsePreviousValue</code> to <code>true</code>.)</p></li>
23 /// <li>
24 /// <p>To set an overridden parameter back to the value specified in the StackSet, specify a parameter list but don't include the parameter in the list.</p></li>
25 /// <li>
26 /// <p>To leave all parameters set to their present values, don't specify this property at all.</p></li>
27 /// </ul>
28 /// <p>During StackSet updates, any parameter values overridden for a stack instance aren't updated, but retain their overridden value.</p>
29 /// <p>You can only override the parameter <i>values</i> that are specified in the StackSet; to add or delete a parameter itself, use <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStackSet.html">UpdateStackSet</a> to update the StackSet template.</p>
30 pub parameter_overrides: ::std::option::Option<::std::vec::Vec<crate::types::Parameter>>,
31 /// <p>Preferences for how CloudFormation performs this StackSet operation.</p>
32 pub operation_preferences: ::std::option::Option<crate::types::StackSetOperationPreferences>,
33 /// <p>The unique identifier for this StackSet operation.</p>
34 /// <p>The operation ID also functions as an idempotency token, to ensure that CloudFormation performs the StackSet operation only once, even if you retry the request multiple times. You might retry StackSet operation requests to ensure that CloudFormation successfully received them.</p>
35 /// <p>If you don't specify an operation ID, the SDK generates one automatically.</p>
36 /// <p>Repeating this StackSet operation with a new operation ID retries all stack instances whose status is <code>OUTDATED</code>.</p>
37 pub operation_id: ::std::option::Option<::std::string::String>,
38 /// <p>\[Service-managed permissions\] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.</p>
39 /// <p>By default, <code>SELF</code> is specified. Use <code>SELF</code> for StackSets with self-managed permissions.</p>
40 /// <ul>
41 /// <li>
42 /// <p>If you are signed in to the management account, specify <code>SELF</code>.</p></li>
43 /// <li>
44 /// <p>If you are signed in to a delegated administrator account, specify <code>DELEGATED_ADMIN</code>.</p>
45 /// <p>Your Amazon Web Services account must be registered as a delegated administrator in the management account. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p></li>
46 /// </ul>
47 pub call_as: ::std::option::Option<crate::types::CallAs>,
48}
49impl CreateStackInstancesInput {
50 /// <p>The name or unique ID of the StackSet that you want to create stack instances from.</p>
51 pub fn stack_set_name(&self) -> ::std::option::Option<&str> {
52 self.stack_set_name.as_deref()
53 }
54 /// <p>\[Self-managed permissions\] The account IDs of one or more Amazon Web Services accounts that you want to create stack instances in the specified Region(s) for.</p>
55 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
56 ///
57 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.accounts.is_none()`.
58 pub fn accounts(&self) -> &[::std::string::String] {
59 self.accounts.as_deref().unwrap_or_default()
60 }
61 /// <p>\[Service-managed permissions\] The Organizations accounts in which to create stack instances in the specified Amazon Web Services Regions.</p>
62 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
63 pub fn deployment_targets(&self) -> ::std::option::Option<&crate::types::DeploymentTargets> {
64 self.deployment_targets.as_ref()
65 }
66 /// <p>The names of one or more Amazon Web Services Regions where you want to create stack instances using the specified Amazon Web Services accounts.</p>
67 ///
68 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.regions.is_none()`.
69 pub fn regions(&self) -> &[::std::string::String] {
70 self.regions.as_deref().unwrap_or_default()
71 }
72 /// <p>A list of StackSet parameters whose values you want to override in the selected stack instances.</p>
73 /// <p>Any overridden parameter values will be applied to all stack instances in the specified accounts and Amazon Web Services Regions. When specifying parameters and their values, be aware of how CloudFormation sets parameter values during stack instance operations:</p>
74 /// <ul>
75 /// <li>
76 /// <p>To override the current value for a parameter, include the parameter and specify its value.</p></li>
77 /// <li>
78 /// <p>To leave an overridden parameter set to its present value, include the parameter and specify <code>UsePreviousValue</code> as <code>true</code>. (You can't specify both a value and set <code>UsePreviousValue</code> to <code>true</code>.)</p></li>
79 /// <li>
80 /// <p>To set an overridden parameter back to the value specified in the StackSet, specify a parameter list but don't include the parameter in the list.</p></li>
81 /// <li>
82 /// <p>To leave all parameters set to their present values, don't specify this property at all.</p></li>
83 /// </ul>
84 /// <p>During StackSet updates, any parameter values overridden for a stack instance aren't updated, but retain their overridden value.</p>
85 /// <p>You can only override the parameter <i>values</i> that are specified in the StackSet; to add or delete a parameter itself, use <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStackSet.html">UpdateStackSet</a> to update the StackSet template.</p>
86 ///
87 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.parameter_overrides.is_none()`.
88 pub fn parameter_overrides(&self) -> &[crate::types::Parameter] {
89 self.parameter_overrides.as_deref().unwrap_or_default()
90 }
91 /// <p>Preferences for how CloudFormation performs this StackSet operation.</p>
92 pub fn operation_preferences(&self) -> ::std::option::Option<&crate::types::StackSetOperationPreferences> {
93 self.operation_preferences.as_ref()
94 }
95 /// <p>The unique identifier for this StackSet operation.</p>
96 /// <p>The operation ID also functions as an idempotency token, to ensure that CloudFormation performs the StackSet operation only once, even if you retry the request multiple times. You might retry StackSet operation requests to ensure that CloudFormation successfully received them.</p>
97 /// <p>If you don't specify an operation ID, the SDK generates one automatically.</p>
98 /// <p>Repeating this StackSet operation with a new operation ID retries all stack instances whose status is <code>OUTDATED</code>.</p>
99 pub fn operation_id(&self) -> ::std::option::Option<&str> {
100 self.operation_id.as_deref()
101 }
102 /// <p>\[Service-managed permissions\] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.</p>
103 /// <p>By default, <code>SELF</code> is specified. Use <code>SELF</code> for StackSets with self-managed permissions.</p>
104 /// <ul>
105 /// <li>
106 /// <p>If you are signed in to the management account, specify <code>SELF</code>.</p></li>
107 /// <li>
108 /// <p>If you are signed in to a delegated administrator account, specify <code>DELEGATED_ADMIN</code>.</p>
109 /// <p>Your Amazon Web Services account must be registered as a delegated administrator in the management account. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p></li>
110 /// </ul>
111 pub fn call_as(&self) -> ::std::option::Option<&crate::types::CallAs> {
112 self.call_as.as_ref()
113 }
114}
115impl CreateStackInstancesInput {
116 /// Creates a new builder-style object to manufacture [`CreateStackInstancesInput`](crate::operation::create_stack_instances::CreateStackInstancesInput).
117 pub fn builder() -> crate::operation::create_stack_instances::builders::CreateStackInstancesInputBuilder {
118 crate::operation::create_stack_instances::builders::CreateStackInstancesInputBuilder::default()
119 }
120}
121
122/// A builder for [`CreateStackInstancesInput`](crate::operation::create_stack_instances::CreateStackInstancesInput).
123#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
124#[non_exhaustive]
125pub struct CreateStackInstancesInputBuilder {
126 pub(crate) stack_set_name: ::std::option::Option<::std::string::String>,
127 pub(crate) accounts: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
128 pub(crate) deployment_targets: ::std::option::Option<crate::types::DeploymentTargets>,
129 pub(crate) regions: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
130 pub(crate) parameter_overrides: ::std::option::Option<::std::vec::Vec<crate::types::Parameter>>,
131 pub(crate) operation_preferences: ::std::option::Option<crate::types::StackSetOperationPreferences>,
132 pub(crate) operation_id: ::std::option::Option<::std::string::String>,
133 pub(crate) call_as: ::std::option::Option<crate::types::CallAs>,
134}
135impl CreateStackInstancesInputBuilder {
136 /// <p>The name or unique ID of the StackSet that you want to create stack instances from.</p>
137 /// This field is required.
138 pub fn stack_set_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
139 self.stack_set_name = ::std::option::Option::Some(input.into());
140 self
141 }
142 /// <p>The name or unique ID of the StackSet that you want to create stack instances from.</p>
143 pub fn set_stack_set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
144 self.stack_set_name = input;
145 self
146 }
147 /// <p>The name or unique ID of the StackSet that you want to create stack instances from.</p>
148 pub fn get_stack_set_name(&self) -> &::std::option::Option<::std::string::String> {
149 &self.stack_set_name
150 }
151 /// Appends an item to `accounts`.
152 ///
153 /// To override the contents of this collection use [`set_accounts`](Self::set_accounts).
154 ///
155 /// <p>\[Self-managed permissions\] The account IDs of one or more Amazon Web Services accounts that you want to create stack instances in the specified Region(s) for.</p>
156 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
157 pub fn accounts(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
158 let mut v = self.accounts.unwrap_or_default();
159 v.push(input.into());
160 self.accounts = ::std::option::Option::Some(v);
161 self
162 }
163 /// <p>\[Self-managed permissions\] The account IDs of one or more Amazon Web Services accounts that you want to create stack instances in the specified Region(s) for.</p>
164 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
165 pub fn set_accounts(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
166 self.accounts = input;
167 self
168 }
169 /// <p>\[Self-managed permissions\] The account IDs of one or more Amazon Web Services accounts that you want to create stack instances in the specified Region(s) for.</p>
170 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
171 pub fn get_accounts(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
172 &self.accounts
173 }
174 /// <p>\[Service-managed permissions\] The Organizations accounts in which to create stack instances in the specified Amazon Web Services Regions.</p>
175 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
176 pub fn deployment_targets(mut self, input: crate::types::DeploymentTargets) -> Self {
177 self.deployment_targets = ::std::option::Option::Some(input);
178 self
179 }
180 /// <p>\[Service-managed permissions\] The Organizations accounts in which to create stack instances in the specified Amazon Web Services Regions.</p>
181 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
182 pub fn set_deployment_targets(mut self, input: ::std::option::Option<crate::types::DeploymentTargets>) -> Self {
183 self.deployment_targets = input;
184 self
185 }
186 /// <p>\[Service-managed permissions\] The Organizations accounts in which to create stack instances in the specified Amazon Web Services Regions.</p>
187 /// <p>You can specify <code>Accounts</code> or <code>DeploymentTargets</code>, but not both.</p>
188 pub fn get_deployment_targets(&self) -> &::std::option::Option<crate::types::DeploymentTargets> {
189 &self.deployment_targets
190 }
191 /// Appends an item to `regions`.
192 ///
193 /// To override the contents of this collection use [`set_regions`](Self::set_regions).
194 ///
195 /// <p>The names of one or more Amazon Web Services Regions where you want to create stack instances using the specified Amazon Web Services accounts.</p>
196 pub fn regions(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
197 let mut v = self.regions.unwrap_or_default();
198 v.push(input.into());
199 self.regions = ::std::option::Option::Some(v);
200 self
201 }
202 /// <p>The names of one or more Amazon Web Services Regions where you want to create stack instances using the specified Amazon Web Services accounts.</p>
203 pub fn set_regions(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
204 self.regions = input;
205 self
206 }
207 /// <p>The names of one or more Amazon Web Services Regions where you want to create stack instances using the specified Amazon Web Services accounts.</p>
208 pub fn get_regions(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
209 &self.regions
210 }
211 /// Appends an item to `parameter_overrides`.
212 ///
213 /// To override the contents of this collection use [`set_parameter_overrides`](Self::set_parameter_overrides).
214 ///
215 /// <p>A list of StackSet parameters whose values you want to override in the selected stack instances.</p>
216 /// <p>Any overridden parameter values will be applied to all stack instances in the specified accounts and Amazon Web Services Regions. When specifying parameters and their values, be aware of how CloudFormation sets parameter values during stack instance operations:</p>
217 /// <ul>
218 /// <li>
219 /// <p>To override the current value for a parameter, include the parameter and specify its value.</p></li>
220 /// <li>
221 /// <p>To leave an overridden parameter set to its present value, include the parameter and specify <code>UsePreviousValue</code> as <code>true</code>. (You can't specify both a value and set <code>UsePreviousValue</code> to <code>true</code>.)</p></li>
222 /// <li>
223 /// <p>To set an overridden parameter back to the value specified in the StackSet, specify a parameter list but don't include the parameter in the list.</p></li>
224 /// <li>
225 /// <p>To leave all parameters set to their present values, don't specify this property at all.</p></li>
226 /// </ul>
227 /// <p>During StackSet updates, any parameter values overridden for a stack instance aren't updated, but retain their overridden value.</p>
228 /// <p>You can only override the parameter <i>values</i> that are specified in the StackSet; to add or delete a parameter itself, use <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStackSet.html">UpdateStackSet</a> to update the StackSet template.</p>
229 pub fn parameter_overrides(mut self, input: crate::types::Parameter) -> Self {
230 let mut v = self.parameter_overrides.unwrap_or_default();
231 v.push(input);
232 self.parameter_overrides = ::std::option::Option::Some(v);
233 self
234 }
235 /// <p>A list of StackSet parameters whose values you want to override in the selected stack instances.</p>
236 /// <p>Any overridden parameter values will be applied to all stack instances in the specified accounts and Amazon Web Services Regions. When specifying parameters and their values, be aware of how CloudFormation sets parameter values during stack instance operations:</p>
237 /// <ul>
238 /// <li>
239 /// <p>To override the current value for a parameter, include the parameter and specify its value.</p></li>
240 /// <li>
241 /// <p>To leave an overridden parameter set to its present value, include the parameter and specify <code>UsePreviousValue</code> as <code>true</code>. (You can't specify both a value and set <code>UsePreviousValue</code> to <code>true</code>.)</p></li>
242 /// <li>
243 /// <p>To set an overridden parameter back to the value specified in the StackSet, specify a parameter list but don't include the parameter in the list.</p></li>
244 /// <li>
245 /// <p>To leave all parameters set to their present values, don't specify this property at all.</p></li>
246 /// </ul>
247 /// <p>During StackSet updates, any parameter values overridden for a stack instance aren't updated, but retain their overridden value.</p>
248 /// <p>You can only override the parameter <i>values</i> that are specified in the StackSet; to add or delete a parameter itself, use <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStackSet.html">UpdateStackSet</a> to update the StackSet template.</p>
249 pub fn set_parameter_overrides(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Parameter>>) -> Self {
250 self.parameter_overrides = input;
251 self
252 }
253 /// <p>A list of StackSet parameters whose values you want to override in the selected stack instances.</p>
254 /// <p>Any overridden parameter values will be applied to all stack instances in the specified accounts and Amazon Web Services Regions. When specifying parameters and their values, be aware of how CloudFormation sets parameter values during stack instance operations:</p>
255 /// <ul>
256 /// <li>
257 /// <p>To override the current value for a parameter, include the parameter and specify its value.</p></li>
258 /// <li>
259 /// <p>To leave an overridden parameter set to its present value, include the parameter and specify <code>UsePreviousValue</code> as <code>true</code>. (You can't specify both a value and set <code>UsePreviousValue</code> to <code>true</code>.)</p></li>
260 /// <li>
261 /// <p>To set an overridden parameter back to the value specified in the StackSet, specify a parameter list but don't include the parameter in the list.</p></li>
262 /// <li>
263 /// <p>To leave all parameters set to their present values, don't specify this property at all.</p></li>
264 /// </ul>
265 /// <p>During StackSet updates, any parameter values overridden for a stack instance aren't updated, but retain their overridden value.</p>
266 /// <p>You can only override the parameter <i>values</i> that are specified in the StackSet; to add or delete a parameter itself, use <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_UpdateStackSet.html">UpdateStackSet</a> to update the StackSet template.</p>
267 pub fn get_parameter_overrides(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Parameter>> {
268 &self.parameter_overrides
269 }
270 /// <p>Preferences for how CloudFormation performs this StackSet operation.</p>
271 pub fn operation_preferences(mut self, input: crate::types::StackSetOperationPreferences) -> Self {
272 self.operation_preferences = ::std::option::Option::Some(input);
273 self
274 }
275 /// <p>Preferences for how CloudFormation performs this StackSet operation.</p>
276 pub fn set_operation_preferences(mut self, input: ::std::option::Option<crate::types::StackSetOperationPreferences>) -> Self {
277 self.operation_preferences = input;
278 self
279 }
280 /// <p>Preferences for how CloudFormation performs this StackSet operation.</p>
281 pub fn get_operation_preferences(&self) -> &::std::option::Option<crate::types::StackSetOperationPreferences> {
282 &self.operation_preferences
283 }
284 /// <p>The unique identifier for this StackSet operation.</p>
285 /// <p>The operation ID also functions as an idempotency token, to ensure that CloudFormation performs the StackSet operation only once, even if you retry the request multiple times. You might retry StackSet operation requests to ensure that CloudFormation successfully received them.</p>
286 /// <p>If you don't specify an operation ID, the SDK generates one automatically.</p>
287 /// <p>Repeating this StackSet operation with a new operation ID retries all stack instances whose status is <code>OUTDATED</code>.</p>
288 pub fn operation_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
289 self.operation_id = ::std::option::Option::Some(input.into());
290 self
291 }
292 /// <p>The unique identifier for this StackSet operation.</p>
293 /// <p>The operation ID also functions as an idempotency token, to ensure that CloudFormation performs the StackSet operation only once, even if you retry the request multiple times. You might retry StackSet operation requests to ensure that CloudFormation successfully received them.</p>
294 /// <p>If you don't specify an operation ID, the SDK generates one automatically.</p>
295 /// <p>Repeating this StackSet operation with a new operation ID retries all stack instances whose status is <code>OUTDATED</code>.</p>
296 pub fn set_operation_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
297 self.operation_id = input;
298 self
299 }
300 /// <p>The unique identifier for this StackSet operation.</p>
301 /// <p>The operation ID also functions as an idempotency token, to ensure that CloudFormation performs the StackSet operation only once, even if you retry the request multiple times. You might retry StackSet operation requests to ensure that CloudFormation successfully received them.</p>
302 /// <p>If you don't specify an operation ID, the SDK generates one automatically.</p>
303 /// <p>Repeating this StackSet operation with a new operation ID retries all stack instances whose status is <code>OUTDATED</code>.</p>
304 pub fn get_operation_id(&self) -> &::std::option::Option<::std::string::String> {
305 &self.operation_id
306 }
307 /// <p>\[Service-managed permissions\] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.</p>
308 /// <p>By default, <code>SELF</code> is specified. Use <code>SELF</code> for StackSets with self-managed permissions.</p>
309 /// <ul>
310 /// <li>
311 /// <p>If you are signed in to the management account, specify <code>SELF</code>.</p></li>
312 /// <li>
313 /// <p>If you are signed in to a delegated administrator account, specify <code>DELEGATED_ADMIN</code>.</p>
314 /// <p>Your Amazon Web Services account must be registered as a delegated administrator in the management account. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p></li>
315 /// </ul>
316 pub fn call_as(mut self, input: crate::types::CallAs) -> Self {
317 self.call_as = ::std::option::Option::Some(input);
318 self
319 }
320 /// <p>\[Service-managed permissions\] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.</p>
321 /// <p>By default, <code>SELF</code> is specified. Use <code>SELF</code> for StackSets with self-managed permissions.</p>
322 /// <ul>
323 /// <li>
324 /// <p>If you are signed in to the management account, specify <code>SELF</code>.</p></li>
325 /// <li>
326 /// <p>If you are signed in to a delegated administrator account, specify <code>DELEGATED_ADMIN</code>.</p>
327 /// <p>Your Amazon Web Services account must be registered as a delegated administrator in the management account. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p></li>
328 /// </ul>
329 pub fn set_call_as(mut self, input: ::std::option::Option<crate::types::CallAs>) -> Self {
330 self.call_as = input;
331 self
332 }
333 /// <p>\[Service-managed permissions\] Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.</p>
334 /// <p>By default, <code>SELF</code> is specified. Use <code>SELF</code> for StackSets with self-managed permissions.</p>
335 /// <ul>
336 /// <li>
337 /// <p>If you are signed in to the management account, specify <code>SELF</code>.</p></li>
338 /// <li>
339 /// <p>If you are signed in to a delegated administrator account, specify <code>DELEGATED_ADMIN</code>.</p>
340 /// <p>Your Amazon Web Services account must be registered as a delegated administrator in the management account. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html">Register a delegated administrator</a> in the <i>CloudFormation User Guide</i>.</p></li>
341 /// </ul>
342 pub fn get_call_as(&self) -> &::std::option::Option<crate::types::CallAs> {
343 &self.call_as
344 }
345 /// Consumes the builder and constructs a [`CreateStackInstancesInput`](crate::operation::create_stack_instances::CreateStackInstancesInput).
346 pub fn build(
347 self,
348 ) -> ::std::result::Result<crate::operation::create_stack_instances::CreateStackInstancesInput, ::aws_smithy_types::error::operation::BuildError>
349 {
350 ::std::result::Result::Ok(crate::operation::create_stack_instances::CreateStackInstancesInput {
351 stack_set_name: self.stack_set_name,
352 accounts: self.accounts,
353 deployment_targets: self.deployment_targets,
354 regions: self.regions,
355 parameter_overrides: self.parameter_overrides,
356 operation_preferences: self.operation_preferences,
357 operation_id: self.operation_id,
358 call_as: self.call_as,
359 })
360 }
361}