pulumi-gcp 8.26.0a1744267117__py3-none-any.whl → 8.27.0__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 (116) hide show
  1. pulumi_gcp/__init__.py +128 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +117 -0
  3. pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +81 -26
  4. pulumi_gcp/accesscontextmanager/outputs.py +95 -0
  5. pulumi_gcp/apigee/__init__.py +1 -0
  6. pulumi_gcp/apigee/control_plane_access.py +419 -0
  7. pulumi_gcp/bigquery/_inputs.py +87 -30
  8. pulumi_gcp/bigquery/outputs.py +58 -20
  9. pulumi_gcp/bigquery/table.py +28 -14
  10. pulumi_gcp/clouddeploy/__init__.py +1 -0
  11. pulumi_gcp/clouddeploy/_inputs.py +2876 -1314
  12. pulumi_gcp/clouddeploy/automation.py +64 -2
  13. pulumi_gcp/clouddeploy/deploy_policy.py +1179 -0
  14. pulumi_gcp/clouddeploy/outputs.py +1130 -5
  15. pulumi_gcp/cloudrun/service.py +46 -0
  16. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  17. pulumi_gcp/cloudrunv2/service.py +87 -2
  18. pulumi_gcp/compute/_inputs.py +448 -1
  19. pulumi_gcp/compute/image.py +183 -0
  20. pulumi_gcp/compute/outputs.py +387 -3
  21. pulumi_gcp/compute/region_backend_service.py +6 -2
  22. pulumi_gcp/compute/resource_policy.py +30 -0
  23. pulumi_gcp/compute/snapshot.py +6 -0
  24. pulumi_gcp/databasemigrationservice/_inputs.py +27 -24
  25. pulumi_gcp/databasemigrationservice/connection_profile.py +168 -0
  26. pulumi_gcp/databasemigrationservice/migration_job.py +6 -0
  27. pulumi_gcp/databasemigrationservice/outputs.py +18 -15
  28. pulumi_gcp/datastream/_inputs.py +506 -0
  29. pulumi_gcp/datastream/outputs.py +376 -0
  30. pulumi_gcp/datastream/stream.py +0 -2
  31. pulumi_gcp/developerconnect/__init__.py +1 -0
  32. pulumi_gcp/developerconnect/_inputs.py +77 -0
  33. pulumi_gcp/developerconnect/account_connector.py +866 -0
  34. pulumi_gcp/developerconnect/outputs.py +64 -0
  35. pulumi_gcp/firebase/hosting_version.py +34 -14
  36. pulumi_gcp/firestore/database.py +82 -0
  37. pulumi_gcp/firestore/index.py +263 -7
  38. pulumi_gcp/folder/__init__.py +1 -0
  39. pulumi_gcp/folder/service_identity.py +314 -0
  40. pulumi_gcp/gemini/__init__.py +2 -0
  41. pulumi_gcp/gemini/_inputs.py +176 -0
  42. pulumi_gcp/gemini/code_tools_setting.py +601 -0
  43. pulumi_gcp/gemini/code_tools_setting_binding.py +753 -0
  44. pulumi_gcp/gemini/outputs.py +124 -0
  45. pulumi_gcp/gkeonprem/v_mware_cluster.py +49 -0
  46. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +28 -0
  47. pulumi_gcp/managedkafka/_inputs.py +6 -6
  48. pulumi_gcp/managedkafka/connect_cluster.py +84 -40
  49. pulumi_gcp/managedkafka/connector.py +98 -44
  50. pulumi_gcp/managedkafka/outputs.py +4 -4
  51. pulumi_gcp/memorystore/_inputs.py +205 -0
  52. pulumi_gcp/memorystore/get_instance.py +45 -1
  53. pulumi_gcp/memorystore/instance.py +194 -0
  54. pulumi_gcp/memorystore/outputs.py +270 -0
  55. pulumi_gcp/ml/engine_model.py +0 -22
  56. pulumi_gcp/monitoring/_inputs.py +37 -19
  57. pulumi_gcp/monitoring/outputs.py +39 -11
  58. pulumi_gcp/monitoring/uptime_check_config.py +8 -0
  59. pulumi_gcp/netapp/_inputs.py +92 -6
  60. pulumi_gcp/netapp/outputs.py +77 -4
  61. pulumi_gcp/netapp/volume_replication.py +12 -2
  62. pulumi_gcp/networkconnectivity/service_connection_policy.py +4 -2
  63. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  64. pulumi_gcp/orgpolicy/policy.py +2 -2
  65. pulumi_gcp/osconfig/__init__.py +1 -0
  66. pulumi_gcp/osconfig/_inputs.py +5439 -0
  67. pulumi_gcp/osconfig/outputs.py +3978 -0
  68. pulumi_gcp/osconfig/v2_policy_orchestrator.py +8 -0
  69. pulumi_gcp/osconfig/v2_policy_orchestrator_for_organization.py +1055 -0
  70. pulumi_gcp/parametermanager/get_regional_parameter.py +12 -1
  71. pulumi_gcp/parametermanager/get_regional_parameter_version.py +15 -1
  72. pulumi_gcp/parametermanager/outputs.py +11 -0
  73. pulumi_gcp/parametermanager/regional_parameter.py +78 -0
  74. pulumi_gcp/parametermanager/regional_parameter_version.py +66 -0
  75. pulumi_gcp/pubsub/subscription.py +6 -6
  76. pulumi_gcp/pulumi-plugin.json +1 -1
  77. pulumi_gcp/redis/_inputs.py +69 -0
  78. pulumi_gcp/redis/cluster.py +140 -0
  79. pulumi_gcp/redis/outputs.py +40 -0
  80. pulumi_gcp/spanner/database.py +0 -34
  81. pulumi_gcp/storage/_inputs.py +111 -0
  82. pulumi_gcp/storage/bucket_object.py +28 -0
  83. pulumi_gcp/storage/control_folder_intelligence_config.py +32 -0
  84. pulumi_gcp/storage/control_organization_intelligence_config.py +32 -0
  85. pulumi_gcp/storage/control_project_intelligence_config.py +32 -0
  86. pulumi_gcp/storage/get_bucket_object.py +12 -1
  87. pulumi_gcp/storage/get_bucket_object_content.py +12 -1
  88. pulumi_gcp/storage/get_control_folder_intelligence_config.py +12 -1
  89. pulumi_gcp/storage/get_control_organization_intelligence_config.py +12 -1
  90. pulumi_gcp/storage/get_control_project_intelligence_config.py +12 -1
  91. pulumi_gcp/storage/outputs.py +174 -0
  92. pulumi_gcp/vertex/__init__.py +12 -0
  93. pulumi_gcp/vertex/_inputs.py +294 -0
  94. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  95. pulumi_gcp/vertex/ai_feature_group.py +1 -1
  96. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +583 -0
  97. pulumi_gcp/vertex/ai_feature_group_iam_member.py +583 -0
  98. pulumi_gcp/vertex/ai_feature_group_iam_policy.py +422 -0
  99. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +26 -27
  100. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +614 -0
  101. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +614 -0
  102. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +453 -0
  103. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +583 -0
  104. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +583 -0
  105. pulumi_gcp/vertex/ai_feature_online_store_iam_policy.py +422 -0
  106. pulumi_gcp/vertex/get_ai_feature_group_iam_policy.py +177 -0
  107. pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +194 -0
  108. pulumi_gcp/vertex/get_ai_feature_online_store_iam_policy.py +177 -0
  109. pulumi_gcp/vertex/outputs.py +168 -0
  110. pulumi_gcp/workbench/_inputs.py +60 -0
  111. pulumi_gcp/workbench/instance.py +48 -0
  112. pulumi_gcp/workbench/outputs.py +55 -0
  113. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/METADATA +1 -1
  114. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/RECORD +116 -97
  115. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/WHEEL +0 -0
  116. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/top_level.txt +0 -0
