pulumi-pulumiservice 0.28.0a1736807230__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. pulumi_pulumiservice/__init__.py +76 -0
  2. pulumi_pulumiservice/_enums.py +228 -0
  3. pulumi_pulumiservice/_inputs.py +1143 -0
  4. pulumi_pulumiservice/_utilities.py +327 -0
  5. pulumi_pulumiservice/access_token.py +137 -0
  6. pulumi_pulumiservice/agent_pool.py +235 -0
  7. pulumi_pulumiservice/config/__init__.py +8 -0
  8. pulumi_pulumiservice/config/__init__.pyi +18 -0
  9. pulumi_pulumiservice/config/vars.py +26 -0
  10. pulumi_pulumiservice/deployment_schedule.py +284 -0
  11. pulumi_pulumiservice/deployment_settings.py +377 -0
  12. pulumi_pulumiservice/drift_schedule.py +258 -0
  13. pulumi_pulumiservice/environment.py +228 -0
  14. pulumi_pulumiservice/environment_version_tag.py +248 -0
  15. pulumi_pulumiservice/org_access_token.py +229 -0
  16. pulumi_pulumiservice/outputs.py +902 -0
  17. pulumi_pulumiservice/provider.py +95 -0
  18. pulumi_pulumiservice/pulumi-plugin.json +5 -0
  19. pulumi_pulumiservice/py.typed +0 -0
  20. pulumi_pulumiservice/stack.py +214 -0
  21. pulumi_pulumiservice/stack_tag.py +245 -0
  22. pulumi_pulumiservice/team.py +300 -0
  23. pulumi_pulumiservice/team_access_token.py +226 -0
  24. pulumi_pulumiservice/team_environment_permission.py +213 -0
  25. pulumi_pulumiservice/team_stack_permission.py +201 -0
  26. pulumi_pulumiservice/template_source.py +216 -0
  27. pulumi_pulumiservice/ttl_schedule.py +258 -0
  28. pulumi_pulumiservice/webhook.py +451 -0
  29. pulumi_pulumiservice-0.28.0a1736807230.dist-info/METADATA +121 -0
  30. pulumi_pulumiservice-0.28.0a1736807230.dist-info/RECORD +32 -0
  31. pulumi_pulumiservice-0.28.0a1736807230.dist-info/WHEEL +5 -0
  32. pulumi_pulumiservice-0.28.0a1736807230.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1143 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from ._enums import *
