pulumi-gcp 7.28.0a1718995220__py3-none-any.whl → 7.29.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 (172) hide show
  1. pulumi_gcp/__init__.py +8 -0
  2. pulumi_gcp/_utilities.py +35 -0
  3. pulumi_gcp/activedirectory/domain.py +14 -14
  4. pulumi_gcp/activedirectory/domain_trust.py +14 -14
  5. pulumi_gcp/alloydb/backup.py +8 -8
  6. pulumi_gcp/alloydb/cluster.py +11 -17
  7. pulumi_gcp/alloydb/instance.py +8 -8
  8. pulumi_gcp/alloydb/user.py +8 -8
  9. pulumi_gcp/apigee/addons_config.py +4 -4
  10. pulumi_gcp/apigee/endpoint_attachment.py +2 -2
  11. pulumi_gcp/apigee/env_group.py +2 -2
  12. pulumi_gcp/apigee/environment.py +2 -2
  13. pulumi_gcp/apigee/instance.py +8 -8
  14. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +10 -10
  15. pulumi_gcp/apigee/nat_address.py +2 -2
  16. pulumi_gcp/apigee/organization.py +6 -6
  17. pulumi_gcp/apigee/sync_authorization.py +4 -4
  18. pulumi_gcp/apigee/target_server.py +10 -10
  19. pulumi_gcp/apphub/service.py +20 -20
  20. pulumi_gcp/apphub/service_project_attachment.py +8 -8
  21. pulumi_gcp/applicationintegration/auth_config.py +2 -2
  22. pulumi_gcp/applicationintegration/client.py +6 -18
  23. pulumi_gcp/artifactregistry/__init__.py +1 -0
  24. pulumi_gcp/artifactregistry/_inputs.py +4 -4
  25. pulumi_gcp/artifactregistry/get_docker_image.py +244 -0
  26. pulumi_gcp/artifactregistry/outputs.py +6 -6
  27. pulumi_gcp/artifactregistry/repository.py +10 -10
  28. pulumi_gcp/backupdisasterrecovery/management_server.py +2 -2
  29. pulumi_gcp/bigquery/_inputs.py +2 -6
  30. pulumi_gcp/bigquery/data_transfer_config.py +4 -4
  31. pulumi_gcp/bigquery/dataset.py +75 -0
  32. pulumi_gcp/bigquery/get_dataset.py +11 -1
  33. pulumi_gcp/bigquery/job.py +6 -6
  34. pulumi_gcp/bigquery/outputs.py +2 -6
  35. pulumi_gcp/bigtable/_inputs.py +1 -3
  36. pulumi_gcp/bigtable/instance.py +3 -9
  37. pulumi_gcp/bigtable/outputs.py +1 -3
  38. pulumi_gcp/billing/_inputs.py +22 -0
  39. pulumi_gcp/billing/budget.py +50 -0
  40. pulumi_gcp/billing/outputs.py +20 -0
  41. pulumi_gcp/certificateauthority/authority.py +2 -2
  42. pulumi_gcp/certificateauthority/certificate.py +4 -4
  43. pulumi_gcp/certificatemanager/_inputs.py +2 -6
  44. pulumi_gcp/certificatemanager/certificate.py +4 -4
  45. pulumi_gcp/certificatemanager/certificate_issuance_config.py +2 -2
  46. pulumi_gcp/certificatemanager/outputs.py +2 -6
  47. pulumi_gcp/cloudbuild/bitbucket_server_config.py +6 -6
  48. pulumi_gcp/cloudbuild/trigger.py +2 -2
  49. pulumi_gcp/cloudbuild/worker_pool.py +6 -6
  50. pulumi_gcp/cloudbuildv2/connection.py +2 -2
  51. pulumi_gcp/cloudbuildv2/repository.py +2 -2
  52. pulumi_gcp/cloudfunctionsv2/function.py +28 -28
  53. pulumi_gcp/cloudids/endpoint.py +2 -2
  54. pulumi_gcp/cloudrun/_inputs.py +3 -9
  55. pulumi_gcp/cloudrun/outputs.py +3 -9
  56. pulumi_gcp/cloudrunv2/get_job.py +21 -1
  57. pulumi_gcp/cloudrunv2/job.py +163 -19
  58. pulumi_gcp/cloudrunv2/service.py +8 -8
  59. pulumi_gcp/compute/_inputs.py +83 -0
  60. pulumi_gcp/compute/disk.py +3 -9
  61. pulumi_gcp/compute/firewall.py +3 -9
  62. pulumi_gcp/compute/forwarding_rule.py +22 -22
  63. pulumi_gcp/compute/outputs.py +166 -1
  64. pulumi_gcp/compute/packet_mirroring.py +2 -2
  65. pulumi_gcp/compute/project_cloud_armor_tier.py +2 -2
  66. pulumi_gcp/compute/region_disk.py +3 -9
  67. pulumi_gcp/compute/region_security_policy_rule.py +2 -2
  68. pulumi_gcp/compute/route.py +2 -2
  69. pulumi_gcp/compute/subnetwork.py +2 -6
  70. pulumi_gcp/compute/target_instance.py +2 -2
  71. pulumi_gcp/compute/vpn_gateway.py +2 -2
  72. pulumi_gcp/compute/vpn_tunnel.py +2 -2
  73. pulumi_gcp/container/_inputs.py +2 -6
  74. pulumi_gcp/container/outputs.py +2 -6
  75. pulumi_gcp/databasemigrationservice/connection_profile.py +16 -16
  76. pulumi_gcp/datacatalog/policy_tag.py +2 -2
  77. pulumi_gcp/datafusion/instance.py +4 -8
  78. pulumi_gcp/dataplex/asset.py +2 -2
  79. pulumi_gcp/dataplex/datascan.py +2 -2
  80. pulumi_gcp/dataproc/_inputs.py +100 -0
  81. pulumi_gcp/dataproc/metastore_service.py +172 -0
  82. pulumi_gcp/dataproc/outputs.py +192 -1
  83. pulumi_gcp/dataproc/workflow_template.py +3 -9
  84. pulumi_gcp/datastore/data_store_index.py +2 -2
  85. pulumi_gcp/datastream/stream.py +6 -6
  86. pulumi_gcp/diagflow/entity_type.py +2 -2
  87. pulumi_gcp/diagflow/fulfillment.py +2 -2
  88. pulumi_gcp/diagflow/intent.py +4 -4
  89. pulumi_gcp/edgecontainer/node_pool.py +2 -2
  90. pulumi_gcp/edgecontainer/vpn_connection.py +2 -2
  91. pulumi_gcp/eventarc/channel.py +2 -2
  92. pulumi_gcp/eventarc/google_channel_config.py +2 -2
  93. pulumi_gcp/filestore/instance.py +3 -9
  94. pulumi_gcp/firebase/app_check_app_attest_config.py +8 -8
  95. pulumi_gcp/firebase/app_check_debug_token.py +4 -4
  96. pulumi_gcp/firebase/app_check_device_check_config.py +4 -4
  97. pulumi_gcp/firebase/app_check_play_integrity_config.py +8 -8
  98. pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +4 -4
  99. pulumi_gcp/firebase/app_check_recaptcha_v3_config.py +4 -4
  100. pulumi_gcp/firebase/app_check_service_config.py +6 -6
  101. pulumi_gcp/firebase/database_instance.py +2 -2
  102. pulumi_gcp/firestore/database.py +4 -4
  103. pulumi_gcp/firestore/document.py +12 -12
  104. pulumi_gcp/folder/access_approval_settings.py +2 -2
  105. pulumi_gcp/gkehub/_inputs.py +4 -8
  106. pulumi_gcp/gkehub/membership.py +3 -9
  107. pulumi_gcp/gkehub/membership_binding.py +4 -4
  108. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  109. pulumi_gcp/gkehub/namespace.py +2 -2
  110. pulumi_gcp/gkehub/outputs.py +4 -8
  111. pulumi_gcp/gkehub/scope_rbac_role_binding.py +2 -2
  112. pulumi_gcp/healthcare/fhir_store.py +3 -9
  113. pulumi_gcp/healthcare/hl7_store.py +3 -9
  114. pulumi_gcp/integrationconnectors/connection.py +2 -2
  115. pulumi_gcp/integrationconnectors/managed_zone.py +6 -6
  116. pulumi_gcp/kms/_inputs.py +1 -3
  117. pulumi_gcp/kms/autokey_config.py +16 -16
  118. pulumi_gcp/kms/key_handle.py +22 -22
  119. pulumi_gcp/kms/outputs.py +1 -3
  120. pulumi_gcp/logging/folder_settings.py +2 -2
  121. pulumi_gcp/logging/linked_dataset.py +2 -2
  122. pulumi_gcp/logging/organization_settings.py +2 -2
  123. pulumi_gcp/logging/project_bucket_config.py +2 -2
  124. pulumi_gcp/looker/instance.py +2 -2
  125. pulumi_gcp/netapp/volume_replication.py +2 -2
  126. pulumi_gcp/netapp/volume_snapshot.py +2 -2
  127. pulumi_gcp/networkconnectivity/internal_range.py +2 -2
  128. pulumi_gcp/networksecurity/gateway_security_policy.py +4 -4
  129. pulumi_gcp/networksecurity/tls_inspection_policy.py +4 -4
  130. pulumi_gcp/networkservices/gateway.py +6 -6
  131. pulumi_gcp/organizations/access_approval_settings.py +2 -2
  132. pulumi_gcp/parallelstore/instance.py +2 -2
  133. pulumi_gcp/projects/access_approval_settings.py +5 -11
  134. pulumi_gcp/pubsub/_inputs.py +40 -0
  135. pulumi_gcp/pubsub/outputs.py +66 -0
  136. pulumi_gcp/pubsub/schema.py +2 -2
  137. pulumi_gcp/pubsub/subscription.py +174 -8
  138. pulumi_gcp/pubsub/topic.py +2 -2
  139. pulumi_gcp/pulumi-plugin.json +1 -1
  140. pulumi_gcp/redis/cluster.py +4 -4
  141. pulumi_gcp/redis/get_instance.py +11 -1
  142. pulumi_gcp/redis/instance.py +49 -2
  143. pulumi_gcp/secretmanager/secret.py +2 -2
  144. pulumi_gcp/securesourcemanager/instance.py +6 -6
  145. pulumi_gcp/securitycenter/instance_iam_binding.py +2 -2
  146. pulumi_gcp/securitycenter/instance_iam_member.py +2 -2
  147. pulumi_gcp/securitycenter/instance_iam_policy.py +2 -2
  148. pulumi_gcp/servicenetworking/__init__.py +1 -0
  149. pulumi_gcp/servicenetworking/vpc_service_controls.py +511 -0
  150. pulumi_gcp/sql/_inputs.py +1 -3
  151. pulumi_gcp/sql/database_instance.py +2 -2
  152. pulumi_gcp/sql/outputs.py +1 -3
  153. pulumi_gcp/sql/user.py +21 -7
  154. pulumi_gcp/storage/get_project_service_account.py +2 -2
  155. pulumi_gcp/storage/insights_report_config.py +2 -2
  156. pulumi_gcp/storage/notification.py +2 -2
  157. pulumi_gcp/storage/transfer_agent_pool.py +2 -2
  158. pulumi_gcp/storage/transfer_job.py +4 -4
  159. pulumi_gcp/tpu/v2_vm.py +4 -4
  160. pulumi_gcp/vertex/_inputs.py +1 -3
  161. pulumi_gcp/vertex/ai_endpoint.py +2 -2
  162. pulumi_gcp/vertex/ai_feature_online_store.py +3 -9
  163. pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
  164. pulumi_gcp/vertex/ai_tensorboard.py +2 -2
  165. pulumi_gcp/vertex/outputs.py +1 -3
  166. pulumi_gcp/vmwareengine/external_address.py +2 -2
  167. pulumi_gcp/vmwareengine/network.py +4 -4
  168. pulumi_gcp/vpcaccess/connector.py +2 -8
  169. {pulumi_gcp-7.28.0a1718995220.dist-info → pulumi_gcp-7.29.0.dist-info}/METADATA +1 -1
  170. {pulumi_gcp-7.28.0a1718995220.dist-info → pulumi_gcp-7.29.0.dist-info}/RECORD +172 -170
  171. {pulumi_gcp-7.28.0a1718995220.dist-info → pulumi_gcp-7.29.0.dist-info}/WHEEL +1 -1
  172. {pulumi_gcp-7.28.0a1718995220.dist-info → pulumi_gcp-7.29.0.dist-info}/top_level.txt +0 -0
