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,902 @@
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 . import outputs
17
+ from ._enums import *
18
+
19
+ __all__ = [
20
+ 'AWSOIDCConfiguration',
21
+ 'AzureOIDCConfiguration',
22
+ 'DeploymentSettingsCacheOptions',
23
+ 'DeploymentSettingsExecutorContext',
24
+ 'DeploymentSettingsGitAuthBasicAuth',
25
+ 'DeploymentSettingsGitAuthSSHAuth',
26
+ 'DeploymentSettingsGitSource',
27
+ 'DeploymentSettingsGitSourceGitAuth',
28
+ 'DeploymentSettingsGithub',
29
+ 'DeploymentSettingsOperationContext',
30
+ 'DeploymentSettingsSourceContext',
31
+ 'GCPOIDCConfiguration',
32
+ 'OperationContextOIDC',
33
+ 'OperationContextOptions',
34
+ 'TemplateSourceDestination',
35
+ ]
36
+
37
+ @pulumi.output_type
38
+ class AWSOIDCConfiguration(dict):
39
+ @staticmethod
40
+ def __key_warning(key: str):
41
+ suggest = None
42
+ if key == "roleARN":
43
+ suggest = "role_arn"
44
+ elif key == "sessionName":
45
+ suggest = "session_name"
46
+ elif key == "policyARNs":
47
+ suggest = "policy_arns"
48
+
49
+ if suggest:
50
+ pulumi.log.warn(f"Key '{key}' not found in AWSOIDCConfiguration. Access the value via the '{suggest}' property getter instead.")
51
+
52
+ def __getitem__(self, key: str) -> Any:
53
+ AWSOIDCConfiguration.__key_warning(key)
54
+ return super().__getitem__(key)
55
+
56
+ def get(self, key: str, default = None) -> Any:
57
+ AWSOIDCConfiguration.__key_warning(key)
58
+ return super().get(key, default)
59
+
60
+ def __init__(__self__, *,
61
+ role_arn: str,
62
+ session_name: str,
63
+ duration: Optional[str] = None,
64
+ policy_arns: Optional[Sequence[str]] = None):
65
+ """
66
+ :param str role_arn: The ARN of the role to assume using the OIDC token.
67
+ :param str session_name: The name of the assume-role session.
68
+ :param str duration: Duration of the assume-role session in “XhYmZs” format
69
+ :param Sequence[str] policy_arns: Optional set of IAM policy ARNs that further restrict the assume-role session
70
+ """
71
+ pulumi.set(__self__, "role_arn", role_arn)
72
+ pulumi.set(__self__, "session_name", session_name)
73
+ if duration is not None:
74
+ pulumi.set(__self__, "duration", duration)
75
+ if policy_arns is not None:
76
+ pulumi.set(__self__, "policy_arns", policy_arns)
77
+
78
+ @property
79
+ @pulumi.getter(name="roleARN")
80
+ def role_arn(self) -> str:
81
+ """
82
+ The ARN of the role to assume using the OIDC token.
83
+ """
84
+ return pulumi.get(self, "role_arn")
85
+
86
+ @property
87
+ @pulumi.getter(name="sessionName")
88
+ def session_name(self) -> str:
89
+ """
90
+ The name of the assume-role session.
91
+ """
92
+ return pulumi.get(self, "session_name")
93
+
94
+ @property
95
+ @pulumi.getter
96
+ def duration(self) -> Optional[str]:
97
+ """
98
+ Duration of the assume-role session in “XhYmZs” format
99
+ """
100
+ return pulumi.get(self, "duration")
101
+
102
+ @property
103
+ @pulumi.getter(name="policyARNs")
104
+ def policy_arns(self) -> Optional[Sequence[str]]:
105
+ """
106
+ Optional set of IAM policy ARNs that further restrict the assume-role session
107
+ """
108
+ return pulumi.get(self, "policy_arns")
109
+
110
+
111
+ @pulumi.output_type
112
+ class AzureOIDCConfiguration(dict):
113
+ @staticmethod
114
+ def __key_warning(key: str):
115
+ suggest = None
116
+ if key == "clientId":
117
+ suggest = "client_id"
118
+ elif key == "subscriptionId":
119
+ suggest = "subscription_id"
120
+ elif key == "tenantId":
121
+ suggest = "tenant_id"
122
+
123
+ if suggest:
124
+ pulumi.log.warn(f"Key '{key}' not found in AzureOIDCConfiguration. Access the value via the '{suggest}' property getter instead.")
125
+
126
+ def __getitem__(self, key: str) -> Any:
127
+ AzureOIDCConfiguration.__key_warning(key)
128
+ return super().__getitem__(key)
129
+
130
+ def get(self, key: str, default = None) -> Any:
131
+ AzureOIDCConfiguration.__key_warning(key)
132
+ return super().get(key, default)
133
+
134
+ def __init__(__self__, *,
135
+ client_id: str,
136
+ subscription_id: str,
137
+ tenant_id: str):
138
+ """
139
+ :param str client_id: The client ID of the federated workload identity.
140
+ :param str subscription_id: The subscription ID of the federated workload identity.
141
+ :param str tenant_id: The tenant ID of the federated workload identity.
142
+ """
143
+ pulumi.set(__self__, "client_id", client_id)
144
+ pulumi.set(__self__, "subscription_id", subscription_id)
145
+ pulumi.set(__self__, "tenant_id", tenant_id)
146
+
147
+ @property
148
+ @pulumi.getter(name="clientId")
149
+ def client_id(self) -> str:
150
+ """
151
+ The client ID of the federated workload identity.
152
+ """
153
+ return pulumi.get(self, "client_id")
154
+
155
+ @property
156
+ @pulumi.getter(name="subscriptionId")
157
+ def subscription_id(self) -> str:
158
+ """
159
+ The subscription ID of the federated workload identity.
160
+ """
161
+ return pulumi.get(self, "subscription_id")
162
+
163
+ @property
164
+ @pulumi.getter(name="tenantId")
165
+ def tenant_id(self) -> str:
166
+ """
167
+ The tenant ID of the federated workload identity.
168
+ """
169
+ return pulumi.get(self, "tenant_id")
170
+
171
+
172
+ @pulumi.output_type
173
+ class DeploymentSettingsCacheOptions(dict):
174
+ """
175
+ Dependency cache settings for the deployment
176
+ """
177
+ def __init__(__self__, *,
178
+ enable: Optional[bool] = None):
179
+ """
180
+ Dependency cache settings for the deployment
181
+ :param bool enable: Enable dependency caching
182
+ """
183
+ if enable is None:
184
+ enable = False
185
+ if enable is not None:
186
+ pulumi.set(__self__, "enable", enable)
187
+
188
+ @property
189
+ @pulumi.getter
190
+ def enable(self) -> Optional[bool]:
191
+ """
192
+ Enable dependency caching
193
+ """
194
+ return pulumi.get(self, "enable")
195
+
196
+
197
+ @pulumi.output_type
198
+ class DeploymentSettingsExecutorContext(dict):
199
+ """
200
+ The executor context defines information about the executor where the deployment is executed. If unspecified, the default 'pulumi/pulumi' image is used.
201
+ """
202
+ @staticmethod
203
+ def __key_warning(key: str):
204
+ suggest = None
205
+ if key == "executorImage":
206
+ suggest = "executor_image"
207
+
208
+ if suggest:
209
+ pulumi.log.warn(f"Key '{key}' not found in DeploymentSettingsExecutorContext. Access the value via the '{suggest}' property getter instead.")
210
+
211
+ def __getitem__(self, key: str) -> Any:
212
+ DeploymentSettingsExecutorContext.__key_warning(key)
213
+ return super().__getitem__(key)
214
+
215
+ def get(self, key: str, default = None) -> Any:
216
+ DeploymentSettingsExecutorContext.__key_warning(key)
217
+ return super().get(key, default)
218
+
219
+ def __init__(__self__, *,
220
+ executor_image: str):
221
+ """
222
+ The executor context defines information about the executor where the deployment is executed. If unspecified, the default 'pulumi/pulumi' image is used.
223
+ :param str executor_image: Allows overriding the default executor image with a custom image. E.g. 'pulumi/pulumi-nodejs:latest'
224
+ """
225
+ pulumi.set(__self__, "executor_image", executor_image)
226
+
227
+ @property
228
+ @pulumi.getter(name="executorImage")
229
+ def executor_image(self) -> str:
230
+ """
231
+ Allows overriding the default executor image with a custom image. E.g. 'pulumi/pulumi-nodejs:latest'
232
+ """
233
+ return pulumi.get(self, "executor_image")
234
+
235
+
236
+ @pulumi.output_type
237
+ class DeploymentSettingsGitAuthBasicAuth(dict):
238
+ """
239
+ Git source settings for a deployment.
240
+ """
241
+ def __init__(__self__, *,
242
+ password: str,
243
+ username: str):
244
+ """
245
+ Git source settings for a deployment.
246
+ :param str password: Password for git basic authentication.
247
+ :param str username: User name for git basic authentication.
248
+ """
249
+ pulumi.set(__self__, "password", password)
250
+ pulumi.set(__self__, "username", username)
251
+
252
+ @property
253
+ @pulumi.getter
254
+ def password(self) -> str:
255
+ """
256
+ Password for git basic authentication.
257
+ """
258
+ return pulumi.get(self, "password")
259
+
260
+ @property
261
+ @pulumi.getter
262
+ def username(self) -> str:
263
+ """
264
+ User name for git basic authentication.
265
+ """
266
+ return pulumi.get(self, "username")
267
+
268
+
269
+ @pulumi.output_type
270
+ class DeploymentSettingsGitAuthSSHAuth(dict):
271
+ """
272
+ Git source settings for a deployment.
273
+ """
274
+ @staticmethod
275
+ def __key_warning(key: str):
276
+ suggest = None
277
+ if key == "sshPrivateKey":
278
+ suggest = "ssh_private_key"
279
+
280
+ if suggest:
281
+ pulumi.log.warn(f"Key '{key}' not found in DeploymentSettingsGitAuthSSHAuth. Access the value via the '{suggest}' property getter instead.")
282
+
283
+ def __getitem__(self, key: str) -> Any:
284
+ DeploymentSettingsGitAuthSSHAuth.__key_warning(key)
285
+ return super().__getitem__(key)
286
+
287
+ def get(self, key: str, default = None) -> Any:
288
+ DeploymentSettingsGitAuthSSHAuth.__key_warning(key)
289
+ return super().get(key, default)
290
+
291
+ def __init__(__self__, *,
292
+ ssh_private_key: str,
293
+ password: Optional[str] = None):
294
+ """
295
+ Git source settings for a deployment.
296
+ :param str ssh_private_key: SSH private key.
297
+ :param str password: Optional password for SSH authentication.
298
+ """
299
+ pulumi.set(__self__, "ssh_private_key", ssh_private_key)
300
+ if password is not None:
301
+ pulumi.set(__self__, "password", password)
302
+
303
+ @property
304
+ @pulumi.getter(name="sshPrivateKey")
305
+ def ssh_private_key(self) -> str:
306
+ """
307
+ SSH private key.
308
+ """
309
+ return pulumi.get(self, "ssh_private_key")
310
+
311
+ @property
312
+ @pulumi.getter
313
+ def password(self) -> Optional[str]:
314
+ """
315
+ Optional password for SSH authentication.
316
+ """
317
+ return pulumi.get(self, "password")
318
+
319
+
320
+ @pulumi.output_type
321
+ class DeploymentSettingsGitSource(dict):
322
+ """
323
+ Git source settings for a deployment.
324
+ """
325
+ @staticmethod
326
+ def __key_warning(key: str):
327
+ suggest = None
328
+ if key == "gitAuth":
329
+ suggest = "git_auth"
330
+ elif key == "repoDir":
331
+ suggest = "repo_dir"
332
+ elif key == "repoUrl":
333
+ suggest = "repo_url"
334
+
335
+ if suggest:
336
+ pulumi.log.warn(f"Key '{key}' not found in DeploymentSettingsGitSource. Access the value via the '{suggest}' property getter instead.")
337
+
338
+ def __getitem__(self, key: str) -> Any:
339
+ DeploymentSettingsGitSource.__key_warning(key)
340
+ return super().__getitem__(key)
341
+
342
+ def get(self, key: str, default = None) -> Any:
343
+ DeploymentSettingsGitSource.__key_warning(key)
344
+ return super().get(key, default)
345
+
346
+ def __init__(__self__, *,
347
+ branch: Optional[str] = None,
348
+ commit: Optional[str] = None,
349
+ git_auth: Optional['outputs.DeploymentSettingsGitSourceGitAuth'] = None,
350
+ repo_dir: Optional[str] = None,
351
+ repo_url: Optional[str] = None):
352
+ """
353
+ Git source settings for a deployment.
354
+ :param str branch: The branch to deploy. One of either `branch` or `commit` must be specified.
355
+ :param str commit: The commit to deploy. One of either `branch` or `commit` must be specified.
356
+ :param 'DeploymentSettingsGitSourceGitAuth' git_auth: Git authentication configuration for this deployment. Should not be specified if there are `gitHub` settings for this deployment.
357
+ :param str repo_dir: The directory within the repository where the Pulumi.yaml is located.
358
+ :param str repo_url: The repository URL to use for git settings. Should not be specified if there are `gitHub` settings for this deployment.
359
+ """
360
+ if branch is not None:
361
+ pulumi.set(__self__, "branch", branch)
362
+ if commit is not None:
363
+ pulumi.set(__self__, "commit", commit)
364
+ if git_auth is not None:
365
+ pulumi.set(__self__, "git_auth", git_auth)
366
+ if repo_dir is not None:
367
+ pulumi.set(__self__, "repo_dir", repo_dir)
368
+ if repo_url is not None:
369
+ pulumi.set(__self__, "repo_url", repo_url)
370
+
371
+ @property
372
+ @pulumi.getter
373
+ def branch(self) -> Optional[str]:
374
+ """
375
+ The branch to deploy. One of either `branch` or `commit` must be specified.
376
+ """
377
+ return pulumi.get(self, "branch")
378
+
379
+ @property
380
+ @pulumi.getter
381
+ def commit(self) -> Optional[str]:
382
+ """
383
+ The commit to deploy. One of either `branch` or `commit` must be specified.
384
+ """
385
+ return pulumi.get(self, "commit")
386
+
387
+ @property
388
+ @pulumi.getter(name="gitAuth")
389
+ def git_auth(self) -> Optional['outputs.DeploymentSettingsGitSourceGitAuth']:
390
+ """
391
+ Git authentication configuration for this deployment. Should not be specified if there are `gitHub` settings for this deployment.
392
+ """
393
+ return pulumi.get(self, "git_auth")
394
+
395
+ @property
396
+ @pulumi.getter(name="repoDir")
397
+ def repo_dir(self) -> Optional[str]:
398
+ """
399
+ The directory within the repository where the Pulumi.yaml is located.
400
+ """
401
+ return pulumi.get(self, "repo_dir")
402
+
403
+ @property
404
+ @pulumi.getter(name="repoUrl")
405
+ def repo_url(self) -> Optional[str]:
406
+ """
407
+ The repository URL to use for git settings. Should not be specified if there are `gitHub` settings for this deployment.
408
+ """
409
+ return pulumi.get(self, "repo_url")
410
+
411
+
412
+ @pulumi.output_type
413
+ class DeploymentSettingsGitSourceGitAuth(dict):
414
+ """
415
+ Git source settings for a deployment.
416
+ """
417
+ @staticmethod
418
+ def __key_warning(key: str):
419
+ suggest = None
420
+ if key == "basicAuth":
421
+ suggest = "basic_auth"
422
+ elif key == "sshAuth":
423
+ suggest = "ssh_auth"
424
+
425
+ if suggest:
426
+ pulumi.log.warn(f"Key '{key}' not found in DeploymentSettingsGitSourceGitAuth. Access the value via the '{suggest}' property getter instead.")
427
+
428
+ def __getitem__(self, key: str) -> Any:
429
+ DeploymentSettingsGitSourceGitAuth.__key_warning(key)
430
+ return super().__getitem__(key)
431
+
432
+ def get(self, key: str, default = None) -> Any:
433
+ DeploymentSettingsGitSourceGitAuth.__key_warning(key)
434
+ return super().get(key, default)
435
+
436
+ def __init__(__self__, *,
437
+ basic_auth: Optional['outputs.DeploymentSettingsGitAuthBasicAuth'] = None,
438
+ ssh_auth: Optional['outputs.DeploymentSettingsGitAuthSSHAuth'] = None):
439
+ """
440
+ Git source settings for a deployment.
441
+ :param 'DeploymentSettingsGitAuthBasicAuth' basic_auth: Basic auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
442
+ :param 'DeploymentSettingsGitAuthSSHAuth' ssh_auth: SSH auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
443
+ """
444
+ if basic_auth is not None:
445
+ pulumi.set(__self__, "basic_auth", basic_auth)
446
+ if ssh_auth is not None:
447
+ pulumi.set(__self__, "ssh_auth", ssh_auth)
448
+
449
+ @property
450
+ @pulumi.getter(name="basicAuth")
451
+ def basic_auth(self) -> Optional['outputs.DeploymentSettingsGitAuthBasicAuth']:
452
+ """
453
+ Basic auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
454
+ """
455
+ return pulumi.get(self, "basic_auth")
456
+
457
+ @property
458
+ @pulumi.getter(name="sshAuth")
459
+ def ssh_auth(self) -> Optional['outputs.DeploymentSettingsGitAuthSSHAuth']:
460
+ """
461
+ SSH auth for git authentication. Only one of `personalAccessToken`, `sshAuth`, or `basicAuth` must be defined.
462
+ """
463
+ return pulumi.get(self, "ssh_auth")
464
+
465
+
466
+ @pulumi.output_type
467
+ class DeploymentSettingsGithub(dict):
468
+ """
469
+ GitHub settings for the deployment.
470
+ """
471
+ @staticmethod
472
+ def __key_warning(key: str):
473
+ suggest = None
474
+ if key == "deployCommits":
475
+ suggest = "deploy_commits"
476
+ elif key == "previewPullRequests":
477
+ suggest = "preview_pull_requests"
478
+ elif key == "pullRequestTemplate":
479
+ suggest = "pull_request_template"
480
+
481
+ if suggest:
482
+ pulumi.log.warn(f"Key '{key}' not found in DeploymentSettingsGithub. Access the value via the '{suggest}' property getter instead.")
483
+
484
+ def __getitem__(self, key: str) -> Any:
485
+ DeploymentSettingsGithub.__key_warning(key)
486
+ return super().__getitem__(key)
487
+
488
+ def get(self, key: str, default = None) -> Any:
489
+ DeploymentSettingsGithub.__key_warning(key)
490
+ return super().get(key, default)
491
+
492
+ def __init__(__self__, *,
493
+ deploy_commits: Optional[bool] = None,
494
+ paths: Optional[Sequence[str]] = None,
495
+ preview_pull_requests: Optional[bool] = None,
496
+ pull_request_template: Optional[bool] = None,
497
+ repository: Optional[str] = None):
498
+ """
499
+ GitHub settings for the deployment.
500
+ :param bool deploy_commits: Trigger a deployment running `pulumi up` on commit.
501
+ :param Sequence[str] paths: The paths within the repo that deployments should be filtered to.
502
+ :param bool preview_pull_requests: Trigger a deployment running `pulumi preview` when a PR is opened.
503
+ :param bool pull_request_template: Use this stack as a template for pull request review stacks.
504
+ :param str repository: The GitHub repository in the format org/repo.
505
+ """
506
+ if deploy_commits is None:
507
+ deploy_commits = True
508
+ if deploy_commits is not None:
509
+ pulumi.set(__self__, "deploy_commits", deploy_commits)
510
+ if paths is not None:
511
+ pulumi.set(__self__, "paths", paths)
512
+ if preview_pull_requests is None:
513
+ preview_pull_requests = True
514
+ if preview_pull_requests is not None:
515
+ pulumi.set(__self__, "preview_pull_requests", preview_pull_requests)
516
+ if pull_request_template is None:
517
+ pull_request_template = False
518
+ if pull_request_template is not None:
519
+ pulumi.set(__self__, "pull_request_template", pull_request_template)
520
+ if repository is not None:
521
+ pulumi.set(__self__, "repository", repository)
522
+
523
+ @property
524
+ @pulumi.getter(name="deployCommits")
525
+ def deploy_commits(self) -> Optional[bool]:
526
+ """
527
+ Trigger a deployment running `pulumi up` on commit.
528
+ """
529
+ return pulumi.get(self, "deploy_commits")
530
+
531
+ @property
532
+ @pulumi.getter
533
+ def paths(self) -> Optional[Sequence[str]]:
534
+ """
535
+ The paths within the repo that deployments should be filtered to.
536
+ """
537
+ return pulumi.get(self, "paths")
538
+
539
+ @property
540
+ @pulumi.getter(name="previewPullRequests")
541
+ def preview_pull_requests(self) -> Optional[bool]:
542
+ """
543
+ Trigger a deployment running `pulumi preview` when a PR is opened.
544
+ """
545
+ return pulumi.get(self, "preview_pull_requests")
546
+
547
+ @property
548
+ @pulumi.getter(name="pullRequestTemplate")
549
+ def pull_request_template(self) -> Optional[bool]:
550
+ """
551
+ Use this stack as a template for pull request review stacks.
552
+ """
553
+ return pulumi.get(self, "pull_request_template")
554
+
555
+ @property
556
+ @pulumi.getter
557
+ def repository(self) -> Optional[str]:
558
+ """
559
+ The GitHub repository in the format org/repo.
560
+ """
561
+ return pulumi.get(self, "repository")
562
+
563
+
564
+ @pulumi.output_type
565
+ class DeploymentSettingsOperationContext(dict):
566
+ """
567
+ Settings related to the Pulumi operation environment during the deployment.
568
+ """
569
+ @staticmethod
570
+ def __key_warning(key: str):
571
+ suggest = None
572
+ if key == "environmentVariables":
573
+ suggest = "environment_variables"
574
+ elif key == "preRunCommands":
575
+ suggest = "pre_run_commands"
576
+
577
+ if suggest:
578
+ pulumi.log.warn(f"Key '{key}' not found in DeploymentSettingsOperationContext. Access the value via the '{suggest}' property getter instead.")
579
+
580
+ def __getitem__(self, key: str) -> Any:
581
+ DeploymentSettingsOperationContext.__key_warning(key)
582
+ return super().__getitem__(key)
583
+
584
+ def get(self, key: str, default = None) -> Any:
585
+ DeploymentSettingsOperationContext.__key_warning(key)
586
+ return super().get(key, default)
587
+
588
+ def __init__(__self__, *,
589
+ environment_variables: Optional[Mapping[str, str]] = None,
590
+ oidc: Optional['outputs.OperationContextOIDC'] = None,
591
+ options: Optional['outputs.OperationContextOptions'] = None,
592
+ pre_run_commands: Optional[Sequence[str]] = None):
593
+ """
594
+ Settings related to the Pulumi operation environment during the deployment.
595
+ :param Mapping[str, str] environment_variables: Environment variables to set for the deployment.
596
+ :param 'OperationContextOIDC' oidc: OIDC configuration to use during the deployment.
597
+ :param 'OperationContextOptions' options: Options to override default behavior during the deployment.
598
+ :param Sequence[str] pre_run_commands: Shell commands to run before the Pulumi operation executes.
599
+ """
600
+ if environment_variables is not None:
601
+ pulumi.set(__self__, "environment_variables", environment_variables)
602
+ if oidc is not None:
603
+ pulumi.set(__self__, "oidc", oidc)
604
+ if options is not None:
605
+ pulumi.set(__self__, "options", options)
606
+ if pre_run_commands is not None:
607
+ pulumi.set(__self__, "pre_run_commands", pre_run_commands)
608
+
609
+ @property
610
+ @pulumi.getter(name="environmentVariables")
611
+ def environment_variables(self) -> Optional[Mapping[str, str]]:
612
+ """
613
+ Environment variables to set for the deployment.
614
+ """
615
+ return pulumi.get(self, "environment_variables")
616
+
617
+ @property
618
+ @pulumi.getter
619
+ def oidc(self) -> Optional['outputs.OperationContextOIDC']:
620
+ """
621
+ OIDC configuration to use during the deployment.
622
+ """
623
+ return pulumi.get(self, "oidc")
624
+
625
+ @property
626
+ @pulumi.getter
627
+ def options(self) -> Optional['outputs.OperationContextOptions']:
628
+ """
629
+ Options to override default behavior during the deployment.
630
+ """
631
+ return pulumi.get(self, "options")
632
+
633
+ @property
634
+ @pulumi.getter(name="preRunCommands")
635
+ def pre_run_commands(self) -> Optional[Sequence[str]]:
636
+ """
637
+ Shell commands to run before the Pulumi operation executes.
638
+ """
639
+ return pulumi.get(self, "pre_run_commands")
640
+
641
+
642
+ @pulumi.output_type
643
+ class DeploymentSettingsSourceContext(dict):
644
+ """
645
+ Settings related to the source of the deployment.
646
+ """
647
+ def __init__(__self__, *,
648
+ git: Optional['outputs.DeploymentSettingsGitSource'] = None):
649
+ """
650
+ Settings related to the source of the deployment.
651
+ :param 'DeploymentSettingsGitSource' git: Git source settings for a deployment.
652
+ """
653
+ if git is not None:
654
+ pulumi.set(__self__, "git", git)
655
+
656
+ @property
657
+ @pulumi.getter
658
+ def git(self) -> Optional['outputs.DeploymentSettingsGitSource']:
659
+ """
660
+ Git source settings for a deployment.
661
+ """
662
+ return pulumi.get(self, "git")
663
+
664
+
665
+ @pulumi.output_type
666
+ class GCPOIDCConfiguration(dict):
667
+ @staticmethod
668
+ def __key_warning(key: str):
669
+ suggest = None
670
+ if key == "projectId":
671
+ suggest = "project_id"
672
+ elif key == "providerId":
673
+ suggest = "provider_id"
674
+ elif key == "serviceAccount":
675
+ suggest = "service_account"
676
+ elif key == "workloadPoolId":
677
+ suggest = "workload_pool_id"
678
+ elif key == "tokenLifetime":
679
+ suggest = "token_lifetime"
680
+
681
+ if suggest:
682
+ pulumi.log.warn(f"Key '{key}' not found in GCPOIDCConfiguration. Access the value via the '{suggest}' property getter instead.")
683
+
684
+ def __getitem__(self, key: str) -> Any:
685
+ GCPOIDCConfiguration.__key_warning(key)
686
+ return super().__getitem__(key)
687
+
688
+ def get(self, key: str, default = None) -> Any:
689
+ GCPOIDCConfiguration.__key_warning(key)
690
+ return super().get(key, default)
691
+
692
+ def __init__(__self__, *,
693
+ project_id: str,
694
+ provider_id: str,
695
+ service_account: str,
696
+ workload_pool_id: str,
697
+ region: Optional[str] = None,
698
+ token_lifetime: Optional[str] = None):
699
+ """
700
+ :param str project_id: The numerical ID of the GCP project.
701
+ :param str provider_id: The ID of the identity provider associated with the workload pool.
702
+ :param str service_account: The email address of the service account to use.
703
+ :param str workload_pool_id: The ID of the workload pool to use.
704
+ :param str region: The region of the GCP project.
705
+ :param str token_lifetime: The lifetime of the temporary credentials in “XhYmZs” format.
706
+ """
707
+ pulumi.set(__self__, "project_id", project_id)
708
+ pulumi.set(__self__, "provider_id", provider_id)
709
+ pulumi.set(__self__, "service_account", service_account)
710
+ pulumi.set(__self__, "workload_pool_id", workload_pool_id)
711
+ if region is not None:
712
+ pulumi.set(__self__, "region", region)
713
+ if token_lifetime is not None:
714
+ pulumi.set(__self__, "token_lifetime", token_lifetime)
715
+
716
+ @property
717
+ @pulumi.getter(name="projectId")
718
+ def project_id(self) -> str:
719
+ """
720
+ The numerical ID of the GCP project.
721
+ """
722
+ return pulumi.get(self, "project_id")
723
+
724
+ @property
725
+ @pulumi.getter(name="providerId")
726
+ def provider_id(self) -> str:
727
+ """
728
+ The ID of the identity provider associated with the workload pool.
729
+ """
730
+ return pulumi.get(self, "provider_id")
731
+
732
+ @property
733
+ @pulumi.getter(name="serviceAccount")
734
+ def service_account(self) -> str:
735
+ """
736
+ The email address of the service account to use.
737
+ """
738
+ return pulumi.get(self, "service_account")
739
+
740
+ @property
741
+ @pulumi.getter(name="workloadPoolId")
742
+ def workload_pool_id(self) -> str:
743
+ """
744
+ The ID of the workload pool to use.
745
+ """
746
+ return pulumi.get(self, "workload_pool_id")
747
+
748
+ @property
749
+ @pulumi.getter
750
+ def region(self) -> Optional[str]:
751
+ """
752
+ The region of the GCP project.
753
+ """
754
+ return pulumi.get(self, "region")
755
+
756
+ @property
757
+ @pulumi.getter(name="tokenLifetime")
758
+ def token_lifetime(self) -> Optional[str]:
759
+ """
760
+ The lifetime of the temporary credentials in “XhYmZs” format.
761
+ """
762
+ return pulumi.get(self, "token_lifetime")
763
+
764
+
765
+ @pulumi.output_type
766
+ class OperationContextOIDC(dict):
767
+ def __init__(__self__, *,
768
+ aws: Optional['outputs.AWSOIDCConfiguration'] = None,
769
+ azure: Optional['outputs.AzureOIDCConfiguration'] = None,
770
+ gcp: Optional['outputs.GCPOIDCConfiguration'] = None):
771
+ """
772
+ :param 'AWSOIDCConfiguration' aws: AWS-specific OIDC configuration.
773
+ :param 'AzureOIDCConfiguration' azure: Azure-specific OIDC configuration.
774
+ :param 'GCPOIDCConfiguration' gcp: GCP-specific OIDC configuration.
775
+ """
776
+ if aws is not None:
777
+ pulumi.set(__self__, "aws", aws)
778
+ if azure is not None:
779
+ pulumi.set(__self__, "azure", azure)
780
+ if gcp is not None:
781
+ pulumi.set(__self__, "gcp", gcp)
782
+
783
+ @property
784
+ @pulumi.getter
785
+ def aws(self) -> Optional['outputs.AWSOIDCConfiguration']:
786
+ """
787
+ AWS-specific OIDC configuration.
788
+ """
789
+ return pulumi.get(self, "aws")
790
+
791
+ @property
792
+ @pulumi.getter
793
+ def azure(self) -> Optional['outputs.AzureOIDCConfiguration']:
794
+ """
795
+ Azure-specific OIDC configuration.
796
+ """
797
+ return pulumi.get(self, "azure")
798
+
799
+ @property
800
+ @pulumi.getter
801
+ def gcp(self) -> Optional['outputs.GCPOIDCConfiguration']:
802
+ """
803
+ GCP-specific OIDC configuration.
804
+ """
805
+ return pulumi.get(self, "gcp")
806
+
807
+
808
+ @pulumi.output_type
809
+ class OperationContextOptions(dict):
810
+ @staticmethod
811
+ def __key_warning(key: str):
812
+ suggest = None
813
+ if key == "deleteAfterDestroy":
814
+ suggest = "delete_after_destroy"
815
+ elif key == "skipInstallDependencies":
816
+ suggest = "skip_install_dependencies"
817
+ elif key == "skipIntermediateDeployments":
818
+ suggest = "skip_intermediate_deployments"
819
+
820
+ if suggest:
821
+ pulumi.log.warn(f"Key '{key}' not found in OperationContextOptions. Access the value via the '{suggest}' property getter instead.")
822
+
823
+ def __getitem__(self, key: str) -> Any:
824
+ OperationContextOptions.__key_warning(key)
825
+ return super().__getitem__(key)
826
+
827
+ def get(self, key: str, default = None) -> Any:
828
+ OperationContextOptions.__key_warning(key)
829
+ return super().get(key, default)
830
+
831
+ def __init__(__self__, *,
832
+ delete_after_destroy: Optional[bool] = None,
833
+ shell: Optional[str] = None,
834
+ skip_install_dependencies: Optional[bool] = None,
835
+ skip_intermediate_deployments: Optional[bool] = None):
836
+ """
837
+ :param bool delete_after_destroy: Whether the stack should be deleted after it is destroyed.
838
+ :param str shell: The shell to use to run commands during the deployment. Defaults to 'bash'.
839
+ :param bool skip_install_dependencies: Skip the default dependency installation step - use this to customize the dependency installation (e.g. if using yarn or poetry)
840
+ :param bool skip_intermediate_deployments: Skip intermediate deployments (Consolidate multiple deployments of the same type into one deployment)
841
+ """
842
+ if delete_after_destroy is not None:
843
+ pulumi.set(__self__, "delete_after_destroy", delete_after_destroy)
844
+ if shell is not None:
845
+ pulumi.set(__self__, "shell", shell)
846
+ if skip_install_dependencies is not None:
847
+ pulumi.set(__self__, "skip_install_dependencies", skip_install_dependencies)
848
+ if skip_intermediate_deployments is not None:
849
+ pulumi.set(__self__, "skip_intermediate_deployments", skip_intermediate_deployments)
850
+
851
+ @property
852
+ @pulumi.getter(name="deleteAfterDestroy")
853
+ def delete_after_destroy(self) -> Optional[bool]:
854
+ """
855
+ Whether the stack should be deleted after it is destroyed.
856
+ """
857
+ return pulumi.get(self, "delete_after_destroy")
858
+
859
+ @property
860
+ @pulumi.getter
861
+ def shell(self) -> Optional[str]:
862
+ """
863
+ The shell to use to run commands during the deployment. Defaults to 'bash'.
864
+ """
865
+ return pulumi.get(self, "shell")
866
+
867
+ @property
868
+ @pulumi.getter(name="skipInstallDependencies")
869
+ def skip_install_dependencies(self) -> Optional[bool]:
870
+ """
871
+ Skip the default dependency installation step - use this to customize the dependency installation (e.g. if using yarn or poetry)
872
+ """
873
+ return pulumi.get(self, "skip_install_dependencies")
874
+
875
+ @property
876
+ @pulumi.getter(name="skipIntermediateDeployments")
877
+ def skip_intermediate_deployments(self) -> Optional[bool]:
878
+ """
879
+ Skip intermediate deployments (Consolidate multiple deployments of the same type into one deployment)
880
+ """
881
+ return pulumi.get(self, "skip_intermediate_deployments")
882
+
883
+
884
+ @pulumi.output_type
885
+ class TemplateSourceDestination(dict):
886
+ def __init__(__self__, *,
887
+ url: Optional[str] = None):
888
+ """
889
+ :param str url: Destination URL that gets filled in on new project creation.
890
+ """
891
+ if url is not None:
892
+ pulumi.set(__self__, "url", url)
893
+
894
+ @property
895
+ @pulumi.getter
896
+ def url(self) -> Optional[str]:
897
+ """
898
+ Destination URL that gets filled in on new project creation.
899
+ """
900
+ return pulumi.get(self, "url")
901
+
902
+