@@ -20,6 +20,11 @@ __all__ = [
20
20
  'AutomationRule',
21
21
  'AutomationRuleAdvanceRolloutRule',
22
22
  'AutomationRulePromoteReleaseRule',
23
+ 'AutomationRuleRepairRolloutRule',
24
+ 'AutomationRuleRepairRolloutRuleRepairPhase',
25
+ 'AutomationRuleRepairRolloutRuleRepairPhaseRetry',
26
+ 'AutomationRuleRepairRolloutRuleRepairPhaseRollback',
27
+ 'AutomationRuleTimedPromoteReleaseRule',
23
28
  'AutomationSelector',
24
29
  'AutomationSelectorTarget',
25
30
  'CustomTargetTypeCustomActions',
@@ -56,6 +61,20 @@ __all__ = [
56
61
  'DeliveryPipelineSerialPipelineStageStrategyStandard',
57
62
  'DeliveryPipelineSerialPipelineStageStrategyStandardPostdeploy',
58
63
  'DeliveryPipelineSerialPipelineStageStrategyStandardPredeploy',
64
+ 'DeployPolicyRule',
65
+ 'DeployPolicyRuleRolloutRestriction',
66
+ 'DeployPolicyRuleRolloutRestrictionTimeWindows',
67
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow',
68
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndDate',
69
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndTime',
70
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartDate',
71
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartTime',
72
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow',
73
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowEndTime',
74
+ 'DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowStartTime',
75
+ 'DeployPolicySelector',
76
+ 'DeployPolicySelectorDeliveryPipeline',
77
+ 'DeployPolicySelectorTarget',
59
78
  'TargetAnthosCluster',
60
79
  'TargetAssociatedEntity',
61
80
  'TargetAssociatedEntityAnthosCluster',
@@ -78,6 +97,10 @@ class AutomationRule(dict):
78
97
  suggest = "advance_rollout_rule"
79
98
  elif key == "promoteReleaseRule":
80
99
  suggest = "promote_release_rule"
100
+ elif key == "repairRolloutRule":
101
+ suggest = "repair_rollout_rule"
102
+ elif key == "timedPromoteReleaseRule":
103
+ suggest = "timed_promote_release_rule"
81
104
 
82
105
  if suggest:
83
106
  pulumi.log.warn(f"Key '{key}' not found in AutomationRule. Access the value via the '{suggest}' property getter instead.")
@@ -92,17 +115,27 @@ class AutomationRule(dict):
92
115
 
93
116
  def __init__(__self__, *,
94
117
  advance_rollout_rule: Optional['outputs.AutomationRuleAdvanceRolloutRule'] = None,
95
- promote_release_rule: Optional['outputs.AutomationRulePromoteReleaseRule'] = None):
118
+ promote_release_rule: Optional['outputs.AutomationRulePromoteReleaseRule'] = None,
119
+ repair_rollout_rule: Optional['outputs.AutomationRuleRepairRolloutRule'] = None,
120
+ timed_promote_release_rule: Optional['outputs.AutomationRuleTimedPromoteReleaseRule'] = None):
96
121
  """
97
122
  :param 'AutomationRuleAdvanceRolloutRuleArgs' advance_rollout_rule: Optional. The `AdvanceRolloutRule` will automatically advance a successful Rollout.
98
123
  Structure is documented below.
99
124
  :param 'AutomationRulePromoteReleaseRuleArgs' promote_release_rule: Optional. `PromoteReleaseRule` will automatically promote a release from the current target to a specified target.
100
125
  Structure is documented below.
126
+ :param 'AutomationRuleRepairRolloutRuleArgs' repair_rollout_rule: Optional. The RepairRolloutRule will automatically repair a failed rollout.
127
+ Structure is documented below.
128
+ :param 'AutomationRuleTimedPromoteReleaseRuleArgs' timed_promote_release_rule: Optional. The `TimedPromoteReleaseRule` will automatically promote a release from the current target(s) to the specified target(s) on a configured schedule.
129
+ Structure is documented below.
101
130
  """
102
131
  if advance_rollout_rule is not None:
103
132
  pulumi.set(__self__, "advance_rollout_rule", advance_rollout_rule)
104
133
  if promote_release_rule is not None:
105
134
  pulumi.set(__self__, "promote_release_rule", promote_release_rule)
135
+ if repair_rollout_rule is not None:
136
+ pulumi.set(__self__, "repair_rollout_rule", repair_rollout_rule)
137
+ if timed_promote_release_rule is not None:
138
+ pulumi.set(__self__, "timed_promote_release_rule", timed_promote_release_rule)
106
139
 
107
140
  @property
108
141
  @pulumi.getter(name="advanceRolloutRule")
@@ -122,6 +155,24 @@ class AutomationRule(dict):
122
155
  """
123
156
  return pulumi.get(self, "promote_release_rule")
124
157
 
158
+ @property
159
+ @pulumi.getter(name="repairRolloutRule")
160
+ def repair_rollout_rule(self) -> Optional['outputs.AutomationRuleRepairRolloutRule']:
161
+ """
162
+ Optional. The RepairRolloutRule will automatically repair a failed rollout.
163
+ Structure is documented below.
164
+ """
165
+ return pulumi.get(self, "repair_rollout_rule")
166
+
167
+ @property
168
+ @pulumi.getter(name="timedPromoteReleaseRule")
169
+ def timed_promote_release_rule(self) -> Optional['outputs.AutomationRuleTimedPromoteReleaseRule']:
170
+ """
171
+ Optional. The `TimedPromoteReleaseRule` will automatically promote a release from the current target(s) to the specified target(s) on a configured schedule.
172
+ Structure is documented below.
173
+ """
174
+ return pulumi.get(self, "timed_promote_release_rule")
175
+
125
176
 
126
177
  @pulumi.output_type
127
178
  class AutomationRuleAdvanceRolloutRule(dict):
@@ -149,8 +200,6 @@ class AutomationRuleAdvanceRolloutRule(dict):
149
200
  """
150
201
  :param builtins.str id: Required. ID of the rule. This id must be unique in the `Automation` resource to which this rule belongs. The format is `a-z{0,62}`.
151
202
  :param Sequence[builtins.str] source_phases: Optional. Proceeds only after phase name matched any one in the list. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: `^a-z?$`.
152
-
153
- - - -
154
203
  :param builtins.str wait: Optional. How long to wait after a rollout is finished.
155
204
  """
156
205
  pulumi.set(__self__, "id", id)
@@ -172,8 +221,6 @@ class AutomationRuleAdvanceRolloutRule(dict):
172
221
  def source_phases(self) -> Optional[Sequence[builtins.str]]:
173
222
  """
174
223
  Optional. Proceeds only after phase name matched any one in the list. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: `^a-z?$`.
175
-
176
- - - -
177
224
  """
178
225
  return pulumi.get(self, "source_phases")
179
226
 
@@ -259,6 +306,318 @@ class AutomationRulePromoteReleaseRule(dict):
259
306
  return pulumi.get(self, "wait")
260
307
 
261
308
 
309
+ @pulumi.output_type
310
+ class AutomationRuleRepairRolloutRule(dict):
311
+ @staticmethod
312
+ def __key_warning(key: str):
313
+ suggest = None
314
+ if key == "repairPhases":
315
+ suggest = "repair_phases"
316
+
317
+ if suggest:
318
+ pulumi.log.warn(f"Key '{key}' not found in AutomationRuleRepairRolloutRule. Access the value via the '{suggest}' property getter instead.")
319
+
320
+ def __getitem__(self, key: str) -> Any:
321
+ AutomationRuleRepairRolloutRule.__key_warning(key)
322
+ return super().__getitem__(key)
323
+
324
+ def get(self, key: str, default = None) -> Any:
325
+ AutomationRuleRepairRolloutRule.__key_warning(key)
326
+ return super().get(key, default)
327
+
328
+ def __init__(__self__, *,
329
+ id: builtins.str,
330
+ jobs: Optional[Sequence[builtins.str]] = None,
331
+ phases: Optional[Sequence[builtins.str]] = None,
332
+ repair_phases: Optional[Sequence['outputs.AutomationRuleRepairRolloutRuleRepairPhase']] = None):
333
+ """
334
+ :param builtins.str id: Required. ID of the rule. This id must be unique in the `Automation` resource to which this rule belongs. The format is `a-z{0,62}`.
335
+ :param Sequence[builtins.str] jobs: Optional. Jobs to repair. Proceeds only after job name matched any one in the list, or for all jobs if unspecified or empty. The phase that includes the job must match the phase ID specified in sourcePhase. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: ^a-z?$.
336
+ :param Sequence[builtins.str] phases: Optional. Phases within which jobs are subject to automatic repair actions on failure. Proceeds only after phase name matched any one in the list, or for all phases if unspecified. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: ^a-z?$.
337
+ :param Sequence['AutomationRuleRepairRolloutRuleRepairPhaseArgs'] repair_phases: Optional. Proceeds only after phase name matched any one in the list. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: `^a-z?$`.
338
+ Structure is documented below.
339
+ """
340
+ pulumi.set(__self__, "id", id)
341
+ if jobs is not None:
342
+ pulumi.set(__self__, "jobs", jobs)
343
+ if phases is not None:
344
+ pulumi.set(__self__, "phases", phases)
345
+ if repair_phases is not None:
346
+ pulumi.set(__self__, "repair_phases", repair_phases)
347
+
348
+ @property
349
+ @pulumi.getter
350
+ def id(self) -> builtins.str:
351
+ """
352
+ Required. ID of the rule. This id must be unique in the `Automation` resource to which this rule belongs. The format is `a-z{0,62}`.
353
+ """
354
+ return pulumi.get(self, "id")
355
+
356
+ @property
357
+ @pulumi.getter
358
+ def jobs(self) -> Optional[Sequence[builtins.str]]:
359
+ """
360
+ Optional. Jobs to repair. Proceeds only after job name matched any one in the list, or for all jobs if unspecified or empty. The phase that includes the job must match the phase ID specified in sourcePhase. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: ^a-z?$.
361
+ """
362
+ return pulumi.get(self, "jobs")
363
+
364
+ @property
365
+ @pulumi.getter
366
+ def phases(self) -> Optional[Sequence[builtins.str]]:
367
+ """
368
+ Optional. Phases within which jobs are subject to automatic repair actions on failure. Proceeds only after phase name matched any one in the list, or for all phases if unspecified. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: ^a-z?$.
369
+ """
370
+ return pulumi.get(self, "phases")
371
+
372
+ @property
373
+ @pulumi.getter(name="repairPhases")
374
+ def repair_phases(self) -> Optional[Sequence['outputs.AutomationRuleRepairRolloutRuleRepairPhase']]:
375
+ """
376
+ Optional. Proceeds only after phase name matched any one in the list. This value must consist of lower-case letters, numbers, and hyphens, start with a letter and end with a letter or a number, and have a max length of 63 characters. In other words, it must match the following regex: `^a-z?$`.
377
+ Structure is documented below.
378
+ """
379
+ return pulumi.get(self, "repair_phases")
380
+
381
+
382
+ @pulumi.output_type
383
+ class AutomationRuleRepairRolloutRuleRepairPhase(dict):
384
+ def __init__(__self__, *,
385
+ retry: Optional['outputs.AutomationRuleRepairRolloutRuleRepairPhaseRetry'] = None,
386
+ rollback: Optional['outputs.AutomationRuleRepairRolloutRuleRepairPhaseRollback'] = None):
387
+ """
388
+ :param 'AutomationRuleRepairRolloutRuleRepairPhaseRetryArgs' retry: Optional. Retries a failed job.
389
+ Structure is documented below.
390
+ :param 'AutomationRuleRepairRolloutRuleRepairPhaseRollbackArgs' rollback: Optional. Rolls back a Rollout.
391
+ Structure is documented below.
392
+ """
393
+ if retry is not None:
394
+ pulumi.set(__self__, "retry", retry)
395
+ if rollback is not None:
396
+ pulumi.set(__self__, "rollback", rollback)
397
+
398
+ @property
399
+ @pulumi.getter
400
+ def retry(self) -> Optional['outputs.AutomationRuleRepairRolloutRuleRepairPhaseRetry']:
401
+ """
402
+ Optional. Retries a failed job.
403
+ Structure is documented below.
404
+ """
405
+ return pulumi.get(self, "retry")
406
+
407
+ @property
408
+ @pulumi.getter
409
+ def rollback(self) -> Optional['outputs.AutomationRuleRepairRolloutRuleRepairPhaseRollback']:
410
+ """
411
+ Optional. Rolls back a Rollout.
412
+ Structure is documented below.
413
+ """
414
+ return pulumi.get(self, "rollback")
415
+
416
+
417
+ @pulumi.output_type
418
+ class AutomationRuleRepairRolloutRuleRepairPhaseRetry(dict):
419
+ @staticmethod
420
+ def __key_warning(key: str):
421
+ suggest = None
422
+ if key == "backoffMode":
423
+ suggest = "backoff_mode"
424
+
425
+ if suggest:
426
+ pulumi.log.warn(f"Key '{key}' not found in AutomationRuleRepairRolloutRuleRepairPhaseRetry. Access the value via the '{suggest}' property getter instead.")
427
+
428
+ def __getitem__(self, key: str) -> Any:
429
+ AutomationRuleRepairRolloutRuleRepairPhaseRetry.__key_warning(key)
430
+ return super().__getitem__(key)
431
+
432
+ def get(self, key: str, default = None) -> Any:
433
+ AutomationRuleRepairRolloutRuleRepairPhaseRetry.__key_warning(key)
434
+ return super().get(key, default)
435
+
436
+ def __init__(__self__, *,
437
+ attempts: builtins.str,
438
+ backoff_mode: Optional[builtins.str] = None,
439
+ wait: Optional[builtins.str] = None):
440
+ """
441
+ :param builtins.str attempts: Required. Total number of retries. Retry is skipped if set to 0; The minimum value is 1, and the maximum value is 10.
442
+ :param builtins.str backoff_mode: Optional. The pattern of how wait time will be increased. Default is linear. Backoff mode will be ignored if wait is 0.
443
+ Possible values are: `BACKOFF_MODE_UNSPECIFIED`, `BACKOFF_MODE_LINEAR`, `BACKOFF_MODE_EXPONENTIAL`.
444
+ :param builtins.str wait: Optional. How long to wait for the first retry. Default is 0, and the maximum value is 14d. A duration in seconds with up to nine fractional digits, ending with 's'. Example: `3.5s`.
445
+ """
446
+ pulumi.set(__self__, "attempts", attempts)
447
+ if backoff_mode is not None:
448
+ pulumi.set(__self__, "backoff_mode", backoff_mode)
449
+ if wait is not None:
450
+ pulumi.set(__self__, "wait", wait)
451
+
452
+ @property
453
+ @pulumi.getter
454
+ def attempts(self) -> builtins.str:
455
+ """
456
+ Required. Total number of retries. Retry is skipped if set to 0; The minimum value is 1, and the maximum value is 10.
457
+ """
458
+ return pulumi.get(self, "attempts")
459
+
460
+ @property
461
+ @pulumi.getter(name="backoffMode")
462
+ def backoff_mode(self) -> Optional[builtins.str]:
463
+ """
464
+ Optional. The pattern of how wait time will be increased. Default is linear. Backoff mode will be ignored if wait is 0.
465
+ Possible values are: `BACKOFF_MODE_UNSPECIFIED`, `BACKOFF_MODE_LINEAR`, `BACKOFF_MODE_EXPONENTIAL`.
466
+ """
467
+ return pulumi.get(self, "backoff_mode")
468
+
469
+ @property
470
+ @pulumi.getter
471
+ def wait(self) -> Optional[builtins.str]:
472
+ """
473
+ Optional. How long to wait for the first retry. Default is 0, and the maximum value is 14d. A duration in seconds with up to nine fractional digits, ending with 's'. Example: `3.5s`.
474
+ """
475
+ return pulumi.get(self, "wait")
476
+
477
+
478
+ @pulumi.output_type
479
+ class AutomationRuleRepairRolloutRuleRepairPhaseRollback(dict):
480
+ @staticmethod
481
+ def __key_warning(key: str):
482
+ suggest = None
483
+ if key == "destinationPhase":
484
+ suggest = "destination_phase"
485
+ elif key == "disableRollbackIfRolloutPending":
486
+ suggest = "disable_rollback_if_rollout_pending"
487
+
488
+ if suggest:
489
+ pulumi.log.warn(f"Key '{key}' not found in AutomationRuleRepairRolloutRuleRepairPhaseRollback. Access the value via the '{suggest}' property getter instead.")
490
+
491
+ def __getitem__(self, key: str) -> Any:
492
+ AutomationRuleRepairRolloutRuleRepairPhaseRollback.__key_warning(key)
493
+ return super().__getitem__(key)
494
+
495
+ def get(self, key: str, default = None) -> Any:
496
+ AutomationRuleRepairRolloutRuleRepairPhaseRollback.__key_warning(key)
497
+ return super().get(key, default)
498
+
499
+ def __init__(__self__, *,
500
+ destination_phase: Optional[builtins.str] = None,
501
+ disable_rollback_if_rollout_pending: Optional[builtins.bool] = None):
502
+ """
503
+ :param builtins.str destination_phase: Optional. The starting phase ID for the Rollout. If unspecified, the Rollout will start in the stable phase.
504
+ :param builtins.bool disable_rollback_if_rollout_pending: Optional. If pending rollout exists on the target, the rollback operation will be aborted.
505
+ """
506
+ if destination_phase is not None:
507
+ pulumi.set(__self__, "destination_phase", destination_phase)
508
+ if disable_rollback_if_rollout_pending is not None:
509
+ pulumi.set(__self__, "disable_rollback_if_rollout_pending", disable_rollback_if_rollout_pending)
510
+
511
+ @property
512
+ @pulumi.getter(name="destinationPhase")
513
+ def destination_phase(self) -> Optional[builtins.str]:
514
+ """
515
+ Optional. The starting phase ID for the Rollout. If unspecified, the Rollout will start in the stable phase.
516
+ """
517
+ return pulumi.get(self, "destination_phase")
518
+
519
+ @property
520
+ @pulumi.getter(name="disableRollbackIfRolloutPending")
521
+ def disable_rollback_if_rollout_pending(self) -> Optional[builtins.bool]:
522
+ """
523
+ Optional. If pending rollout exists on the target, the rollback operation will be aborted.
524
+ """
525
+ return pulumi.get(self, "disable_rollback_if_rollout_pending")
526
+
527
+
528
+ @pulumi.output_type
529
+ class AutomationRuleTimedPromoteReleaseRule(dict):
530
+ @staticmethod
531
+ def __key_warning(key: str):
532
+ suggest = None
533
+ if key == "timeZone":
534
+ suggest = "time_zone"
535
+ elif key == "destinationPhase":
536
+ suggest = "destination_phase"
537
+ elif key == "destinationTargetId":
538
+ suggest = "destination_target_id"
539
+
540
+ if suggest:
541
+ pulumi.log.warn(f"Key '{key}' not found in AutomationRuleTimedPromoteReleaseRule. Access the value via the '{suggest}' property getter instead.")
542
+
543
+ def __getitem__(self, key: str) -> Any:
544
+ AutomationRuleTimedPromoteReleaseRule.__key_warning(key)
545
+ return super().__getitem__(key)
546
+
547
+ def get(self, key: str, default = None) -> Any:
548
+ AutomationRuleTimedPromoteReleaseRule.__key_warning(key)
549
+ return super().get(key, default)
550
+
551
+ def __init__(__self__, *,
552
+ id: builtins.str,
553
+ schedule: builtins.str,
554
+ time_zone: builtins.str,
555
+ destination_phase: Optional[builtins.str] = None,
556
+ destination_target_id: Optional[builtins.str] = None):
557
+ """
558
+ :param builtins.str id: Required. ID of the rule. This id must be unique in the `Automation` resource to which this rule belongs. The format is `a-z{0,62}`.
559
+ :param builtins.str schedule: Required. Schedule in crontab format. e.g. `0 9 * * 1` for every Monday at 9am.
560
+ :param builtins.str time_zone: Required. The time zone in IANA format IANA Time Zone Database (e.g. America/New_York).
561
+ :param builtins.str destination_phase: Optional. The starting phase of the rollout created by this rule. Default to the first phase.
562
+
563
+ - - -
564
+ :param builtins.str destination_target_id: Optional. The ID of the stage in the pipeline to which this Release is deploying. If unspecified, default it to the next stage in the promotion flow. The value of this field could be one of the following:
565
+ - The last segment of a target name
566
+ - "@next", the next target in the promotion sequence"
567
+ """
568
+ pulumi.set(__self__, "id", id)
569
+ pulumi.set(__self__, "schedule", schedule)
570
+ pulumi.set(__self__, "time_zone", time_zone)
571
+ if destination_phase is not None:
572
+ pulumi.set(__self__, "destination_phase", destination_phase)
573
+ if destination_target_id is not None:
574
+ pulumi.set(__self__, "destination_target_id", destination_target_id)
575
+
576
+ @property
577
+ @pulumi.getter
578
+ def id(self) -> builtins.str:
579
+ """
580
+ Required. ID of the rule. This id must be unique in the `Automation` resource to which this rule belongs. The format is `a-z{0,62}`.
581
+ """
582
+ return pulumi.get(self, "id")
583
+
584
+ @property
585
+ @pulumi.getter
586
+ def schedule(self) -> builtins.str:
587
+ """
588
+ Required. Schedule in crontab format. e.g. `0 9 * * 1` for every Monday at 9am.
589
+ """
590
+ return pulumi.get(self, "schedule")
591
+
592
+ @property
593
+ @pulumi.getter(name="timeZone")
594
+ def time_zone(self) -> builtins.str:
595
+ """
596
+ Required. The time zone in IANA format IANA Time Zone Database (e.g. America/New_York).
597
+ """
598
+ return pulumi.get(self, "time_zone")
599
+
600
+ @property
601
+ @pulumi.getter(name="destinationPhase")
602
+ def destination_phase(self) -> Optional[builtins.str]:
603
+ """
604
+ Optional. The starting phase of the rollout created by this rule. Default to the first phase.
605
+
606
+ - - -
607
+ """
608
+ return pulumi.get(self, "destination_phase")
609
+
610
+ @property
611
+ @pulumi.getter(name="destinationTargetId")
612
+ def destination_target_id(self) -> Optional[builtins.str]:
613
+ """
614
+ Optional. The ID of the stage in the pipeline to which this Release is deploying. If unspecified, default it to the next stage in the promotion flow. The value of this field could be one of the following:
615
+ - The last segment of a target name
616
+ - "@next", the next target in the promotion sequence"
617
+ """
618
+ return pulumi.get(self, "destination_target_id")
619
+
620
+
262
621
  @pulumi.output_type
263
622
  class AutomationSelector(dict):
264
623
  def __init__(__self__, *,
@@ -1888,6 +2247,772 @@ class DeliveryPipelineSerialPipelineStageStrategyStandardPredeploy(dict):
1888
2247
  return pulumi.get(self, "actions")
1889
2248
 
1890
2249
 
2250
+ @pulumi.output_type
2251
+ class DeployPolicyRule(dict):
2252
+ @staticmethod
2253
+ def __key_warning(key: str):
2254
+ suggest = None
2255
+ if key == "rolloutRestriction":
2256
+ suggest = "rollout_restriction"
2257
+
2258
+ if suggest:
2259
+ pulumi.log.warn(f"Key '{key}' not found in DeployPolicyRule. Access the value via the '{suggest}' property getter instead.")
2260
+
2261
+ def __getitem__(self, key: str) -> Any:
2262
+ DeployPolicyRule.__key_warning(key)
2263
+ return super().__getitem__(key)
2264
+
2265
+ def get(self, key: str, default = None) -> Any:
2266
+ DeployPolicyRule.__key_warning(key)
2267
+ return super().get(key, default)
2268
+
2269
+ def __init__(__self__, *,
2270
+ rollout_restriction: Optional['outputs.DeployPolicyRuleRolloutRestriction'] = None):
2271
+ """
2272
+ :param 'DeployPolicyRuleRolloutRestrictionArgs' rollout_restriction: Optional. Rollout restrictions.
2273
+ Structure is documented below.
2274
+ """
2275
+ if rollout_restriction is not None:
2276
+ pulumi.set(__self__, "rollout_restriction", rollout_restriction)
2277
+
2278
+ @property
2279
+ @pulumi.getter(name="rolloutRestriction")
2280
+ def rollout_restriction(self) -> Optional['outputs.DeployPolicyRuleRolloutRestriction']:
2281
+ """
2282
+ Optional. Rollout restrictions.
2283
+ Structure is documented below.
2284
+ """
2285
+ return pulumi.get(self, "rollout_restriction")
2286
+
2287
+
2288
+ @pulumi.output_type
2289
+ class DeployPolicyRuleRolloutRestriction(dict):
2290
+ @staticmethod
2291
+ def __key_warning(key: str):
2292
+ suggest = None
2293
+ if key == "timeWindows":
2294
+ suggest = "time_windows"
2295
+
2296
+ if suggest:
2297
+ pulumi.log.warn(f"Key '{key}' not found in DeployPolicyRuleRolloutRestriction. Access the value via the '{suggest}' property getter instead.")
2298
+
2299
+ def __getitem__(self, key: str) -> Any:
2300
+ DeployPolicyRuleRolloutRestriction.__key_warning(key)
2301
+ return super().__getitem__(key)
2302
+
2303
+ def get(self, key: str, default = None) -> Any:
2304
+ DeployPolicyRuleRolloutRestriction.__key_warning(key)
2305
+ return super().get(key, default)
2306
+
2307
+ def __init__(__self__, *,
2308
+ id: builtins.str,
2309
+ actions: Optional[Sequence[builtins.str]] = None,
2310
+ invokers: Optional[Sequence[builtins.str]] = None,
2311
+ time_windows: Optional['outputs.DeployPolicyRuleRolloutRestrictionTimeWindows'] = None):
2312
+ """
2313
+ :param builtins.str id: Required. ID of the rule. This id must be unique in the `DeployPolicy` resource to which this rule belongs. The format is `a-z{0,62}`.
2314
+ :param Sequence[builtins.str] actions: Optional. Rollout actions to be restricted as part of the policy. If left empty, all actions will be restricted.
2315
+ Each value may be one of: `ADVANCE`, `APPROVE`, `CANCEL`, `CREATE`, `IGNORE_JOB`, `RETRY_JOB`, `ROLLBACK`, `TERMINATE_JOBRUN`.
2316
+ :param Sequence[builtins.str] invokers: Optional. What invoked the action. If left empty, all invoker types will be restricted.
2317
+ Each value may be one of: `USER`, `DEPLOY_AUTOMATION`.
2318
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsArgs' time_windows: Required. Time window within which actions are restricted.
2319
+ Structure is documented below.
2320
+ """
2321
+ pulumi.set(__self__, "id", id)
2322
+ if actions is not None:
2323
+ pulumi.set(__self__, "actions", actions)
2324
+ if invokers is not None:
2325
+ pulumi.set(__self__, "invokers", invokers)
2326
+ if time_windows is not None:
2327
+ pulumi.set(__self__, "time_windows", time_windows)
2328
+
2329
+ @property
2330
+ @pulumi.getter
2331
+ def id(self) -> builtins.str:
2332
+ """
2333
+ Required. ID of the rule. This id must be unique in the `DeployPolicy` resource to which this rule belongs. The format is `a-z{0,62}`.
2334
+ """
2335
+ return pulumi.get(self, "id")
2336
+
2337
+ @property
2338
+ @pulumi.getter
2339
+ def actions(self) -> Optional[Sequence[builtins.str]]:
2340
+ """
2341
+ Optional. Rollout actions to be restricted as part of the policy. If left empty, all actions will be restricted.
2342
+ Each value may be one of: `ADVANCE`, `APPROVE`, `CANCEL`, `CREATE`, `IGNORE_JOB`, `RETRY_JOB`, `ROLLBACK`, `TERMINATE_JOBRUN`.
2343
+ """
2344
+ return pulumi.get(self, "actions")
2345
+
2346
+ @property
2347
+ @pulumi.getter
2348
+ def invokers(self) -> Optional[Sequence[builtins.str]]:
2349
+ """
2350
+ Optional. What invoked the action. If left empty, all invoker types will be restricted.
2351
+ Each value may be one of: `USER`, `DEPLOY_AUTOMATION`.
2352
+ """
2353
+ return pulumi.get(self, "invokers")
2354
+
2355
+ @property
2356
+ @pulumi.getter(name="timeWindows")
2357
+ def time_windows(self) -> Optional['outputs.DeployPolicyRuleRolloutRestrictionTimeWindows']:
2358
+ """
2359
+ Required. Time window within which actions are restricted.
2360
+ Structure is documented below.
2361
+ """
2362
+ return pulumi.get(self, "time_windows")
2363
+
2364
+
2365
+ @pulumi.output_type
2366
+ class DeployPolicyRuleRolloutRestrictionTimeWindows(dict):
2367
+ @staticmethod
2368
+ def __key_warning(key: str):
2369
+ suggest = None
2370
+ if key == "timeZone":
2371
+ suggest = "time_zone"
2372
+ elif key == "oneTimeWindows":
2373
+ suggest = "one_time_windows"
2374
+ elif key == "weeklyWindows":
2375
+ suggest = "weekly_windows"
2376
+
2377
+ if suggest:
2378
+ pulumi.log.warn(f"Key '{key}' not found in DeployPolicyRuleRolloutRestrictionTimeWindows. Access the value via the '{suggest}' property getter instead.")
2379
+
2380
+ def __getitem__(self, key: str) -> Any:
2381
+ DeployPolicyRuleRolloutRestrictionTimeWindows.__key_warning(key)
2382
+ return super().__getitem__(key)
2383
+
2384
+ def get(self, key: str, default = None) -> Any:
2385
+ DeployPolicyRuleRolloutRestrictionTimeWindows.__key_warning(key)
2386
+ return super().get(key, default)
2387
+
2388
+ def __init__(__self__, *,
2389
+ time_zone: builtins.str,
2390
+ one_time_windows: Optional[Sequence['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow']] = None,
2391
+ weekly_windows: Optional[Sequence['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow']] = None):
2392
+ """
2393
+ :param builtins.str time_zone: Required. The time zone in IANA format IANA Time Zone Database (e.g. America/New_York).
2394
+ :param Sequence['DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowArgs'] one_time_windows: Optional. One-time windows within which actions are restricted.
2395
+ Structure is documented below.
2396
+ :param Sequence['DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowArgs'] weekly_windows: Optional. Recurring weekly windows within which actions are restricted.
2397
+ Structure is documented below.
2398
+ """
2399
+ pulumi.set(__self__, "time_zone", time_zone)
2400
+ if one_time_windows is not None:
2401
+ pulumi.set(__self__, "one_time_windows", one_time_windows)
2402
+ if weekly_windows is not None:
2403
+ pulumi.set(__self__, "weekly_windows", weekly_windows)
2404
+
2405
+ @property
2406
+ @pulumi.getter(name="timeZone")
2407
+ def time_zone(self) -> builtins.str:
2408
+ """
2409
+ Required. The time zone in IANA format IANA Time Zone Database (e.g. America/New_York).
2410
+ """
2411
+ return pulumi.get(self, "time_zone")
2412
+
2413
+ @property
2414
+ @pulumi.getter(name="oneTimeWindows")
2415
+ def one_time_windows(self) -> Optional[Sequence['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow']]:
2416
+ """
2417
+ Optional. One-time windows within which actions are restricted.
2418
+ Structure is documented below.
2419
+ """
2420
+ return pulumi.get(self, "one_time_windows")
2421
+
2422
+ @property
2423
+ @pulumi.getter(name="weeklyWindows")
2424
+ def weekly_windows(self) -> Optional[Sequence['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow']]:
2425
+ """
2426
+ Optional. Recurring weekly windows within which actions are restricted.
2427
+ Structure is documented below.
2428
+ """
2429
+ return pulumi.get(self, "weekly_windows")
2430
+
2431
+
2432
+ @pulumi.output_type
2433
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow(dict):
2434
+ @staticmethod
2435
+ def __key_warning(key: str):
2436
+ suggest = None
2437
+ if key == "endDate":
2438
+ suggest = "end_date"
2439
+ elif key == "endTime":
2440
+ suggest = "end_time"
2441
+ elif key == "startDate":
2442
+ suggest = "start_date"
2443
+ elif key == "startTime":
2444
+ suggest = "start_time"
2445
+
2446
+ if suggest:
2447
+ pulumi.log.warn(f"Key '{key}' not found in DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow. Access the value via the '{suggest}' property getter instead.")
2448
+
2449
+ def __getitem__(self, key: str) -> Any:
2450
+ DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow.__key_warning(key)
2451
+ return super().__getitem__(key)
2452
+
2453
+ def get(self, key: str, default = None) -> Any:
2454
+ DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindow.__key_warning(key)
2455
+ return super().get(key, default)
2456
+
2457
+ def __init__(__self__, *,
2458
+ end_date: 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndDate',
2459
+ end_time: 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndTime',
2460
+ start_date: 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartDate',
2461
+ start_time: 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartTime'):
2462
+ """
2463
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndDateArgs' end_date: Required. End date.
2464
+ Structure is documented below.
2465
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndTimeArgs' end_time: Required. End time (exclusive). You may use 24:00 for the end of the day.
2466
+ Structure is documented below.
2467
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartDateArgs' start_date: Required. Start date.
2468
+ Structure is documented below.
2469
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartTimeArgs' start_time: Required. Start time (inclusive). Use 00:00 for the beginning of the day.
2470
+ Structure is documented below.
2471
+ """
2472
+ pulumi.set(__self__, "end_date", end_date)
2473
+ pulumi.set(__self__, "end_time", end_time)
2474
+ pulumi.set(__self__, "start_date", start_date)
2475
+ pulumi.set(__self__, "start_time", start_time)
2476
+
2477
+ @property
2478
+ @pulumi.getter(name="endDate")
2479
+ def end_date(self) -> 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndDate':
2480
+ """
2481
+ Required. End date.
2482
+ Structure is documented below.
2483
+ """
2484
+ return pulumi.get(self, "end_date")
2485
+
2486
+ @property
2487
+ @pulumi.getter(name="endTime")
2488
+ def end_time(self) -> 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndTime':
2489
+ """
2490
+ Required. End time (exclusive). You may use 24:00 for the end of the day.
2491
+ Structure is documented below.
2492
+ """
2493
+ return pulumi.get(self, "end_time")
2494
+
2495
+ @property
2496
+ @pulumi.getter(name="startDate")
2497
+ def start_date(self) -> 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartDate':
2498
+ """
2499
+ Required. Start date.
2500
+ Structure is documented below.
2501
+ """
2502
+ return pulumi.get(self, "start_date")
2503
+
2504
+ @property
2505
+ @pulumi.getter(name="startTime")
2506
+ def start_time(self) -> 'outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartTime':
2507
+ """
2508
+ Required. Start time (inclusive). Use 00:00 for the beginning of the day.
2509
+ Structure is documented below.
2510
+ """
2511
+ return pulumi.get(self, "start_time")
2512
+
2513
+
2514
+ @pulumi.output_type
2515
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndDate(dict):
2516
+ def __init__(__self__, *,
2517
+ day: Optional[builtins.int] = None,
2518
+ month: Optional[builtins.int] = None,
2519
+ year: Optional[builtins.int] = None):
2520
+ """
2521
+ :param builtins.int day: Day of a month. Must be from 1 to 31 and valid for the year and month.
2522
+ :param builtins.int month: Month of a year. Must be from 1 to 12.
2523
+ :param builtins.int year: Year of the date. Must be from 1 to 9999.
2524
+ """
2525
+ if day is not None:
2526
+ pulumi.set(__self__, "day", day)
2527
+ if month is not None:
2528
+ pulumi.set(__self__, "month", month)
2529
+ if year is not None:
2530
+ pulumi.set(__self__, "year", year)
2531
+
2532
+ @property
2533
+ @pulumi.getter
2534
+ def day(self) -> Optional[builtins.int]:
2535
+ """
2536
+ Day of a month. Must be from 1 to 31 and valid for the year and month.
2537
+ """
2538
+ return pulumi.get(self, "day")
2539
+
2540
+ @property
2541
+ @pulumi.getter
2542
+ def month(self) -> Optional[builtins.int]:
2543
+ """
2544
+ Month of a year. Must be from 1 to 12.
2545
+ """
2546
+ return pulumi.get(self, "month")
2547
+
2548
+ @property
2549
+ @pulumi.getter
2550
+ def year(self) -> Optional[builtins.int]:
2551
+ """
2552
+ Year of the date. Must be from 1 to 9999.
2553
+ """
2554
+ return pulumi.get(self, "year")
2555
+
2556
+
2557
+ @pulumi.output_type
2558
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowEndTime(dict):
2559
+ def __init__(__self__, *,
2560
+ hours: Optional[builtins.int] = None,
2561
+ minutes: Optional[builtins.int] = None,
2562
+ nanos: Optional[builtins.int] = None,
2563
+ seconds: Optional[builtins.int] = None):
2564
+ """
2565
+ :param builtins.int hours: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2566
+ :param builtins.int minutes: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2567
+ :param builtins.int nanos: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2568
+
2569
+ - - -
2570
+ :param builtins.int seconds: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2571
+ """
2572
+ if hours is not None:
2573
+ pulumi.set(__self__, "hours", hours)
2574
+ if minutes is not None:
2575
+ pulumi.set(__self__, "minutes", minutes)
2576
+ if nanos is not None:
2577
+ pulumi.set(__self__, "nanos", nanos)
2578
+ if seconds is not None:
2579
+ pulumi.set(__self__, "seconds", seconds)
2580
+
2581
+ @property
2582
+ @pulumi.getter
2583
+ def hours(self) -> Optional[builtins.int]:
2584
+ """
2585
+ Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2586
+ """
2587
+ return pulumi.get(self, "hours")
2588
+
2589
+ @property
2590
+ @pulumi.getter
2591
+ def minutes(self) -> Optional[builtins.int]:
2592
+ """
2593
+ Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2594
+ """
2595
+ return pulumi.get(self, "minutes")
2596
+
2597
+ @property
2598
+ @pulumi.getter
2599
+ def nanos(self) -> Optional[builtins.int]:
2600
+ """
2601
+ Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2602
+
2603
+ - - -
2604
+ """
2605
+ return pulumi.get(self, "nanos")
2606
+
2607
+ @property
2608
+ @pulumi.getter
2609
+ def seconds(self) -> Optional[builtins.int]:
2610
+ """
2611
+ Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2612
+ """
2613
+ return pulumi.get(self, "seconds")
2614
+
2615
+
2616
+ @pulumi.output_type
2617
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartDate(dict):
2618
+ def __init__(__self__, *,
2619
+ day: Optional[builtins.int] = None,
2620
+ month: Optional[builtins.int] = None,
2621
+ year: Optional[builtins.int] = None):
2622
+ """
2623
+ :param builtins.int day: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
2624
+ :param builtins.int month: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
2625
+ :param builtins.int year: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
2626
+ """
2627
+ if day is not None:
2628
+ pulumi.set(__self__, "day", day)
2629
+ if month is not None:
2630
+ pulumi.set(__self__, "month", month)
2631
+ if year is not None:
2632
+ pulumi.set(__self__, "year", year)
2633
+
2634
+ @property
2635
+ @pulumi.getter
2636
+ def day(self) -> Optional[builtins.int]:
2637
+ """
2638
+ Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
2639
+ """
2640
+ return pulumi.get(self, "day")
2641
+
2642
+ @property
2643
+ @pulumi.getter
2644
+ def month(self) -> Optional[builtins.int]:
2645
+ """
2646
+ Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
2647
+ """
2648
+ return pulumi.get(self, "month")
2649
+
2650
+ @property
2651
+ @pulumi.getter
2652
+ def year(self) -> Optional[builtins.int]:
2653
+ """
2654
+ Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
2655
+ """
2656
+ return pulumi.get(self, "year")
2657
+
2658
+
2659
+ @pulumi.output_type
2660
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsOneTimeWindowStartTime(dict):
2661
+ def __init__(__self__, *,
2662
+ hours: Optional[builtins.int] = None,
2663
+ minutes: Optional[builtins.int] = None,
2664
+ nanos: Optional[builtins.int] = None,
2665
+ seconds: Optional[builtins.int] = None):
2666
+ """
2667
+ :param builtins.int hours: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2668
+ :param builtins.int minutes: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2669
+ :param builtins.int nanos: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2670
+ :param builtins.int seconds: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2671
+ """
2672
+ if hours is not None:
2673
+ pulumi.set(__self__, "hours", hours)
2674
+ if minutes is not None:
2675
+ pulumi.set(__self__, "minutes", minutes)
2676
+ if nanos is not None:
2677
+ pulumi.set(__self__, "nanos", nanos)
2678
+ if seconds is not None:
2679
+ pulumi.set(__self__, "seconds", seconds)
2680
+
2681
+ @property
2682
+ @pulumi.getter
2683
+ def hours(self) -> Optional[builtins.int]:
2684
+ """
2685
+ Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2686
+ """
2687
+ return pulumi.get(self, "hours")
2688
+
2689
+ @property
2690
+ @pulumi.getter
2691
+ def minutes(self) -> Optional[builtins.int]:
2692
+ """
2693
+ Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2694
+ """
2695
+ return pulumi.get(self, "minutes")
2696
+
2697
+ @property
2698
+ @pulumi.getter
2699
+ def nanos(self) -> Optional[builtins.int]:
2700
+ """
2701
+ Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2702
+ """
2703
+ return pulumi.get(self, "nanos")
2704
+
2705
+ @property
2706
+ @pulumi.getter
2707
+ def seconds(self) -> Optional[builtins.int]:
2708
+ """
2709
+ Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2710
+ """
2711
+ return pulumi.get(self, "seconds")
2712
+
2713
+
2714
+ @pulumi.output_type
2715
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow(dict):
2716
+ @staticmethod
2717
+ def __key_warning(key: str):
2718
+ suggest = None
2719
+ if key == "daysOfWeeks":
2720
+ suggest = "days_of_weeks"
2721
+ elif key == "endTime":
2722
+ suggest = "end_time"
2723
+ elif key == "startTime":
2724
+ suggest = "start_time"
2725
+
2726
+ if suggest:
2727
+ pulumi.log.warn(f"Key '{key}' not found in DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow. Access the value via the '{suggest}' property getter instead.")
2728
+
2729
+ def __getitem__(self, key: str) -> Any:
2730
+ DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow.__key_warning(key)
2731
+ return super().__getitem__(key)
2732
+
2733
+ def get(self, key: str, default = None) -> Any:
2734
+ DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindow.__key_warning(key)
2735
+ return super().get(key, default)
2736
+
2737
+ def __init__(__self__, *,
2738
+ days_of_weeks: Optional[Sequence[builtins.str]] = None,
2739
+ end_time: Optional['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowEndTime'] = None,
2740
+ start_time: Optional['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowStartTime'] = None):
2741
+ """
2742
+ :param Sequence[builtins.str] days_of_weeks: Optional. Days of week. If left empty, all days of the week will be included.
2743
+ Each value may be one of: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
2744
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowEndTimeArgs' end_time: Optional. End time (exclusive). Use 24:00 to indicate midnight. If you specify endTime you must also specify startTime. If left empty, this will block for the entire day for the days specified in daysOfWeek.
2745
+ Structure is documented below.
2746
+ :param 'DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowStartTimeArgs' start_time: Optional. Start time (inclusive). Use 00:00 for the beginning of the day. If you specify startTime you must also specify endTime. If left empty, this will block for the entire day for the days specified in daysOfWeek.
2747
+ Structure is documented below.
2748
+ """
2749
+ if days_of_weeks is not None:
2750
+ pulumi.set(__self__, "days_of_weeks", days_of_weeks)
2751
+ if end_time is not None:
2752
+ pulumi.set(__self__, "end_time", end_time)
2753
+ if start_time is not None:
2754
+ pulumi.set(__self__, "start_time", start_time)
2755
+
2756
+ @property
2757
+ @pulumi.getter(name="daysOfWeeks")
2758
+ def days_of_weeks(self) -> Optional[Sequence[builtins.str]]:
2759
+ """
2760
+ Optional. Days of week. If left empty, all days of the week will be included.
2761
+ Each value may be one of: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`.
2762
+ """
2763
+ return pulumi.get(self, "days_of_weeks")
2764
+
2765
+ @property
2766
+ @pulumi.getter(name="endTime")
2767
+ def end_time(self) -> Optional['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowEndTime']:
2768
+ """
2769
+ Optional. End time (exclusive). Use 24:00 to indicate midnight. If you specify endTime you must also specify startTime. If left empty, this will block for the entire day for the days specified in daysOfWeek.
2770
+ Structure is documented below.
2771
+ """
2772
+ return pulumi.get(self, "end_time")
2773
+
2774
+ @property
2775
+ @pulumi.getter(name="startTime")
2776
+ def start_time(self) -> Optional['outputs.DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowStartTime']:
2777
+ """
2778
+ Optional. Start time (inclusive). Use 00:00 for the beginning of the day. If you specify startTime you must also specify endTime. If left empty, this will block for the entire day for the days specified in daysOfWeek.
2779
+ Structure is documented below.
2780
+ """
2781
+ return pulumi.get(self, "start_time")
2782
+
2783
+
2784
+ @pulumi.output_type
2785
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowEndTime(dict):
2786
+ def __init__(__self__, *,
2787
+ hours: Optional[builtins.int] = None,
2788
+ minutes: Optional[builtins.int] = None,
2789
+ nanos: Optional[builtins.int] = None,
2790
+ seconds: Optional[builtins.int] = None):
2791
+ """
2792
+ :param builtins.int hours: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2793
+ :param builtins.int minutes: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2794
+ :param builtins.int nanos: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2795
+
2796
+ - - -
2797
+ :param builtins.int seconds: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2798
+ """
2799
+ if hours is not None:
2800
+ pulumi.set(__self__, "hours", hours)
2801
+ if minutes is not None:
2802
+ pulumi.set(__self__, "minutes", minutes)
2803
+ if nanos is not None:
2804
+ pulumi.set(__self__, "nanos", nanos)
2805
+ if seconds is not None:
2806
+ pulumi.set(__self__, "seconds", seconds)
2807
+
2808
+ @property
2809
+ @pulumi.getter
2810
+ def hours(self) -> Optional[builtins.int]:
2811
+ """
2812
+ Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2813
+ """
2814
+ return pulumi.get(self, "hours")
2815
+
2816
+ @property
2817
+ @pulumi.getter
2818
+ def minutes(self) -> Optional[builtins.int]:
2819
+ """
2820
+ Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2821
+ """
2822
+ return pulumi.get(self, "minutes")
2823
+
2824
+ @property
2825
+ @pulumi.getter
2826
+ def nanos(self) -> Optional[builtins.int]:
2827
+ """
2828
+ Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2829
+
2830
+ - - -
2831
+ """
2832
+ return pulumi.get(self, "nanos")
2833
+
2834
+ @property
2835
+ @pulumi.getter
2836
+ def seconds(self) -> Optional[builtins.int]:
2837
+ """
2838
+ Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2839
+ """
2840
+ return pulumi.get(self, "seconds")
2841
+
2842
+
2843
+ @pulumi.output_type
2844
+ class DeployPolicyRuleRolloutRestrictionTimeWindowsWeeklyWindowStartTime(dict):
2845
+ def __init__(__self__, *,
2846
+ hours: Optional[builtins.int] = None,
2847
+ minutes: Optional[builtins.int] = None,
2848
+ nanos: Optional[builtins.int] = None,
2849
+ seconds: Optional[builtins.int] = None):
2850
+ """
2851
+ :param builtins.int hours: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2852
+ :param builtins.int minutes: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2853
+ :param builtins.int nanos: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2854
+ :param builtins.int seconds: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2855
+ """
2856
+ if hours is not None:
2857
+ pulumi.set(__self__, "hours", hours)
2858
+ if minutes is not None:
2859
+ pulumi.set(__self__, "minutes", minutes)
2860
+ if nanos is not None:
2861
+ pulumi.set(__self__, "nanos", nanos)
2862
+ if seconds is not None:
2863
+ pulumi.set(__self__, "seconds", seconds)
2864
+
2865
+ @property
2866
+ @pulumi.getter
2867
+ def hours(self) -> Optional[builtins.int]:
2868
+ """
2869
+ Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
2870
+ """
2871
+ return pulumi.get(self, "hours")
2872
+
2873
+ @property
2874
+ @pulumi.getter
2875
+ def minutes(self) -> Optional[builtins.int]:
2876
+ """
2877
+ Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
2878
+ """
2879
+ return pulumi.get(self, "minutes")
2880
+
2881
+ @property
2882
+ @pulumi.getter
2883
+ def nanos(self) -> Optional[builtins.int]:
2884
+ """
2885
+ Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
2886
+ """
2887
+ return pulumi.get(self, "nanos")
2888
+
2889
+ @property
2890
+ @pulumi.getter
2891
+ def seconds(self) -> Optional[builtins.int]:
2892
+ """
2893
+ Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
2894
+ """
2895
+ return pulumi.get(self, "seconds")
2896
+
2897
+
2898
+ @pulumi.output_type
2899
+ class DeployPolicySelector(dict):
2900
+ @staticmethod
2901
+ def __key_warning(key: str):
2902
+ suggest = None
2903
+ if key == "deliveryPipeline":
2904
+ suggest = "delivery_pipeline"
2905
+
2906
+ if suggest:
2907
+ pulumi.log.warn(f"Key '{key}' not found in DeployPolicySelector. Access the value via the '{suggest}' property getter instead.")
2908
+
2909
+ def __getitem__(self, key: str) -> Any:
2910
+ DeployPolicySelector.__key_warning(key)
2911
+ return super().__getitem__(key)
2912
+
2913
+ def get(self, key: str, default = None) -> Any:
2914
+ DeployPolicySelector.__key_warning(key)
2915
+ return super().get(key, default)
2916
+
2917
+ def __init__(__self__, *,
2918
+ delivery_pipeline: Optional['outputs.DeployPolicySelectorDeliveryPipeline'] = None,
2919
+ target: Optional['outputs.DeployPolicySelectorTarget'] = None):
2920
+ """
2921
+ :param 'DeployPolicySelectorDeliveryPipelineArgs' delivery_pipeline: Contains attributes about a delivery pipeline.
2922
+ Structure is documented below.
2923
+ :param 'DeployPolicySelectorTargetArgs' target: Contains attributes about a target.
2924
+ Structure is documented below.
2925
+ """
2926
+ if delivery_pipeline is not None:
2927
+ pulumi.set(__self__, "delivery_pipeline", delivery_pipeline)
2928
+ if target is not None:
2929
+ pulumi.set(__self__, "target", target)
2930
+
2931
+ @property
2932
+ @pulumi.getter(name="deliveryPipeline")
2933
+ def delivery_pipeline(self) -> Optional['outputs.DeployPolicySelectorDeliveryPipeline']:
2934
+ """
2935
+ Contains attributes about a delivery pipeline.
2936
+ Structure is documented below.
2937
+ """
2938
+ return pulumi.get(self, "delivery_pipeline")
2939
+
2940
+ @property
2941
+ @pulumi.getter
2942
+ def target(self) -> Optional['outputs.DeployPolicySelectorTarget']:
2943
+ """
2944
+ Contains attributes about a target.
2945
+ Structure is documented below.
2946
+ """
2947
+ return pulumi.get(self, "target")
2948
+
2949
+
2950
+ @pulumi.output_type
2951
+ class DeployPolicySelectorDeliveryPipeline(dict):
2952
+ def __init__(__self__, *,
2953
+ id: Optional[builtins.str] = None,
2954
+ labels: Optional[Mapping[str, builtins.str]] = None):
2955
+ """
2956
+ :param builtins.str id: Optional. ID of the DeliveryPipeline. The value of this field could be one of the following:
2957
+ - The last segment of a pipeline name
2958
+ - "*", all delivery pipelines in a location
2959
+ :param Mapping[str, builtins.str] labels: DeliveryPipeline labels.
2960
+ """
2961
+ if id is not None:
2962
+ pulumi.set(__self__, "id", id)
2963
+ if labels is not None:
2964
+ pulumi.set(__self__, "labels", labels)
2965
+
2966
+ @property
2967
+ @pulumi.getter
2968
+ def id(self) -> Optional[builtins.str]:
2969
+ """
2970
+ Optional. ID of the DeliveryPipeline. The value of this field could be one of the following:
2971
+ - The last segment of a pipeline name
2972
+ - "*", all delivery pipelines in a location
2973
+ """
2974
+ return pulumi.get(self, "id")
2975
+
2976
+ @property
2977
+ @pulumi.getter
2978
+ def labels(self) -> Optional[Mapping[str, builtins.str]]:
2979
+ """
2980
+ DeliveryPipeline labels.
2981
+ """
2982
+ return pulumi.get(self, "labels")
2983
+
2984
+
2985
+ @pulumi.output_type
2986
+ class DeployPolicySelectorTarget(dict):
2987
+ def __init__(__self__, *,
2988
+ id: Optional[builtins.str] = None,
2989
+ labels: Optional[Mapping[str, builtins.str]] = None):
2990
+ """
2991
+ :param builtins.str id: ID of the `Target`. The value of this field could be one of the following: * The last segment of a target name. It only needs the ID to determine which target is being referred to * "*", all targets in a location.
2992
+ :param Mapping[str, builtins.str] labels: Target labels.
2993
+ """
2994
+ if id is not None:
2995
+ pulumi.set(__self__, "id", id)
2996
+ if labels is not None:
2997
+ pulumi.set(__self__, "labels", labels)
2998
+
2999
+ @property
3000
+ @pulumi.getter
3001
+ def id(self) -> Optional[builtins.str]:
3002
+ """
3003
+ ID of the `Target`. The value of this field could be one of the following: * The last segment of a target name. It only needs the ID to determine which target is being referred to * "*", all targets in a location.
3004
+ """
3005
+ return pulumi.get(self, "id")
3006
+
3007
+ @property
3008
+ @pulumi.getter
3009
+ def labels(self) -> Optional[Mapping[str, builtins.str]]:
3010
+ """
3011
+ Target labels.
3012
+ """
3013
+ return pulumi.get(self, "labels")
3014
+
3015
+
1891
3016
  @pulumi.output_type
1892
3017
  class TargetAnthosCluster(dict):
1893
3018
  def __init__(__self__, *,