@@ -22,7 +22,7 @@ class GetJobResult:
22
22
  """
23
23
  A collection of values returned by getJob.
24
24
  """
25
- def __init__(__self__, annotations=None, binary_authorizations=None, client=None, client_version=None, conditions=None, create_time=None, creator=None, delete_time=None, effective_annotations=None, effective_labels=None, etag=None, execution_count=None, expire_time=None, generation=None, id=None, labels=None, last_modifier=None, latest_created_executions=None, launch_stage=None, location=None, name=None, observed_generation=None, project=None, pulumi_labels=None, reconciling=None, templates=None, terminal_conditions=None, uid=None, update_time=None):
25
+ def __init__(__self__, annotations=None, binary_authorizations=None, client=None, client_version=None, conditions=None, create_time=None, creator=None, delete_time=None, effective_annotations=None, effective_labels=None, etag=None, execution_count=None, expire_time=None, generation=None, id=None, labels=None, last_modifier=None, latest_created_executions=None, launch_stage=None, location=None, name=None, observed_generation=None, project=None, pulumi_labels=None, reconciling=None, run_execution_token=None, start_execution_token=None, templates=None, terminal_conditions=None, uid=None, update_time=None):
26
26
  if annotations and not isinstance(annotations, dict):
27
27
  raise TypeError("Expected argument 'annotations' to be a dict")