17
+
18
+ __all__ = [
19
+ 'AWSOIDCConfigurationArgs',
20
+ 'AWSOIDCConfigurationArgsDict',
21
+ 'AzureOIDCConfigurationArgs',
22
+ 'AzureOIDCConfigurationArgsDict',
23
+ 'DeploymentSettingsCacheOptionsArgs',
24
+ 'DeploymentSettingsCacheOptionsArgsDict',
25
+ 'DeploymentSettingsExecutorContextArgs',
26
+ 'DeploymentSettingsExecutorContextArgsDict',
27
+ 'DeploymentSettingsGitAuthBasicAuthArgs',
28
+ 'DeploymentSettingsGitAuthBasicAuthArgsDict',
29
+ 'DeploymentSettingsGitAuthSSHAuthArgs',
30
+ 'DeploymentSettingsGitAuthSSHAuthArgsDict',
31
+ 'DeploymentSettingsGitSourceGitAuthArgs',
32
+ 'DeploymentSettingsGitSourceGitAuthArgsDict',
33
+ 'DeploymentSettingsGitSourceArgs',
34
+ 'DeploymentSettingsGitSourceArgsDict',
35
+ 'DeploymentSettingsGithubArgs',
36
+ 'DeploymentSettingsGithubArgsDict',
37
+ 'DeploymentSettingsOperationContextArgs',
38
+ 'DeploymentSettingsOperationContextArgsDict',
39
+ 'DeploymentSettingsSourceContextArgs',
40
+ 'DeploymentSettingsSourceContextArgsDict',
41
+ 'GCPOIDCConfigurationArgs',
42
+ 'GCPOIDCConfigurationArgsDict',
43
+ 'OperationContextOIDCArgs',
44
+ 'OperationContextOIDCArgsDict',
45
+ 'OperationContextOptionsArgs',
46
+ 'OperationContextOptionsArgsDict',
47
+ 'TemplateSourceDestinationArgs',
48
+ 'TemplateSourceDestinationArgsDict',
49
+ ]
50
+
51
+ MYPY = False
52
+
53
+ if not MYPY:
54
+ class AWSOIDCConfigurationArgsDict(TypedDict):
55
+ role_arn: pulumi.Input[str]
56
+ """
57
+ The ARN of the role to assume using the OIDC token.
58
+ """
59
+ session_name: pulumi.Input[str]
60
+ """
61
+ The name of the assume-role session.
62
+ """
63
+ duration: NotRequired[pulumi.Input[str]]
64
+ """
65
+ Duration of the assume-role session in “XhYmZs” format
66
+ """
67
+ policy_arns: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
68
+ """
69
+ Optional set of IAM policy ARNs that further restrict the assume-role session
70
+ """
71
+ elif False:
72
+ AWSOIDCConfigurationArgsDict: TypeAlias = Mapping[str, Any]
73
+
74
+ @pulumi.input_type
75
+ class AWSOIDCConfigurationArgs:
76
+ def __init__(__self__, *,
77
+ role_arn: pulumi.Input[str],
78
+ session_name: pulumi.Input[str],
79
+ duration: Optional[pulumi.Input[str]] = None,
80
+ policy_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
81
+ """
82
+ :param pulumi.Input[str] role_arn: The ARN of the role to assume using the OIDC token.
83
+ :param pulumi.Input[str] session_name: The name of the assume-role session.
84
+ :param pulumi.Input[str] duration: Duration of the assume-role session in “XhYmZs” format
85
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] policy_arns: Optional set of IAM policy ARNs that further restrict the assume-role session
86
+ """
87
+ pulumi.set(__self__, "role_arn", role_arn)
88
+ pulumi.set(__self__, "session_name", session_name)
89
+ if duration is not None:
90
+ pulumi.set(__self__, "duration", duration)
91
+ if policy_arns is not None:
92
+ pulumi.set(__self__, "policy_arns", policy_arns)
93
+
94
+ @property
95
+ @pulumi.getter(name="roleARN")
96
+ def role_arn(self) -> pulumi.Input[str]:
97
+ """
98
+ The ARN of the role to assume using the OIDC token.
99
+ """
100
+ return pulumi.get(self, "role_arn")
101
+
102
+ @role_arn.setter
103
+ def role_arn(self, value: pulumi.Input[str]):
104
+ pulumi.set(self, "role_arn", value)
105
+
106
+ @property
107
+ @pulumi.getter(name="sessionName")
108
+ def session_name(self) -> pulumi.Input[str]:
109
+ """
110
+ The name of the assume-role session.
111
+ """
112
+ return pulumi.get(self, "session_name")
113
+
114
+ @session_name.setter
115
+ def session_name(self, value: pulumi.Input[str]):
116
+ pulumi.set(self, "session_name", value)
117
+
118
+ @property
119
+ @pulumi.getter
120
+ def duration(self) -> Optional[pulumi.Input[str]]:
121
+ """
122
+ Duration of the assume-role session in “XhYmZs” format
123
+ """
124
+ return pulumi.get(self, "duration")
125
+
126
+ @duration.setter
127
+ def duration(self, value: Optional[pulumi.Input[str]]):
128
+ pulumi.set(self, "duration", value)
129
+
130
+ @property
131
+ @pulumi.getter(name="policyARNs")
132
+ def policy_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
133
+ """
134
+ Optional set of IAM policy ARNs that further restrict the assume-role session
135
+ """
136
+ return pulumi.get(self, "policy_arns")
137
+
138
+ @policy_arns.setter
139
+ def policy_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
140
+ pulumi.set(self, "policy_arns", value)
141
+
142
+
143
+ if not MYPY:
144
+ class AzureOIDCConfigurationArgsDict(TypedDict):
145
+ client_id: pulumi.Input[str]
146
+ """
147
+ The client ID of the federated workload identity.
148
+ """
149
+ subscription_id: pulumi.Input[str]
150
+ """
151
+ The subscription ID of the federated workload identity.
152
+ """
153
+ tenant_id: pulumi.Input[str]
154
+ """
155
+ The tenant ID of the federated workload identity.
156
+ """
157
+ elif False:
158
+ AzureOIDCConfigurationArgsDict: TypeAlias = Mapping[str, Any]
159
+
160
+ @pulumi.input_type
161
+ class AzureOIDCConfigurationArgs:
162
+ def __init__(__self__, *,
163
+ client_id: pulumi.Input[str],
164
+ subscription_id: pulumi.Input[str],
165
+ tenant_id: pulumi.Input[str]):
166
+ """
167
+ :param pulumi.Input[str] client_id: The client ID of the federated workload identity.
168
+ :param pulumi.Input[str] subscription_id: The subscription ID of the federated workload identity.
169
+ :param pulumi.Input[str] tenant_id: The tenant ID of the federated workload identity.
170
+ """
171
+ pulumi.set(__self__, "client_id", client_id)
172
+ pulumi.set(__self__, "subscription_id", subscription_id)
173
+ pulumi.set(__self__, "tenant_id", tenant_id)
174
+
175
+ @property
176
+ @pulumi.getter(name="clientId")
177
+ def client_id(self) -> pulumi.Input[str]:
178
+ """
179
+ The client ID of the federated workload identity.
180
+ """
181
+ return pulumi.get(self, "client_id")
182
+
183
+ @client_id.setter
184
+ def client_id(self, value: pulumi.Input[str]):
185
+ pulumi.set(self, "client_id", value)
186
+
187
+ @property
188
+ @pulumi.getter(name="subscriptionId")
189
+ def subscription_id(self) -> pulumi.Input[str]:
190
+ """
191
+ The subscription ID of the federated workload identity.
192
+ """
193
+ return pulumi.get(self, "subscription_id")
194
+
195
+ @subscription_id.setter
196
+ def subscription_id(self, value: pulumi.Input[str]):
197
+ pulumi.set(self, "subscription_id", value)
198
+
199
+ @property
200
+ @pulumi.getter(name="tenantId")
201
+ def tenant_id(self) -> pulumi.Input[str]:
202
+ """
203
+ The tenant ID of the federated workload identity.
204
+ """
205
+ return pulumi.get(self, "tenant_id")
206
+
207
+ @tenant_id.setter
208
+ def tenant_id(self, value: pulumi.Input[str]):
209
+ pulumi.set(self, "tenant_id", value)
210
+
211
+
212
+ if not MYPY:
213
+ class DeploymentSettingsCacheOptionsArgsDict(TypedDict):
214
+ """
215
+ Dependency cache settings for the deployment
216
+ """
217
+ enable: NotRequired[pulumi.Input[bool]]
218
+ """
219
+ Enable dependency caching
220
+ """
221
+ elif False:
222
+ DeploymentSettingsCacheOptionsArgsDict: TypeAlias = Mapping[str, Any]
223
+
224
+ @pulumi.input_type
225
+ class DeploymentSettingsCacheOptionsArgs:
226
+ def __init__(__self__, *,
227
+ enable: Optional[pulumi.Input[bool]] = None):
228
+ """
229
+ Dependency cache settings for the deployment
230
+ :param pulumi.Input[bool] enable: Enable dependency caching
231
+ """
232
+ if enable is None:
233
+ enable = False
234
+ if enable is not None:
235
+ pulumi.set(__self__, "enable", enable)
236
+
237
+ @property
238
+ @pulumi.getter
239
+ def enable(self) -> Optional[pulumi.Input[bool]]:
240
+ """
241
+ Enable dependency caching
242
+ """
243
+ return pulumi.get(self, "enable")
244
+
245
+ @enable.setter
246
+ def enable(self, value: Optional[pulumi.Input[bool]]):
247
+ pulumi.set(self, "enable", value)
248
+
249
+
250
+ if not MYPY:
251
+ class DeploymentSettingsExecutorContextArgsDict(TypedDict):
252
+ """
253
+ The executor context defines information about the executor where the deployment is executed. If unspecified, the default 'pulumi/pulumi' image is used.
254
+ """
255
+ executor_image: pulumi.Input[str]
256
+ """
257
+ Allows overriding the default executor image with a custom image. E.g. 'pulumi/pulumi-nodejs:latest'
258
+ """
259
+ elif False:
260
+ DeploymentSettingsExecutorContextArgsDict: TypeAlias = Mapping[str, Any]
261
+
262
+ @pulumi.input_type
263
+ class DeploymentSettingsExecutorContextArgs:
264
+ def __init__(__self__, *,
265
+ executor_image: pulumi.Input[str]):
266
+ """
267
+ The executor context defines information about the executor where the deployment is executed. If unspecified, the default 'pulumi/pulumi' image is used.
268
+ :param pulumi.Input[str] executor_image: Allows overriding the default executor image with a custom image. E.g. 'pulumi/pulumi-nodejs:latest'
269
+ """
270
+ pulumi.set(__self__, "executor_image", executor_image)
271
+
272
+ @property
273
+ @pulumi.getter(name="executorImage")
274
+ def executor_image(self) -> pulumi.Input[str]:
275
+ """
276
+ Allows overriding the default executor image with a custom image. E.g. 'pulumi/pulumi-nodejs:latest'
277
+ """
278
+ return pulumi.get(self, "executor_image")
279
+
280
+ @executor_image.setter
281
+ def executor_image(self, value: pulumi.Input[str]):
282
+ pulumi.set(self, "executor_image", value)
283
+
284
+
285
+ if not MYPY:
286
+ class DeploymentSettingsGitAuthBasicAuthArgsDict(TypedDict):
287
+ """
288
+ Git source settings for a deployment.
289
+ """
290
+ password: pulumi.Input[str]
291
+ """
292
+ Password for git basic authentication.
293
+ """
294
+ username: pulumi.Input[str]
295
+ """
296
+ User name for git basic authentication.
297
+ """
298
+ elif False:
299
+ DeploymentSettingsGitAuthBasicAuthArgsDict: TypeAlias = Mapping[str, Any]
300
+
301
+ @pulumi.input_type
302
+ class DeploymentSettingsGitAuthBasicAuthArgs:
303
+ def __init__(__self__, *,
304
+ password: pulumi.Input[str],
305
+ username: pulumi.Input[str]):
306
+ """
307
+ Git source settings for a deployment.
308
+ :param pulumi.Input[str] password: Password for git basic authentication.
309
+ :param pulumi.Input[str] username: User name for git basic authentication.
310
+ """
311
+ pulumi.set(__self__, "password", password)
312
+ pulumi.set(__self__, "username", username)
313
+
314
+ @property
315
+ @pulumi.getter
316
+ def password(self) -> pulumi.Input[str]:
317
+ """
318
+ Password for git basic authentication.
319
+ """
320
+ return pulumi.get(self, "password")
321
+
322
+ @password.setter
323
+ def password(self, value: pulumi.Input[str]):
324
+ pulumi.set(self, "password", value)
325
+
326
+ @property
327
+ @pulumi.getter
328
+ def username(self) -> pulumi.Input[str]:
329
+ """
330
+ User name for git basic authentication.
331
+ """
332
+ return pulumi.get(self, "username")
333
+
334
+ @username.setter
335
+ def username(self, value: pulumi.Input[str]):
336
+ pulumi.set(self, "username", value)
337
+
338
+
339
+ if not MYPY:
340
+ class DeploymentSettingsGitAuthSSHAuthArgsDict(TypedDict):
341
+ """
342
+ Git source settings for a deployment.
343
+ """
344
+ ssh_private_key: pulumi.Input[str]
345
+ """
346
+ SSH private key.
347
+ """
348
+ password: NotRequired[pulumi.Input[str]]
349
+ """
350
+ Optional password for SSH authentication.
351
+ """
352
+ elif False:
353
+ DeploymentSettingsGitAuthSSHAuthArgsDict: TypeAlias = Mapping[str, Any]
354
+
355
+ @pulumi.input_type
356
+ class DeploymentSettingsGitAuthSSHAuthArgs:
357
+ def __init__(__self__, *,
358
+ ssh_private_key: pulumi.Input[str],
359
+ password: Optional[pulumi.Input[str]] = None):
360
+ """
361
+ Git source settings for a deployment.
362
+ :param pulumi.Input[str] ssh_private_key: SSH private key.
363
+ :param pulumi.Input[str] password: Optional password for SSH authentication.
364
+ """
365
+ pulumi.set(__self__, "ssh_private_key", ssh_private_key)
366
+ if password is not None:
367
+ pulumi.set(__self__, "password", password)
368
+
369
+ @property
370
+ @pulumi.getter(name="sshPrivateKey")
371
+ def ssh_private_key(self) -> pulumi.Input[str]:
372
+ """
373
+ SSH private key.
374
+ """
375
+ return pulumi.get(self, "ssh_private_key")
376
+
377
+ @ssh_private_key.setter
378
+ def ssh_private_key(self, value: pulumi.Input[str]):
379
+ pulumi.set(self, "ssh_private_key", value)
380
+
381
+ @property
382
+ @pulumi.getter
383
+ def password(self) -> Optional[pulumi.Input[str]]:
384
+ """
385
+ Optional password for SSH authentication.
386
+ """
387
+ return pulumi.get(self, "password")
388
+
389
+ @password.setter
390
+ def password(self, value: Optional[pulumi.Input[str]]):
391
+ pulumi.set(self, "password", value)
392
+
393
+
394
+ if not MYPY:
395
+ class DeploymentSettingsGitSourceGitAuthArgsDict(TypedDict):
396
+ """
397
+ Git source settings for a deployment.
398
+ """
399
+ basic_auth: NotRequired[pulumi.Input['DeploymentSettingsGitAuthBasicAuthArgsDict']]
400
+ """
401
+ Basic auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
402
+ """
403
+ ssh_auth: NotRequired[pulumi.Input['DeploymentSettingsGitAuthSSHAuthArgsDict']]
404
+ """
405
+ SSH auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
406
+ """
407
+ elif False:
408
+ DeploymentSettingsGitSourceGitAuthArgsDict: TypeAlias = Mapping[str, Any]
409
+
410
+ @pulumi.input_type
411
+ class DeploymentSettingsGitSourceGitAuthArgs:
412
+ def __init__(__self__, *,
413
+ basic_auth: Optional[pulumi.Input['DeploymentSettingsGitAuthBasicAuthArgs']] = None,
414
+ ssh_auth: Optional[pulumi.Input['DeploymentSettingsGitAuthSSHAuthArgs']] = None):
415
+ """
416
+ Git source settings for a deployment.
417
+ :param pulumi.Input['DeploymentSettingsGitAuthBasicAuthArgs'] basic_auth: Basic auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
418
+ :param pulumi.Input['DeploymentSettingsGitAuthSSHAuthArgs'] ssh_auth: SSH auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
419
+ """
420
+ if basic_auth is not None:
421
+ pulumi.set(__self__, "basic_auth", basic_auth)
422
+ if ssh_auth is not None:
423
+ pulumi.set(__self__, "ssh_auth", ssh_auth)
424
+
425
+ @property
426
+ @pulumi.getter(name="basicAuth")
427
+ def basic_auth(self) -> Optional[pulumi.Input['DeploymentSettingsGitAuthBasicAuthArgs']]:
428
+ """
429
+ Basic auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
430
+ """
431
+ return pulumi.get(self, "basic_auth")
432
+
433
+ @basic_auth.setter
434
+ def basic_auth(self, value: Optional[pulumi.Input['DeploymentSettingsGitAuthBasicAuthArgs']]):
435
+ pulumi.set(self, "basic_auth", value)
436
+
437
+ @property
438
+ @pulumi.getter(name="sshAuth")
439
+ def ssh_auth(self) -> Optional[pulumi.Input['DeploymentSettingsGitAuthSSHAuthArgs']]:
440
+ """
441
+ SSH auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
442
+ """
443
+ return pulumi.get(self, "ssh_auth")
444
+
445
+ @ssh_auth.setter
446
+ def ssh_auth(self, value: Optional[pulumi.Input['DeploymentSettingsGitAuthSSHAuthArgs']]):
447
+ pulumi.set(self, "ssh_auth", value)
448
+
449
+
450
+ if not MYPY:
451
+ class DeploymentSettingsGitSourceArgsDict(TypedDict):
452
+ """
453
+ Git source settings for a deployment.
454
+ """
455
+ branch: NotRequired[pulumi.Input[str]]
456
+ """
457
+ The branch to deploy. One of either `branch` or `commit` must be specified.
458
+ """
459
+ commit: NotRequired[pulumi.Input[str]]
460
+ """
461
+ The commit to deploy. One of either `branch` or `commit` must be specified.
462
+ """
463
+ git_auth: NotRequired[pulumi.Input['DeploymentSettingsGitSourceGitAuthArgsDict']]
464
+ """
465
+ Git authentication configuration for this deployment. Should not be specified if there are `gitHub` settings for this deployment.
466
+ """
467
+ repo_dir: NotRequired[pulumi.Input[str]]
468
+ """
469
+ The directory within the repository where the Pulumi.yaml is located.
470
+ """
471
+ repo_url: NotRequired[pulumi.Input[str]]
472
+ """
473
+ The repository URL to use for git settings. Should not be specified if there are `gitHub` settings for this deployment.
474
+ """
475
+ elif False:
476
+ DeploymentSettingsGitSourceArgsDict: TypeAlias = Mapping[str, Any]
477
+
478
+ @pulumi.input_type
479
+ class DeploymentSettingsGitSourceArgs:
480
+ def __init__(__self__, *,
481
+ branch: Optional[pulumi.Input[str]] = None,
482
+ commit: Optional[pulumi.Input[str]] = None,
483
+ git_auth: Optional[pulumi.Input['DeploymentSettingsGitSourceGitAuthArgs']] = None,
484
+ repo_dir: Optional[pulumi.Input[str]] = None,
485
+ repo_url: Optional[pulumi.Input[str]] = None):
486
+ """
487
+ Git source settings for a deployment.
488
+ :param pulumi.Input[str] branch: The branch to deploy. One of either `branch` or `commit` must be specified.
489
+ :param pulumi.Input[str] commit: The commit to deploy. One of either `branch` or `commit` must be specified.
490
+ :param pulumi.Input['DeploymentSettingsGitSourceGitAuthArgs'] git_auth: Git authentication configuration for this deployment. Should not be specified if there are `gitHub` settings for this deployment.
491
+ :param pulumi.Input[str] repo_dir: The directory within the repository where the Pulumi.yaml is located.
492
+ :param pulumi.Input[str] repo_url: The repository URL to use for git settings. Should not be specified if there are `gitHub` settings for this deployment.
493
+ """
494
+ if branch is not None:
495
+ pulumi.set(__self__, "branch", branch)
496
+ if commit is not None:
497
+ pulumi.set(__self__, "commit", commit)
498
+ if git_auth is not None:
499
+ pulumi.set(__self__, "git_auth", git_auth)
500
+ if repo_dir is not None:
501
+ pulumi.set(__self__, "repo_dir", repo_dir)
502
+ if repo_url is not None:
503
+ pulumi.set(__self__, "repo_url", repo_url)
504
+
505
+ @property
506
+ @pulumi.getter
507
+ def branch(self) -> Optional[pulumi.Input[str]]:
508
+ """
509
+ The branch to deploy. One of either `branch` or `commit` must be specified.
510
+ """
511
+ return pulumi.get(self, "branch")
512
+
513
+ @branch.setter
514
+ def branch(self, value: Optional[pulumi.Input[str]]):
515
+ pulumi.set(self, "branch", value)
516
+
517
+ @property
518
+ @pulumi.getter
519
+ def commit(self) -> Optional[pulumi.Input[str]]:
520
+ """
521
+ The commit to deploy. One of either `branch` or `commit` must be specified.
522
+ """
523
+ return pulumi.get(self, "commit")
524
+
525
+ @commit.setter
526
+ def commit(self, value: Optional[pulumi.Input[str]]):
527
+ pulumi.set(self, "commit", value)
528
+
529
+ @property
530
+ @pulumi.getter(name="gitAuth")
531
+ def git_auth(self) -> Optional[pulumi.Input['DeploymentSettingsGitSourceGitAuthArgs']]:
532
+ """
533
+ Git authentication configuration for this deployment. Should not be specified if there are `gitHub` settings for this deployment.
534
+ """
535
+ return pulumi.get(self, "git_auth")
536
+
537
+ @git_auth.setter
538
+ def git_auth(self, value: Optional[pulumi.Input['DeploymentSettingsGitSourceGitAuthArgs']]):
539
+ pulumi.set(self, "git_auth", value)
540
+
541
+ @property
542
+ @pulumi.getter(name="repoDir")
543
+ def repo_dir(self) -> Optional[pulumi.Input[str]]:
544
+ """
545
+ The directory within the repository where the Pulumi.yaml is located.
546
+ """
547
+ return pulumi.get(self, "repo_dir")
548
+
549
+ @repo_dir.setter
550
+ def repo_dir(self, value: Optional[pulumi.Input[str]]):
551
+ pulumi.set(self, "repo_dir", value)
552
+
553
+ @property
554
+ @pulumi.getter(name="repoUrl")
555
+ def repo_url(self) -> Optional[pulumi.Input[str]]:
556
+ """
557
+ The repository URL to use for git settings. Should not be specified if there are `gitHub` settings for this deployment.
558
+ """
559
+ return pulumi.get(self, "repo_url")
560
+
561
+ @repo_url.setter
562
+ def repo_url(self, value: Optional[pulumi.Input[str]]):
563
+ pulumi.set(self, "repo_url", value)
564
+
565
+
566
+ if not MYPY:
567
+ class DeploymentSettingsGithubArgsDict(TypedDict):
568
+ """
569
+ GitHub settings for the deployment.
570
+ """
571
+ deploy_commits: NotRequired[pulumi.Input[bool]]
572
+ """
573
+ Trigger a deployment running `pulumi up` on commit.
574
+ """
575
+ paths: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
576
+ """
577
+ The paths within the repo that deployments should be filtered to.
578
+ """
579
+ preview_pull_requests: NotRequired[pulumi.Input[bool]]
580
+ """
581
+ Trigger a deployment running `pulumi preview` when a PR is opened.
582
+ """
583
+ pull_request_template: NotRequired[pulumi.Input[bool]]
584
+ """
585
+ Use this stack as a template for pull request review stacks.
586
+ """
587
+ repository: NotRequired[pulumi.Input[str]]
588
+ """
589
+ The GitHub repository in the format org/repo.
590
+ """
591
+ elif False:
592
+ DeploymentSettingsGithubArgsDict: TypeAlias = Mapping[str, Any]
593
+
594
+ @pulumi.input_type
595
+ class DeploymentSettingsGithubArgs:
596
+ def __init__(__self__, *,
597
+ deploy_commits: Optional[pulumi.Input[bool]] = None,
598
+ paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
599
+ preview_pull_requests: Optional[pulumi.Input[bool]] = None,
600
+ pull_request_template: Optional[pulumi.Input[bool]] = None,
601
+ repository: Optional[pulumi.Input[str]] = None):
602
+ """
603
+ GitHub settings for the deployment.
604
+ :param pulumi.Input[bool] deploy_commits: Trigger a deployment running `pulumi up` on commit.
605
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] paths: The paths within the repo that deployments should be filtered to.
606
+ :param pulumi.Input[bool] preview_pull_requests: Trigger a deployment running `pulumi preview` when a PR is opened.
607
+ :param pulumi.Input[bool] pull_request_template: Use this stack as a template for pull request review stacks.
608
+ :param pulumi.Input[str] repository: The GitHub repository in the format org/repo.
609
+ """
610
+ if deploy_commits is None:
611
+ deploy_commits = True
612
+ if deploy_commits is not None:
613
+ pulumi.set(__self__, "deploy_commits", deploy_commits)
614
+ if paths is not None:
615
+ pulumi.set(__self__, "paths", paths)
616
+ if preview_pull_requests is None:
617
+ preview_pull_requests = True
618
+ if preview_pull_requests is not None:
619
+ pulumi.set(__self__, "preview_pull_requests", preview_pull_requests)
620
+ if pull_request_template is None:
621
+ pull_request_template = False
622
+ if pull_request_template is not None:
623
+ pulumi.set(__self__, "pull_request_template", pull_request_template)
624
+ if repository is not None:
625
+ pulumi.set(__self__, "repository", repository)
626
+
627
+ @property
628
+ @pulumi.getter(name="deployCommits")
629
+ def deploy_commits(self) -> Optional[pulumi.Input[bool]]:
630
+ """
631
+ Trigger a deployment running `pulumi up` on commit.
632
+ """
633
+ return pulumi.get(self, "deploy_commits")
634
+
635
+ @deploy_commits.setter
636
+ def deploy_commits(self, value: Optional[pulumi.Input[bool]]):
637
+ pulumi.set(self, "deploy_commits", value)
638
+
639
+ @property
640
+ @pulumi.getter
641
+ def paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
642
+ """
643
+ The paths within the repo that deployments should be filtered to.
644
+ """
645
+ return pulumi.get(self, "paths")
646
+
647
+ @paths.setter
648
+ def paths(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
649
+ pulumi.set(self, "paths", value)
650
+
651
+ @property
652
+ @pulumi.getter(name="previewPullRequests")
653
+ def preview_pull_requests(self) -> Optional[pulumi.Input[bool]]:
654
+ """
655
+ Trigger a deployment running `pulumi preview` when a PR is opened.
656
+ """
657
+ return pulumi.get(self, "preview_pull_requests")
658
+
659
+ @preview_pull_requests.setter
660
+ def preview_pull_requests(self, value: Optional[pulumi.Input[bool]]):
661
+ pulumi.set(self, "preview_pull_requests", value)
662
+
663
+ @property
664
+ @pulumi.getter(name="pullRequestTemplate")
665
+ def pull_request_template(self) -> Optional[pulumi.Input[bool]]:
666
+ """
667
+ Use this stack as a template for pull request review stacks.
668
+ """
669
+ return pulumi.get(self, "pull_request_template")
670
+
671
+ @pull_request_template.setter
672
+ def pull_request_template(self, value: Optional[pulumi.Input[bool]]):
673
+ pulumi.set(self, "pull_request_template", value)
674
+
675
+ @property
676
+ @pulumi.getter
677
+ def repository(self) -> Optional[pulumi.Input[str]]:
678
+ """
679
+ The GitHub repository in the format org/repo.
680
+ """
681
+ return pulumi.get(self, "repository")
682
+
683
+ @repository.setter
684
+ def repository(self, value: Optional[pulumi.Input[str]]):
685
+ pulumi.set(self, "repository", value)
686
+
687
+
688
+ if not MYPY:
689
+ class DeploymentSettingsOperationContextArgsDict(TypedDict):
690
+ """
691
+ Settings related to the Pulumi operation environment during the deployment.
692
+ """
693
+ environment_variables: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
694
+ """
695
+ Environment variables to set for the deployment.
696
+ """
697
+ oidc: NotRequired[pulumi.Input['OperationContextOIDCArgsDict']]
698
+ """
699
+ OIDC configuration to use during the deployment.
700
+ """
701
+ options: NotRequired[pulumi.Input['OperationContextOptionsArgsDict']]
702
+ """
703
+ Options to override default behavior during the deployment.
704
+ """
705
+ pre_run_commands: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
706
+ """
707
+ Shell commands to run before the Pulumi operation executes.
708
+ """
709
+ elif False:
710
+ DeploymentSettingsOperationContextArgsDict: TypeAlias = Mapping[str, Any]
711
+
712
+ @pulumi.input_type
713
+ class DeploymentSettingsOperationContextArgs:
714
+ def __init__(__self__, *,
715
+ environment_variables: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
716
+ oidc: Optional[pulumi.Input['OperationContextOIDCArgs']] = None,
717
+ options: Optional[pulumi.Input['OperationContextOptionsArgs']] = None,
718
+ pre_run_commands: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
719
+ """
720
+ Settings related to the Pulumi operation environment during the deployment.
721
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] environment_variables: Environment variables to set for the deployment.
722
+ :param pulumi.Input['OperationContextOIDCArgs'] oidc: OIDC configuration to use during the deployment.
723
+ :param pulumi.Input['OperationContextOptionsArgs'] options: Options to override default behavior during the deployment.
724
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] pre_run_commands: Shell commands to run before the Pulumi operation executes.
725
+ """
726
+ if environment_variables is not None:
727
+ pulumi.set(__self__, "environment_variables", environment_variables)
728
+ if oidc is not None:
729
+ pulumi.set(__self__, "oidc", oidc)
730
+ if options is not None:
731
+ pulumi.set(__self__, "options", options)
732
+ if pre_run_commands is not None:
733
+ pulumi.set(__self__, "pre_run_commands", pre_run_commands)
734
+
735
+ @property
736
+ @pulumi.getter(name="environmentVariables")
737
+ def environment_variables(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
738
+ """
739
+ Environment variables to set for the deployment.
740
+ """
741
+ return pulumi.get(self, "environment_variables")
742
+
743
+ @environment_variables.setter
744
+ def environment_variables(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
745
+ pulumi.set(self, "environment_variables", value)
746
+
747
+ @property
748
+ @pulumi.getter
749
+ def oidc(self) -> Optional[pulumi.Input['OperationContextOIDCArgs']]:
750
+ """
751
+ OIDC configuration to use during the deployment.
752
+ """
753
+ return pulumi.get(self, "oidc")
754
+
755
+ @oidc.setter
756
+ def oidc(self, value: Optional[pulumi.Input['OperationContextOIDCArgs']]):
757
+ pulumi.set(self, "oidc", value)
758
+
759
+ @property
760
+ @pulumi.getter
761
+ def options(self) -> Optional[pulumi.Input['OperationContextOptionsArgs']]:
762
+ """
763
+ Options to override default behavior during the deployment.
764
+ """
765
+ return pulumi.get(self, "options")
766
+
767
+ @options.setter
768
+ def options(self, value: Optional[pulumi.Input['OperationContextOptionsArgs']]):
769
+ pulumi.set(self, "options", value)
770
+
771
+ @property
772
+ @pulumi.getter(name="preRunCommands")
773
+ def pre_run_commands(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
774
+ """
775
+ Shell commands to run before the Pulumi operation executes.
776
+ """
777
+ return pulumi.get(self, "pre_run_commands")
778
+
779
+ @pre_run_commands.setter
780
+ def pre_run_commands(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
781
+ pulumi.set(self, "pre_run_commands", value)
782
+
783
+
784
+ if not MYPY:
785
+ class DeploymentSettingsSourceContextArgsDict(TypedDict):
786
+ """
787
+ Settings related to the source of the deployment.
788
+ """
789
+ git: NotRequired[pulumi.Input['DeploymentSettingsGitSourceArgsDict']]
790
+ """
791
+ Git source settings for a deployment.
792
+ """
793
+ elif False:
794
+ DeploymentSettingsSourceContextArgsDict: TypeAlias = Mapping[str, Any]
795
+
796
+ @pulumi.input_type
797
+ class DeploymentSettingsSourceContextArgs:
798
+ def __init__(__self__, *,
799
+ git: Optional[pulumi.Input['DeploymentSettingsGitSourceArgs']] = None):
800
+ """
801
+ Settings related to the source of the deployment.
802
+ :param pulumi.Input['DeploymentSettingsGitSourceArgs'] git: Git source settings for a deployment.
803
+ """
804
+ if git is not None:
805
+ pulumi.set(__self__, "git", git)
806
+
807
+ @property
808
+ @pulumi.getter
809
+ def git(self) -> Optional[pulumi.Input['DeploymentSettingsGitSourceArgs']]:
810
+ """
811
+ Git source settings for a deployment.
812
+ """
813
+ return pulumi.get(self, "git")
814
+
815
+ @git.setter
816
+ def git(self, value: Optional[pulumi.Input['DeploymentSettingsGitSourceArgs']]):
817
+ pulumi.set(self, "git", value)
818
+
819
+
820
+ if not MYPY:
821
+ class GCPOIDCConfigurationArgsDict(TypedDict):
822
+ project_id: pulumi.Input[str]
823
+ """
824
+ The numerical ID of the GCP project.
825
+ """
826
+ provider_id: pulumi.Input[str]
827
+ """
828
+ The ID of the identity provider associated with the workload pool.
829
+ """
830
+ service_account: pulumi.Input[str]
831
+ """
832
+ The email address of the service account to use.
833
+ """
834
+ workload_pool_id: pulumi.Input[str]
835
+ """
836
+ The ID of the workload pool to use.
837
+ """
838
+ region: NotRequired[pulumi.Input[str]]
839
+ """
840
+ The region of the GCP project.
841
+ """
842
+ token_lifetime: NotRequired[pulumi.Input[str]]
843
+ """
844
+ The lifetime of the temporary credentials in “XhYmZs” format.
845
+ """
846
+ elif False:
847
+ GCPOIDCConfigurationArgsDict: TypeAlias = Mapping[str, Any]
848
+
849
+ @pulumi.input_type
850
+ class GCPOIDCConfigurationArgs:
851
+ def __init__(__self__, *,
852
+ project_id: pulumi.Input[str],
853
+ provider_id: pulumi.Input[str],
854
+ service_account: pulumi.Input[str],
855
+ workload_pool_id: pulumi.Input[str],
856
+ region: Optional[pulumi.Input[str]] = None,
857
+ token_lifetime: Optional[pulumi.Input[str]] = None):
858
+ """
859
+ :param pulumi.Input[str] project_id: The numerical ID of the GCP project.
860
+ :param pulumi.Input[str] provider_id: The ID of the identity provider associated with the workload pool.
861
+ :param pulumi.Input[str] service_account: The email address of the service account to use.
862
+ :param pulumi.Input[str] workload_pool_id: The ID of the workload pool to use.
863
+ :param pulumi.Input[str] region: The region of the GCP project.
864
+ :param pulumi.Input[str] token_lifetime: The lifetime of the temporary credentials in “XhYmZs” format.
865
+ """
866
+ pulumi.set(__self__, "project_id", project_id)
867
+ pulumi.set(__self__, "provider_id", provider_id)
868
+ pulumi.set(__self__, "service_account", service_account)
869
+ pulumi.set(__self__, "workload_pool_id", workload_pool_id)
870
+ if region is not None:
871
+ pulumi.set(__self__, "region", region)
872
+ if token_lifetime is not None:
873
+ pulumi.set(__self__, "token_lifetime", token_lifetime)
874
+
875
+ @property
876
+ @pulumi.getter(name="projectId")
877
+ def project_id(self) -> pulumi.Input[str]:
878
+ """
879
+ The numerical ID of the GCP project.
880
+ """
881
+ return pulumi.get(self, "project_id")
882
+
883
+ @project_id.setter
884
+ def project_id(self, value: pulumi.Input[str]):
885
+ pulumi.set(self, "project_id", value)
886
+
887
+ @property
888
+ @pulumi.getter(name="providerId")
889
+ def provider_id(self) -> pulumi.Input[str]:
890
+ """
891
+ The ID of the identity provider associated with the workload pool.
892
+ """
893
+ return pulumi.get(self, "provider_id")
894
+
895
+ @provider_id.setter
896
+ def provider_id(self, value: pulumi.Input[str]):
897
+ pulumi.set(self, "provider_id", value)
898
+
899
+ @property
900
+ @pulumi.getter(name="serviceAccount")
901
+ def service_account(self) -> pulumi.Input[str]:
902
+ """
903
+ The email address of the service account to use.
904
+ """
905
+ return pulumi.get(self, "service_account")
906
+
907
+ @service_account.setter
908
+ def service_account(self, value: pulumi.Input[str]):
909
+ pulumi.set(self, "service_account", value)
910
+
911
+ @property
912
+ @pulumi.getter(name="workloadPoolId")
913
+ def workload_pool_id(self) -> pulumi.Input[str]:
914
+ """
915
+ The ID of the workload pool to use.
916
+ """
917
+ return pulumi.get(self, "workload_pool_id")
918
+
919
+ @workload_pool_id.setter
920
+ def workload_pool_id(self, value: pulumi.Input[str]):
921
+ pulumi.set(self, "workload_pool_id", value)
922
+
923
+ @property
924
+ @pulumi.getter
925
+ def region(self) -> Optional[pulumi.Input[str]]:
926
+ """
927
+ The region of the GCP project.
928
+ """
929
+ return pulumi.get(self, "region")
930
+
931
+ @region.setter
932
+ def region(self, value: Optional[pulumi.Input[str]]):
933
+ pulumi.set(self, "region", value)
934
+
935
+ @property
936
+ @pulumi.getter(name="tokenLifetime")
937
+ def token_lifetime(self) -> Optional[pulumi.Input[str]]:
938
+ """
939
+ The lifetime of the temporary credentials in “XhYmZs” format.
940
+ """
941
+ return pulumi.get(self, "token_lifetime")
942
+
943
+ @token_lifetime.setter
944
+ def token_lifetime(self, value: Optional[pulumi.Input[str]]):
945
+ pulumi.set(self, "token_lifetime", value)
946
+
947
+
948
+ if not MYPY:
949
+ class OperationContextOIDCArgsDict(TypedDict):
950
+ aws: NotRequired[pulumi.Input['AWSOIDCConfigurationArgsDict']]
951
+ """
952
+ AWS-specific OIDC configuration.
953
+ """
954
+ azure: NotRequired[pulumi.Input['AzureOIDCConfigurationArgsDict']]
955
+ """
956
+ Azure-specific OIDC configuration.
957
+ """
958
+ gcp: NotRequired[pulumi.Input['GCPOIDCConfigurationArgsDict']]
959
+ """
960
+ GCP-specific OIDC configuration.
961
+ """
962
+ elif False:
963
+ OperationContextOIDCArgsDict: TypeAlias = Mapping[str, Any]
964
+
965
+ @pulumi.input_type
966
+ class OperationContextOIDCArgs:
967
+ def __init__(__self__, *,
968
+ aws: Optional[pulumi.Input['AWSOIDCConfigurationArgs']] = None,
969
+ azure: Optional[pulumi.Input['AzureOIDCConfigurationArgs']] = None,
970
+ gcp: Optional[pulumi.Input['GCPOIDCConfigurationArgs']] = None):
971
+ """
972
+ :param pulumi.Input['AWSOIDCConfigurationArgs'] aws: AWS-specific OIDC configuration.
973
+ :param pulumi.Input['AzureOIDCConfigurationArgs'] azure: Azure-specific OIDC configuration.
974
+ :param pulumi.Input['GCPOIDCConfigurationArgs'] gcp: GCP-specific OIDC configuration.
975
+ """
976
+ if aws is not None:
977
+ pulumi.set(__self__, "aws", aws)
978
+ if azure is not None:
979
+ pulumi.set(__self__, "azure", azure)
980
+ if gcp is not None:
981
+ pulumi.set(__self__, "gcp", gcp)
982
+
983
+ @property
984
+ @pulumi.getter
985
+ def aws(self) -> Optional[pulumi.Input['AWSOIDCConfigurationArgs']]:
986
+ """
987
+ AWS-specific OIDC configuration.
988
+ """
989
+ return pulumi.get(self, "aws")
990
+
991
+ @aws.setter
992
+ def aws(self, value: Optional[pulumi.Input['AWSOIDCConfigurationArgs']]):
993
+ pulumi.set(self, "aws", value)
994
+
995
+ @property
996
+ @pulumi.getter
997
+ def azure(self) -> Optional[pulumi.Input['AzureOIDCConfigurationArgs']]:
998
+ """
999
+ Azure-specific OIDC configuration.
1000
+ """
1001
+ return pulumi.get(self, "azure")
1002
+
1003
+ @azure.setter
1004
+ def azure(self, value: Optional[pulumi.Input['AzureOIDCConfigurationArgs']]):
1005
+ pulumi.set(self, "azure", value)
1006
+
1007
+ @property
1008
+ @pulumi.getter
1009
+ def gcp(self) -> Optional[pulumi.Input['GCPOIDCConfigurationArgs']]:
1010
+ """
1011
+ GCP-specific OIDC configuration.
1012
+ """
1013
+ return pulumi.get(self, "gcp")
1014
+
1015
+ @gcp.setter
1016
+ def gcp(self, value: Optional[pulumi.Input['GCPOIDCConfigurationArgs']]):
1017
+ pulumi.set(self, "gcp", value)
1018
+
1019
+
1020
+ if not MYPY:
1021
+ class OperationContextOptionsArgsDict(TypedDict):
1022
+ delete_after_destroy: NotRequired[pulumi.Input[bool]]
1023
+ """
1024
+ Whether the stack should be deleted after it is destroyed.
1025
+ """
1026
+ shell: NotRequired[pulumi.Input[str]]
1027
+ """
1028
+ The shell to use to run commands during the deployment. Defaults to 'bash'.
1029
+ """
1030
+ skip_install_dependencies: NotRequired[pulumi.Input[bool]]
1031
+ """
1032
+ Skip the default dependency installation step - use this to customize the dependency installation (e.g. if using yarn or poetry)
1033
+ """
1034
+ skip_intermediate_deployments: NotRequired[pulumi.Input[bool]]
1035
+ """
1036
+ Skip intermediate deployments (Consolidate multiple deployments of the same type into one deployment)
1037
+ """
1038
+ elif False:
1039
+ OperationContextOptionsArgsDict: TypeAlias = Mapping[str, Any]
1040
+
1041
+ @pulumi.input_type
1042
+ class OperationContextOptionsArgs:
1043
+ def __init__(__self__, *,
1044
+ delete_after_destroy: Optional[pulumi.Input[bool]] = None,
1045
+ shell: Optional[pulumi.Input[str]] = None,
1046
+ skip_install_dependencies: Optional[pulumi.Input[bool]] = None,
1047
+ skip_intermediate_deployments: Optional[pulumi.Input[bool]] = None):
1048
+ """
1049
+ :param pulumi.Input[bool] delete_after_destroy: Whether the stack should be deleted after it is destroyed.
1050
+ :param pulumi.Input[str] shell: The shell to use to run commands during the deployment. Defaults to 'bash'.
1051
+ :param pulumi.Input[bool] skip_install_dependencies: Skip the default dependency installation step - use this to customize the dependency installation (e.g. if using yarn or poetry)
1052
+ :param pulumi.Input[bool] skip_intermediate_deployments: Skip intermediate deployments (Consolidate multiple deployments of the same type into one deployment)
1053
+ """
1054
+ if delete_after_destroy is not None:
1055
+ pulumi.set(__self__, "delete_after_destroy", delete_after_destroy)
1056
+ if shell is not None:
1057
+ pulumi.set(__self__, "shell", shell)
1058
+ if skip_install_dependencies is not None:
1059
+ pulumi.set(__self__, "skip_install_dependencies", skip_install_dependencies)
1060
+ if skip_intermediate_deployments is not None:
1061
+ pulumi.set(__self__, "skip_intermediate_deployments", skip_intermediate_deployments)
1062
+
1063
+ @property
1064
+ @pulumi.getter(name="deleteAfterDestroy")
1065
+ def delete_after_destroy(self) -> Optional[pulumi.Input[bool]]:
1066
+ """
1067
+ Whether the stack should be deleted after it is destroyed.
1068
+ """
1069
+ return pulumi.get(self, "delete_after_destroy")
1070
+
1071
+ @delete_after_destroy.setter
1072
+ def delete_after_destroy(self, value: Optional[pulumi.Input[bool]]):
1073
+ pulumi.set(self, "delete_after_destroy", value)
1074
+
1075
+ @property
1076
+ @pulumi.getter
1077
+ def shell(self) -> Optional[pulumi.Input[str]]:
1078
+ """
1079
+ The shell to use to run commands during the deployment. Defaults to 'bash'.
1080
+ """
1081
+ return pulumi.get(self, "shell")
1082
+
1083
+ @shell.setter
1084
+ def shell(self, value: Optional[pulumi.Input[str]]):
1085
+ pulumi.set(self, "shell", value)
1086
+
1087
+ @property
1088
+ @pulumi.getter(name="skipInstallDependencies")
1089
+ def skip_install_dependencies(self) -> Optional[pulumi.Input[bool]]:
1090
+ """
1091
+ Skip the default dependency installation step - use this to customize the dependency installation (e.g. if using yarn or poetry)
1092
+ """
1093
+ return pulumi.get(self, "skip_install_dependencies")
1094
+
1095
+ @skip_install_dependencies.setter
1096
+ def skip_install_dependencies(self, value: Optional[pulumi.Input[bool]]):
1097
+ pulumi.set(self, "skip_install_dependencies", value)
1098
+
1099
+ @property
1100
+ @pulumi.getter(name="skipIntermediateDeployments")
1101
+ def skip_intermediate_deployments(self) -> Optional[pulumi.Input[bool]]:
1102
+ """
1103
+ Skip intermediate deployments (Consolidate multiple deployments of the same type into one deployment)
1104
+ """
1105
+ return pulumi.get(self, "skip_intermediate_deployments")
1106
+
1107
+ @skip_intermediate_deployments.setter
1108
+ def skip_intermediate_deployments(self, value: Optional[pulumi.Input[bool]]):
1109
+ pulumi.set(self, "skip_intermediate_deployments", value)
1110
+
1111
+
1112
+ if not MYPY:
1113
+ class TemplateSourceDestinationArgsDict(TypedDict):
1114
+ url: NotRequired[pulumi.Input[str]]
1115
+ """
1116
+ Destination URL that gets filled in on new project creation.
1117
+ """
1118
+ elif False:
1119
+ TemplateSourceDestinationArgsDict: TypeAlias = Mapping[str, Any]
1120
+
1121
+ @pulumi.input_type
1122
+ class TemplateSourceDestinationArgs:
1123
+ def __init__(__self__, *,
1124
+ url: Optional[pulumi.Input[str]] = None):
1125
+ """
1126
+ :param pulumi.Input[str] url: Destination URL that gets filled in on new project creation.
1127
+ """
1128
+ if url is not None:
1129
+ pulumi.set(__self__, "url", url)
1130
+
1131
+ @property
1132
+ @pulumi.getter
1133
+ def url(self) -> Optional[pulumi.Input[str]]:
1134
+ """
1135
+ Destination URL that gets filled in on new project creation.
1136
+ """
1137
+ return pulumi.get(self, "url")
1138
+
1139
+ @url.setter
1140
+ def url(self, value: Optional[pulumi.Input[str]]):
1141
+ pulumi.set(self, "url", value)
1142
+
1143
+