28
28
  pulumi.set(__self__, "annotations", annotations)
@@ -98,6 +98,12 @@ class GetJobResult:
98
98
  if reconciling and not isinstance(reconciling, bool):
99
99
  raise TypeError("Expected argument 'reconciling' to be a bool")
100
100
  pulumi.set(__self__, "reconciling", reconciling)
101
+ if run_execution_token and not isinstance(run_execution_token, str):
102
+ raise TypeError("Expected argument 'run_execution_token' to be a str")
103
+ pulumi.set(__self__, "run_execution_token", run_execution_token)
104
+ if start_execution_token and not isinstance(start_execution_token, str):
105
+ raise TypeError("Expected argument 'start_execution_token' to be a str")
106
+ pulumi.set(__self__, "start_execution_token", start_execution_token)
101
107
  if templates and not isinstance(templates, list):
102
108
  raise TypeError("Expected argument 'templates' to be a list")
103
109
  pulumi.set(__self__, "templates", templates)
@@ -239,6 +245,16 @@ class GetJobResult:
239
245
  def reconciling(self) -> bool:
240
246
  return pulumi.get(self, "reconciling")
241
247
 
248
+ @property
249
+ @pulumi.getter(name="runExecutionToken")
250
+ def run_execution_token(self) -> str:
251
+ return pulumi.get(self, "run_execution_token")
252
+
253
+ @property
254
+ @pulumi.getter(name="startExecutionToken")
255
+ def start_execution_token(self) -> str:
256
+ return pulumi.get(self, "start_execution_token")
257
+
242
258
  @property
243
259
  @pulumi.getter
244
260
  def templates(self) -> Sequence['outputs.GetJobTemplateResult']:
@@ -291,6 +307,8 @@ class AwaitableGetJobResult(GetJobResult):
291
307
  project=self.project,
292
308
  pulumi_labels=self.pulumi_labels,
293
309
  reconciling=self.reconciling,
310
+ run_execution_token=self.run_execution_token,
311
+ start_execution_token=self.start_execution_token,
294
312
  templates=self.templates,
295
313
  terminal_conditions=self.terminal_conditions,
296
314
  uid=self.uid,
@@ -357,6 +375,8 @@ def get_job(location: Optional[str] = None,
357
375
  project=pulumi.get(__ret__, 'project'),
358
376
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
359
377
  reconciling=pulumi.get(__ret__, 'reconciling'),
378
+ run_execution_token=pulumi.get(__ret__, 'run_execution_token'),
379
+ start_execution_token=pulumi.get(__ret__, 'start_execution_token'),
360
380
  templates=pulumi.get(__ret__, 'templates'),
361
381
  terminal_conditions=pulumi.get(__ret__, 'terminal_conditions'),
362
382
  uid=pulumi.get(__ret__, 'uid'),
@@ -25,7 +25,9 @@ class JobArgs:
25
25
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
26
26
  launch_stage: Optional[pulumi.Input[str]] = None,
27
27
  name: Optional[pulumi.Input[str]] = None,
28
- project: Optional[pulumi.Input[str]] = None):
28
+ project: Optional[pulumi.Input[str]] = None,
29
+ run_execution_token: Optional[pulumi.Input[str]] = None,
30
+ start_execution_token: Optional[pulumi.Input[str]] = None):
29
31
  """
30
32
  The set of arguments for constructing a Job resource.
31
33
  :param pulumi.Input[str] location: The location of the cloud run job
@@ -56,6 +58,10 @@ class JobArgs:
56
58
  input, but only BETA and GA-level features are used, this field will be BETA on output. Possible values:
57
59
  ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
58
60
  :param pulumi.Input[str] name: Name of the Job.
61
+ :param pulumi.Input[str] run_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
62
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
63
+ :param pulumi.Input[str] start_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
64
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
59
65
  """
60
66
  pulumi.set(__self__, "location", location)
61
67
  pulumi.set(__self__, "template", template)
@@ -75,6 +81,10 @@ class JobArgs:
75
81
  pulumi.set(__self__, "name", name)
76
82
  if project is not None:
77
83
  pulumi.set(__self__, "project", project)
84
+ if run_execution_token is not None:
85
+ pulumi.set(__self__, "run_execution_token", run_execution_token)
86
+ if start_execution_token is not None:
87
+ pulumi.set(__self__, "start_execution_token", start_execution_token)
78
88
 
79
89
  @property
80
90
  @pulumi.getter
@@ -212,6 +222,32 @@ class JobArgs:
212
222
  def project(self, value: Optional[pulumi.Input[str]]):
213
223
  pulumi.set(self, "project", value)
214
224
 
225
+ @property
226
+ @pulumi.getter(name="runExecutionToken")
227
+ def run_execution_token(self) -> Optional[pulumi.Input[str]]:
228
+ """
229
+ A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
230
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
231
+ """
232
+ return pulumi.get(self, "run_execution_token")
233
+
234
+ @run_execution_token.setter
235
+ def run_execution_token(self, value: Optional[pulumi.Input[str]]):
236
+ pulumi.set(self, "run_execution_token", value)
237
+
238
+ @property
239
+ @pulumi.getter(name="startExecutionToken")
240
+ def start_execution_token(self) -> Optional[pulumi.Input[str]]:
241
+ """
242
+ A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
243
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
244
+ """
245
+ return pulumi.get(self, "start_execution_token")
246
+
247
+ @start_execution_token.setter
248
+ def start_execution_token(self, value: Optional[pulumi.Input[str]]):
249
+ pulumi.set(self, "start_execution_token", value)
250
+
215
251
 
216
252
  @pulumi.input_type
217
253
  class _JobState:
@@ -240,6 +276,8 @@ class _JobState:
240
276
  project: Optional[pulumi.Input[str]] = None,
241
277
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
242
278
  reconciling: Optional[pulumi.Input[bool]] = None,
279
+ run_execution_token: Optional[pulumi.Input[str]] = None,
280
+ start_execution_token: Optional[pulumi.Input[str]] = None,
243
281
  template: Optional[pulumi.Input['JobTemplateArgs']] = None,
244
282
  terminal_conditions: Optional[pulumi.Input[Sequence[pulumi.Input['JobTerminalConditionArgs']]]] = None,
245
283
  uid: Optional[pulumi.Input[str]] = None,
@@ -294,6 +332,10 @@ class _JobState:
294
332
  When a new Job is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Job to the desired state. This process is called reconciliation. While reconciliation is in process, observedGeneration and latest_succeeded_execution, will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the state matches the Job, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state.
295
333
  If reconciliation succeeded, the following fields will match: observedGeneration and generation, latest_succeeded_execution and latestCreatedExecution.
296
334
  If reconciliation failed, observedGeneration and latest_succeeded_execution will have the state of the last succeeded execution or empty for newly created Job. Additional information on the failure can be found in terminalCondition and conditions
335
+ :param pulumi.Input[str] run_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
336
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
337
+ :param pulumi.Input[str] start_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
338
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
297
339
  :param pulumi.Input['JobTemplateArgs'] template: The template used to create executions for this Job.
298
340
  Structure is documented below.
299
341
  :param pulumi.Input[Sequence[pulumi.Input['JobTerminalConditionArgs']]] terminal_conditions: The Condition of this Job, containing its readiness status, and detailed error information in case it did not reach the desired state
@@ -349,6 +391,10 @@ class _JobState:
349
391
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
350
392
  if reconciling is not None:
351
393
  pulumi.set(__self__, "reconciling", reconciling)
394
+ if run_execution_token is not None:
395
+ pulumi.set(__self__, "run_execution_token", run_execution_token)
396
+ if start_execution_token is not None:
397
+ pulumi.set(__self__, "start_execution_token", start_execution_token)
352
398
  if template is not None:
353
399
  pulumi.set(__self__, "template", template)
354
400
  if terminal_conditions is not None:
@@ -666,6 +712,32 @@ class _JobState:
666
712
  def reconciling(self, value: Optional[pulumi.Input[bool]]):
667
713
  pulumi.set(self, "reconciling", value)
668
714
 
715
+ @property
716
+ @pulumi.getter(name="runExecutionToken")
717
+ def run_execution_token(self) -> Optional[pulumi.Input[str]]:
718
+ """
719
+ A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
720
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
721
+ """
722
+ return pulumi.get(self, "run_execution_token")
723
+
724
+ @run_execution_token.setter
725
+ def run_execution_token(self, value: Optional[pulumi.Input[str]]):
726
+ pulumi.set(self, "run_execution_token", value)
727
+
728
+ @property
729
+ @pulumi.getter(name="startExecutionToken")
730
+ def start_execution_token(self) -> Optional[pulumi.Input[str]]:
731
+ """
732
+ A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
733
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
734
+ """
735
+ return pulumi.get(self, "start_execution_token")
736
+
737
+ @start_execution_token.setter
738
+ def start_execution_token(self, value: Optional[pulumi.Input[str]]):
739
+ pulumi.set(self, "start_execution_token", value)
740
+
669
741
  @property
670
742
  @pulumi.getter
671
743
  def template(self) -> Optional[pulumi.Input['JobTemplateArgs']]:
@@ -731,6 +803,8 @@ class Job(pulumi.CustomResource):
731
803
  location: Optional[pulumi.Input[str]] = None,
732
804
  name: Optional[pulumi.Input[str]] = None,
733
805
  project: Optional[pulumi.Input[str]] = None,
806
+ run_execution_token: Optional[pulumi.Input[str]] = None,
807
+ start_execution_token: Optional[pulumi.Input[str]] = None,
734
808
  template: Optional[pulumi.Input[pulumi.InputType['JobTemplateArgs']]] = None,
735
809
  __props__=None):
736
810
  """
@@ -756,7 +830,7 @@ class Job(pulumi.CustomResource):
756
830
  template=gcp.cloudrunv2.JobTemplateArgs(
757
831
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
758
832
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
759
- image="us-docker.pkg.dev/cloudrun/container/hello",
833
+ image="us-docker.pkg.dev/cloudrun/container/job",
760
834
  )],
761
835
  ),
762
836
  ))
@@ -773,7 +847,7 @@ class Job(pulumi.CustomResource):
773
847
  template=gcp.cloudrunv2.JobTemplateArgs(
774
848
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
775
849
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
776
- image="us-docker.pkg.dev/cloudrun/container/hello",
850
+ image="us-docker.pkg.dev/cloudrun/container/job",
777
851
  resources=gcp.cloudrunv2.JobTemplateTemplateContainerResourcesArgs(
778
852
  limits={
779
853
  "cpu": "2",
@@ -815,7 +889,7 @@ class Job(pulumi.CustomResource):
815
889
  ),
816
890
  )],
817
891
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
818
- image="us-docker.pkg.dev/cloudrun/container/hello",
892
+ image="us-docker.pkg.dev/cloudrun/container/job",
819
893
  envs=[
820
894
  gcp.cloudrunv2.JobTemplateTemplateContainerEnvArgs(
821
895
  name="FOO",
@@ -846,7 +920,7 @@ class Job(pulumi.CustomResource):
846
920
  secret_id=secret.id,
847
921
  role="roles/secretmanager.secretAccessor",
848
922
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
849
- opts=pulumi.ResourceOptions(depends_on=[secret]))
923
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
850
924
  ```
851
925
  ### Cloudrunv2 Job Vpcaccess
852
926
 
@@ -877,7 +951,7 @@ class Job(pulumi.CustomResource):
877
951
  template=gcp.cloudrunv2.JobTemplateArgs(
878
952
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
879
953
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
880
- image="us-docker.pkg.dev/cloudrun/container/hello",
954
+ image="us-docker.pkg.dev/cloudrun/container/job",
881
955
  )],
882
956
  vpc_access=gcp.cloudrunv2.JobTemplateTemplateVpcAccessArgs(
883
957
  connector=connector.id,
@@ -934,7 +1008,7 @@ class Job(pulumi.CustomResource):
934
1008
  secret_id=secret.id,
935
1009
  role="roles/secretmanager.secretAccessor",
936
1010
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
937
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1011
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
938
1012
  default = gcp.cloudrunv2.Job("default",
939
1013
  name="cloudrun-job",
940
1014
  location="us-central1",
@@ -953,7 +1027,7 @@ class Job(pulumi.CustomResource):
953
1027
  ),
954
1028
  )],
955
1029
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
956
- image="us-docker.pkg.dev/cloudrun/container/hello",
1030
+ image="us-docker.pkg.dev/cloudrun/container/job",
957
1031
  volume_mounts=[gcp.cloudrunv2.JobTemplateTemplateContainerVolumeMountArgs(
958
1032
  name="a-volume",
959
1033
  mount_path="/secrets",
@@ -961,7 +1035,7 @@ class Job(pulumi.CustomResource):
961
1035
  )],
962
1036
  ),
963
1037
  ),
964
- opts=pulumi.ResourceOptions(depends_on=[
1038
+ opts = pulumi.ResourceOptions(depends_on=[
965
1039
  secret_version_data,
966
1040
  secret_access,
967
1041
  ]))
@@ -979,7 +1053,7 @@ class Job(pulumi.CustomResource):
979
1053
  template=gcp.cloudrunv2.JobTemplateArgs(
980
1054
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
981
1055
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
982
- image="us-docker.pkg.dev/cloudrun/container/hello",
1056
+ image="us-docker.pkg.dev/cloudrun/container/job",
983
1057
  volume_mounts=[gcp.cloudrunv2.JobTemplateTemplateContainerVolumeMountArgs(
984
1058
  name="empty-dir-volume",
985
1059
  mount_path="/mnt",
@@ -995,6 +1069,24 @@ class Job(pulumi.CustomResource):
995
1069
  ),
996
1070
  ))
997
1071
  ```
1072
+ ### Cloudrunv2 Job Run Job
1073
+
1074
+ ```python
1075
+ import pulumi
1076
+ import pulumi_gcp as gcp
1077
+
1078
+ default = gcp.cloudrunv2.Job("default",
1079
+ name="cloudrun-job",
1080
+ location="us-central1",
1081
+ start_execution_token="start-once-created",
1082
+ template=gcp.cloudrunv2.JobTemplateArgs(
1083
+ template=gcp.cloudrunv2.JobTemplateTemplateArgs(
1084
+ containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1085
+ image="us-docker.pkg.dev/cloudrun/container/job",
1086
+ )],
1087
+ ),
1088
+ ))
1089
+ ```
998
1090
 
999
1091
  ## Import
1000
1092
 
@@ -1048,6 +1140,10 @@ class Job(pulumi.CustomResource):
1048
1140
  ["UNIMPLEMENTED", "PRELAUNCH", "EARLY_ACCESS", "ALPHA", "BETA", "GA", "DEPRECATED"]
1049
1141
  :param pulumi.Input[str] location: The location of the cloud run job
1050
1142
  :param pulumi.Input[str] name: Name of the Job.
1143
+ :param pulumi.Input[str] run_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
1144
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
1145
+ :param pulumi.Input[str] start_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
1146
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
1051
1147
  :param pulumi.Input[pulumi.InputType['JobTemplateArgs']] template: The template used to create executions for this Job.
1052
1148
  Structure is documented below.
1053
1149
  """
@@ -1080,7 +1176,7 @@ class Job(pulumi.CustomResource):
1080
1176
  template=gcp.cloudrunv2.JobTemplateArgs(
1081
1177
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
1082
1178
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1083
- image="us-docker.pkg.dev/cloudrun/container/hello",
1179
+ image="us-docker.pkg.dev/cloudrun/container/job",
1084
1180
  )],
1085
1181
  ),
1086
1182
  ))
@@ -1097,7 +1193,7 @@ class Job(pulumi.CustomResource):
1097
1193
  template=gcp.cloudrunv2.JobTemplateArgs(
1098
1194
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
1099
1195
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1100
- image="us-docker.pkg.dev/cloudrun/container/hello",
1196
+ image="us-docker.pkg.dev/cloudrun/container/job",
1101
1197
  resources=gcp.cloudrunv2.JobTemplateTemplateContainerResourcesArgs(
1102
1198
  limits={
1103
1199
  "cpu": "2",
@@ -1139,7 +1235,7 @@ class Job(pulumi.CustomResource):
1139
1235
  ),
1140
1236
  )],
1141
1237
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1142
- image="us-docker.pkg.dev/cloudrun/container/hello",
1238
+ image="us-docker.pkg.dev/cloudrun/container/job",
1143
1239
  envs=[
1144
1240
  gcp.cloudrunv2.JobTemplateTemplateContainerEnvArgs(
1145
1241
  name="FOO",
@@ -1170,7 +1266,7 @@ class Job(pulumi.CustomResource):
1170
1266
  secret_id=secret.id,
1171
1267
  role="roles/secretmanager.secretAccessor",
1172
1268
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
1173
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1269
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
1174
1270
  ```
1175
1271
  ### Cloudrunv2 Job Vpcaccess
1176
1272
 
@@ -1201,7 +1297,7 @@ class Job(pulumi.CustomResource):
1201
1297
  template=gcp.cloudrunv2.JobTemplateArgs(
1202
1298
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
1203
1299
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1204
- image="us-docker.pkg.dev/cloudrun/container/hello",
1300
+ image="us-docker.pkg.dev/cloudrun/container/job",
1205
1301
  )],
1206
1302
  vpc_access=gcp.cloudrunv2.JobTemplateTemplateVpcAccessArgs(
1207
1303
  connector=connector.id,
@@ -1258,7 +1354,7 @@ class Job(pulumi.CustomResource):
1258
1354
  secret_id=secret.id,
1259
1355
  role="roles/secretmanager.secretAccessor",
1260
1356
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
1261
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1357
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
1262
1358
  default = gcp.cloudrunv2.Job("default",
1263
1359
  name="cloudrun-job",
1264
1360
  location="us-central1",
@@ -1277,7 +1373,7 @@ class Job(pulumi.CustomResource):
1277
1373
  ),
1278
1374
  )],
1279
1375
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1280
- image="us-docker.pkg.dev/cloudrun/container/hello",
1376
+ image="us-docker.pkg.dev/cloudrun/container/job",
1281
1377
  volume_mounts=[gcp.cloudrunv2.JobTemplateTemplateContainerVolumeMountArgs(
1282
1378
  name="a-volume",
1283
1379
  mount_path="/secrets",
@@ -1285,7 +1381,7 @@ class Job(pulumi.CustomResource):
1285
1381
  )],
1286
1382
  ),
1287
1383
  ),
1288
- opts=pulumi.ResourceOptions(depends_on=[
1384
+ opts = pulumi.ResourceOptions(depends_on=[
1289
1385
  secret_version_data,
1290
1386
  secret_access,
1291
1387
  ]))
@@ -1303,7 +1399,7 @@ class Job(pulumi.CustomResource):
1303
1399
  template=gcp.cloudrunv2.JobTemplateArgs(
1304
1400
  template=gcp.cloudrunv2.JobTemplateTemplateArgs(
1305
1401
  containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1306
- image="us-docker.pkg.dev/cloudrun/container/hello",
1402
+ image="us-docker.pkg.dev/cloudrun/container/job",
1307
1403
  volume_mounts=[gcp.cloudrunv2.JobTemplateTemplateContainerVolumeMountArgs(
1308
1404
  name="empty-dir-volume",
1309
1405
  mount_path="/mnt",
@@ -1319,6 +1415,24 @@ class Job(pulumi.CustomResource):
1319
1415
  ),
1320
1416
  ))
1321
1417
  ```
1418
+ ### Cloudrunv2 Job Run Job
1419
+
1420
+ ```python
1421
+ import pulumi
1422
+ import pulumi_gcp as gcp
1423
+
1424
+ default = gcp.cloudrunv2.Job("default",
1425
+ name="cloudrun-job",
1426
+ location="us-central1",
1427
+ start_execution_token="start-once-created",
1428
+ template=gcp.cloudrunv2.JobTemplateArgs(
1429
+ template=gcp.cloudrunv2.JobTemplateTemplateArgs(
1430
+ containers=[gcp.cloudrunv2.JobTemplateTemplateContainerArgs(
1431
+ image="us-docker.pkg.dev/cloudrun/container/job",
1432
+ )],
1433
+ ),
1434
+ ))
1435
+ ```
1322
1436
 
1323
1437
  ## Import
1324
1438
 
@@ -1368,6 +1482,8 @@ class Job(pulumi.CustomResource):
1368
1482
  location: Optional[pulumi.Input[str]] = None,
1369
1483
  name: Optional[pulumi.Input[str]] = None,
1370
1484
  project: Optional[pulumi.Input[str]] = None,
1485
+ run_execution_token: Optional[pulumi.Input[str]] = None,
1486
+ start_execution_token: Optional[pulumi.Input[str]] = None,
1371
1487
  template: Optional[pulumi.Input[pulumi.InputType['JobTemplateArgs']]] = None,
1372
1488
  __props__=None):
1373
1489
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1389,6 +1505,8 @@ class Job(pulumi.CustomResource):
1389
1505
  __props__.__dict__["location"] = location
1390
1506
  __props__.__dict__["name"] = name
1391
1507
  __props__.__dict__["project"] = project
1508
+ __props__.__dict__["run_execution_token"] = run_execution_token
1509
+ __props__.__dict__["start_execution_token"] = start_execution_token
1392
1510
  if template is None and not opts.urn:
1393
1511
  raise TypeError("Missing required property 'template'")
1394
1512
  __props__.__dict__["template"] = template
@@ -1446,6 +1564,8 @@ class Job(pulumi.CustomResource):
1446
1564
  project: Optional[pulumi.Input[str]] = None,
1447
1565
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1448
1566
  reconciling: Optional[pulumi.Input[bool]] = None,
1567
+ run_execution_token: Optional[pulumi.Input[str]] = None,
1568
+ start_execution_token: Optional[pulumi.Input[str]] = None,
1449
1569
  template: Optional[pulumi.Input[pulumi.InputType['JobTemplateArgs']]] = None,
1450
1570
  terminal_conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobTerminalConditionArgs']]]]] = None,
1451
1571
  uid: Optional[pulumi.Input[str]] = None,
@@ -1505,6 +1625,10 @@ class Job(pulumi.CustomResource):
1505
1625
  When a new Job is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Job to the desired state. This process is called reconciliation. While reconciliation is in process, observedGeneration and latest_succeeded_execution, will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the state matches the Job, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state.
1506
1626
  If reconciliation succeeded, the following fields will match: observedGeneration and generation, latest_succeeded_execution and latestCreatedExecution.
1507
1627
  If reconciliation failed, observedGeneration and latest_succeeded_execution will have the state of the last succeeded execution or empty for newly created Job. Additional information on the failure can be found in terminalCondition and conditions
1628
+ :param pulumi.Input[str] run_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
1629
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
1630
+ :param pulumi.Input[str] start_execution_token: A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
1631
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
1508
1632
  :param pulumi.Input[pulumi.InputType['JobTemplateArgs']] template: The template used to create executions for this Job.
1509
1633
  Structure is documented below.
1510
1634
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['JobTerminalConditionArgs']]]] terminal_conditions: The Condition of this Job, containing its readiness status, and detailed error information in case it did not reach the desired state
@@ -1540,6 +1664,8 @@ class Job(pulumi.CustomResource):
1540
1664
  __props__.__dict__["project"] = project
1541
1665
  __props__.__dict__["pulumi_labels"] = pulumi_labels
1542
1666
  __props__.__dict__["reconciling"] = reconciling
1667
+ __props__.__dict__["run_execution_token"] = run_execution_token
1668
+ __props__.__dict__["start_execution_token"] = start_execution_token
1543
1669
  __props__.__dict__["template"] = template
1544
1670
  __props__.__dict__["terminal_conditions"] = terminal_conditions
1545
1671
  __props__.__dict__["uid"] = uid
@@ -1758,6 +1884,24 @@ class Job(pulumi.CustomResource):
1758
1884
  """
1759
1885
  return pulumi.get(self, "reconciling")
1760
1886
 
1887
+ @property
1888
+ @pulumi.getter(name="runExecutionToken")
1889
+ def run_execution_token(self) -> pulumi.Output[Optional[str]]:
1890
+ """
1891
+ A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
1892
+ execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
1893
+ """
1894
+ return pulumi.get(self, "run_execution_token")
1895
+
1896
+ @property
1897
+ @pulumi.getter(name="startExecutionToken")
1898
+ def start_execution_token(self) -> pulumi.Output[Optional[str]]:
1899
+ """
1900
+ A unique string used as a suffix creating a new execution upon job create or update. The Job will become ready when the
1901
+ execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
1902
+ """
1903
+ return pulumi.get(self, "start_execution_token")
1904
+
1761
1905
  @property
1762
1906
  @pulumi.getter
1763
1907
  def template(self) -> pulumi.Output['outputs.JobTemplate']:
@@ -1093,13 +1093,13 @@ class Service(pulumi.CustomResource):
1093
1093
  type="TRAFFIC_TARGET_ALLOCATION_TYPE_LATEST",
1094
1094
  percent=100,
1095
1095
  )],
1096
- opts=pulumi.ResourceOptions(depends_on=[secret_version_data]))
1096
+ opts = pulumi.ResourceOptions(depends_on=[secret_version_data]))
1097
1097
  project = gcp.organizations.get_project()
1098
1098
  secret_access = gcp.secretmanager.SecretIamMember("secret-access",
1099
1099
  secret_id=secret.id,
1100
1100
  role="roles/secretmanager.secretAccessor",
1101
1101
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
1102
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1102
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
1103
1103
  ```
1104
1104
  ### Cloudrunv2 Service Vpcaccess
1105
1105
 
@@ -1231,13 +1231,13 @@ class Service(pulumi.CustomResource):
1231
1231
  )],
1232
1232
  )],
1233
1233
  ),
1234
- opts=pulumi.ResourceOptions(depends_on=[secret_version_data]))
1234
+ opts = pulumi.ResourceOptions(depends_on=[secret_version_data]))
1235
1235
  project = gcp.organizations.get_project()
1236
1236
  secret_access = gcp.secretmanager.SecretIamMember("secret-access",
1237
1237
  secret_id=secret.id,
1238
1238
  role="roles/secretmanager.secretAccessor",
1239
1239
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
1240
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1240
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
1241
1241
  ```
1242
1242
  ### Cloudrunv2 Service Multicontainer
1243
1243
 
@@ -1551,13 +1551,13 @@ class Service(pulumi.CustomResource):
1551
1551
  type="TRAFFIC_TARGET_ALLOCATION_TYPE_LATEST",
1552
1552
  percent=100,
1553
1553
  )],
1554
- opts=pulumi.ResourceOptions(depends_on=[secret_version_data]))
1554
+ opts = pulumi.ResourceOptions(depends_on=[secret_version_data]))
1555
1555
  project = gcp.organizations.get_project()
1556
1556
  secret_access = gcp.secretmanager.SecretIamMember("secret-access",
1557
1557
  secret_id=secret.id,
1558
1558
  role="roles/secretmanager.secretAccessor",
1559
1559
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
1560
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1560
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
1561
1561
  ```
1562
1562
  ### Cloudrunv2 Service Vpcaccess
1563
1563
 
@@ -1689,13 +1689,13 @@ class Service(pulumi.CustomResource):
1689
1689
  )],
1690
1690
  )],
1691
1691
  ),
1692
- opts=pulumi.ResourceOptions(depends_on=[secret_version_data]))
1692
+ opts = pulumi.ResourceOptions(depends_on=[secret_version_data]))
1693
1693
  project = gcp.organizations.get_project()
1694
1694
  secret_access = gcp.secretmanager.SecretIamMember("secret-access",
1695
1695
  secret_id=secret.id,
1696
1696
  role="roles/secretmanager.secretAccessor",
1697
1697
  member=f"serviceAccount:{project.number}-compute@developer.gserviceaccount.com",
1698
- opts=pulumi.ResourceOptions(depends_on=[secret]))
1698
+ opts = pulumi.ResourceOptions(depends_on=[secret]))
1699
1699
  ```
1700
1700
  ### Cloudrunv2 Service Multicontainer
1701
1701