pulumi-gcp 7.10.0a1708496697__py3-none-any.whl → 7.10.0a1708543111__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. pulumi_gcp/__init__.py +32 -0
  2. pulumi_gcp/bigtable/table_iam_binding.py +6 -6
  3. pulumi_gcp/bigtable/table_iam_member.py +6 -6
  4. pulumi_gcp/bigtable/table_iam_policy.py +6 -6
  5. pulumi_gcp/cloudbuildv2/_inputs.py +32 -12
  6. pulumi_gcp/cloudbuildv2/connection.py +140 -38
  7. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +13 -0
  8. pulumi_gcp/cloudbuildv2/connection_iam_member.py +13 -0
  9. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +13 -0
  10. pulumi_gcp/cloudbuildv2/get_connection_iam_policy.py +2 -0
  11. pulumi_gcp/cloudbuildv2/outputs.py +32 -12
  12. pulumi_gcp/clouddeploy/__init__.py +1 -0
  13. pulumi_gcp/clouddeploy/_inputs.py +277 -2
  14. pulumi_gcp/clouddeploy/custom_target_type.py +923 -0
  15. pulumi_gcp/clouddeploy/outputs.py +263 -2
  16. pulumi_gcp/cloudfunctions/function.py +32 -0
  17. pulumi_gcp/cloudfunctions/get_function.py +11 -1
  18. pulumi_gcp/cloudrunv2/service.py +18 -0
  19. pulumi_gcp/compute/_inputs.py +20 -20
  20. pulumi_gcp/compute/outputs.py +24 -24
  21. pulumi_gcp/config/vars.py +2 -2
  22. pulumi_gcp/container/_inputs.py +22 -0
  23. pulumi_gcp/container/outputs.py +28 -0
  24. pulumi_gcp/dns/_inputs.py +2 -2
  25. pulumi_gcp/dns/get_managed_zone.py +2 -2
  26. pulumi_gcp/dns/get_managed_zones.py +35 -2
  27. pulumi_gcp/dns/outputs.py +2 -2
  28. pulumi_gcp/eventarc/_inputs.py +78 -0
  29. pulumi_gcp/eventarc/outputs.py +83 -0
  30. pulumi_gcp/firebase/__init__.py +1 -0
  31. pulumi_gcp/firebase/app_check_debug_token.py +480 -0
  32. pulumi_gcp/healthcare/hl7_store.py +50 -1
  33. pulumi_gcp/identityplatform/_inputs.py +330 -0
  34. pulumi_gcp/identityplatform/config.py +216 -0
  35. pulumi_gcp/identityplatform/outputs.py +397 -0
  36. pulumi_gcp/networksecurity/__init__.py +2 -0
  37. pulumi_gcp/networksecurity/firewall_endpoint.py +631 -0
  38. pulumi_gcp/networksecurity/security_profile_group.py +654 -0
  39. pulumi_gcp/notebooks/instance.py +109 -4
  40. pulumi_gcp/provider.py +8 -0
  41. pulumi_gcp/recaptcha/enterprise_key.py +4 -4
  42. pulumi_gcp/securityposture/_inputs.py +48 -48
  43. pulumi_gcp/securityposture/outputs.py +40 -40
  44. pulumi_gcp/securityposture/posture.py +22 -2
  45. pulumi_gcp/vertex/_inputs.py +63 -0
  46. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +208 -0
  47. pulumi_gcp/vertex/outputs.py +87 -0
  48. pulumi_gcp/workbench/_inputs.py +4 -4
  49. pulumi_gcp/workbench/instance.py +59 -8
  50. pulumi_gcp/workbench/outputs.py +4 -4
  51. pulumi_gcp/workstations/_inputs.py +16 -0
  52. pulumi_gcp/workstations/outputs.py +14 -0
  53. pulumi_gcp/workstations/workstation_config.py +2 -0
  54. {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/METADATA +1 -1
  55. {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/RECORD +57 -53
  56. {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/WHEEL +0 -0
  57. {pulumi_gcp-7.10.0a1708496697.dist-info → pulumi_gcp-7.10.0a1708543111.dist-info}/top_level.txt +0 -0
@@ -16,6 +16,10 @@ __all__ = [
16
16
  'AutomationRulePromoteReleaseRule',
17
17
  'AutomationSelector',
18
18
  'AutomationSelectorTarget',
19
+ 'CustomTargetTypeCustomActions',
20
+ 'CustomTargetTypeCustomActionsIncludeSkaffoldModule',
21
+ 'CustomTargetTypeCustomActionsIncludeSkaffoldModuleGit',
22
+ 'CustomTargetTypeCustomActionsIncludeSkaffoldModuleGoogleCloudStorage',
19
23
  'DeliveryPipelineCondition',
20
24
  'DeliveryPipelineConditionPipelineReadyCondition',
21
25
  'DeliveryPipelineConditionTargetsPresentCondition',
@@ -290,6 +294,207 @@ class AutomationSelectorTarget(dict):
290
294
  return pulumi.get(self, "labels")
291
295
 
292
296
 
297
+ @pulumi.output_type
298
+ class CustomTargetTypeCustomActions(dict):
299
+ @staticmethod
300
+ def __key_warning(key: str):
301
+ suggest = None
302
+ if key == "deployAction":
303
+ suggest = "deploy_action"
304
+ elif key == "includeSkaffoldModules":
305
+ suggest = "include_skaffold_modules"
306
+ elif key == "renderAction":
307
+ suggest = "render_action"
308
+
309
+ if suggest:
310
+ pulumi.log.warn(f"Key '{key}' not found in CustomTargetTypeCustomActions. Access the value via the '{suggest}' property getter instead.")
311
+
312
+ def __getitem__(self, key: str) -> Any:
313
+ CustomTargetTypeCustomActions.__key_warning(key)
314
+ return super().__getitem__(key)
315
+
316
+ def get(self, key: str, default = None) -> Any:
317
+ CustomTargetTypeCustomActions.__key_warning(key)
318
+ return super().get(key, default)
319
+
320
+ def __init__(__self__, *,
321
+ deploy_action: str,
322
+ include_skaffold_modules: Optional[Sequence['outputs.CustomTargetTypeCustomActionsIncludeSkaffoldModule']] = None,
323
+ render_action: Optional[str] = None):
324
+ """
325
+ :param str deploy_action: The Skaffold custom action responsible for deploy operations.
326
+ :param Sequence['CustomTargetTypeCustomActionsIncludeSkaffoldModuleArgs'] include_skaffold_modules: List of Skaffold modules Cloud Deploy will include in the Skaffold Config as required before performing diagnose.
327
+ Structure is documented below.
328
+ :param str render_action: The Skaffold custom action responsible for render operations. If not provided then Cloud Deploy will perform the render operations via `skaffold render`.
329
+ """
330
+ pulumi.set(__self__, "deploy_action", deploy_action)
331
+ if include_skaffold_modules is not None:
332
+ pulumi.set(__self__, "include_skaffold_modules", include_skaffold_modules)
333
+ if render_action is not None:
334
+ pulumi.set(__self__, "render_action", render_action)
335
+
336
+ @property
337
+ @pulumi.getter(name="deployAction")
338
+ def deploy_action(self) -> str:
339
+ """
340
+ The Skaffold custom action responsible for deploy operations.
341
+ """
342
+ return pulumi.get(self, "deploy_action")
343
+
344
+ @property
345
+ @pulumi.getter(name="includeSkaffoldModules")
346
+ def include_skaffold_modules(self) -> Optional[Sequence['outputs.CustomTargetTypeCustomActionsIncludeSkaffoldModule']]:
347
+ """
348
+ List of Skaffold modules Cloud Deploy will include in the Skaffold Config as required before performing diagnose.
349
+ Structure is documented below.
350
+ """
351
+ return pulumi.get(self, "include_skaffold_modules")
352
+
353
+ @property
354
+ @pulumi.getter(name="renderAction")
355
+ def render_action(self) -> Optional[str]:
356
+ """
357
+ The Skaffold custom action responsible for render operations. If not provided then Cloud Deploy will perform the render operations via `skaffold render`.
358
+ """
359
+ return pulumi.get(self, "render_action")
360
+
361
+
362
+ @pulumi.output_type
363
+ class CustomTargetTypeCustomActionsIncludeSkaffoldModule(dict):
364
+ @staticmethod
365
+ def __key_warning(key: str):
366
+ suggest = None
367
+ if key == "googleCloudStorage":
368
+ suggest = "google_cloud_storage"
369
+
370
+ if suggest:
371
+ pulumi.log.warn(f"Key '{key}' not found in CustomTargetTypeCustomActionsIncludeSkaffoldModule. Access the value via the '{suggest}' property getter instead.")
372
+
373
+ def __getitem__(self, key: str) -> Any:
374
+ CustomTargetTypeCustomActionsIncludeSkaffoldModule.__key_warning(key)
375
+ return super().__getitem__(key)
376
+
377
+ def get(self, key: str, default = None) -> Any:
378
+ CustomTargetTypeCustomActionsIncludeSkaffoldModule.__key_warning(key)
379
+ return super().get(key, default)
380
+
381
+ def __init__(__self__, *,
382
+ configs: Optional[Sequence[str]] = None,
383
+ git: Optional['outputs.CustomTargetTypeCustomActionsIncludeSkaffoldModuleGit'] = None,
384
+ google_cloud_storage: Optional['outputs.CustomTargetTypeCustomActionsIncludeSkaffoldModuleGoogleCloudStorage'] = None):
385
+ """
386
+ :param Sequence[str] configs: The Skaffold Config modules to use from the specified source.
387
+ :param 'CustomTargetTypeCustomActionsIncludeSkaffoldModuleGitArgs' git: Remote git repository containing the Skaffold Config modules.
388
+ Structure is documented below.
389
+ :param 'CustomTargetTypeCustomActionsIncludeSkaffoldModuleGoogleCloudStorageArgs' google_cloud_storage: Cloud Storage bucket containing Skaffold Config modules.
390
+ Structure is documented below.
391
+ """
392
+ if configs is not None:
393
+ pulumi.set(__self__, "configs", configs)
394
+ if git is not None:
395
+ pulumi.set(__self__, "git", git)
396
+ if google_cloud_storage is not None:
397
+ pulumi.set(__self__, "google_cloud_storage", google_cloud_storage)
398
+
399
+ @property
400
+ @pulumi.getter
401
+ def configs(self) -> Optional[Sequence[str]]:
402
+ """
403
+ The Skaffold Config modules to use from the specified source.
404
+ """
405
+ return pulumi.get(self, "configs")
406
+
407
+ @property
408
+ @pulumi.getter
409
+ def git(self) -> Optional['outputs.CustomTargetTypeCustomActionsIncludeSkaffoldModuleGit']:
410
+ """
411
+ Remote git repository containing the Skaffold Config modules.
412
+ Structure is documented below.
413
+ """
414
+ return pulumi.get(self, "git")
415
+
416
+ @property
417
+ @pulumi.getter(name="googleCloudStorage")
418
+ def google_cloud_storage(self) -> Optional['outputs.CustomTargetTypeCustomActionsIncludeSkaffoldModuleGoogleCloudStorage']:
419
+ """
420
+ Cloud Storage bucket containing Skaffold Config modules.
421
+ Structure is documented below.
422
+ """
423
+ return pulumi.get(self, "google_cloud_storage")
424
+
425
+
426
+ @pulumi.output_type
427
+ class CustomTargetTypeCustomActionsIncludeSkaffoldModuleGit(dict):
428
+ def __init__(__self__, *,
429
+ repo: str,
430
+ path: Optional[str] = None,
431
+ ref: Optional[str] = None):
432
+ """
433
+ :param str repo: Git repository the package should be cloned from.
434
+ :param str path: Relative path from the repository root to the Skaffold file.
435
+ :param str ref: Git ref the package should be cloned from.
436
+ """
437
+ pulumi.set(__self__, "repo", repo)
438
+ if path is not None:
439
+ pulumi.set(__self__, "path", path)
440
+ if ref is not None:
441
+ pulumi.set(__self__, "ref", ref)
442
+
443
+ @property
444
+ @pulumi.getter
445
+ def repo(self) -> str:
446
+ """
447
+ Git repository the package should be cloned from.
448
+ """
449
+ return pulumi.get(self, "repo")
450
+
451
+ @property
452
+ @pulumi.getter
453
+ def path(self) -> Optional[str]:
454
+ """
455
+ Relative path from the repository root to the Skaffold file.
456
+ """
457
+ return pulumi.get(self, "path")
458
+
459
+ @property
460
+ @pulumi.getter
461
+ def ref(self) -> Optional[str]:
462
+ """
463
+ Git ref the package should be cloned from.
464
+ """
465
+ return pulumi.get(self, "ref")
466
+
467
+
468
+ @pulumi.output_type
469
+ class CustomTargetTypeCustomActionsIncludeSkaffoldModuleGoogleCloudStorage(dict):
470
+ def __init__(__self__, *,
471
+ source: str,
472
+ path: Optional[str] = None):
473
+ """
474
+ :param str source: Cloud Storage source paths to copy recursively. For example, providing `gs://my-bucket/dir/configs/*` will result in Skaffold copying all files within the `dir/configs` directory in the bucket `my-bucket`.
475
+ :param str path: Relative path from the source to the Skaffold file.
476
+ """
477
+ pulumi.set(__self__, "source", source)
478
+ if path is not None:
479
+ pulumi.set(__self__, "path", path)
480
+
481
+ @property
482
+ @pulumi.getter
483
+ def source(self) -> str:
484
+ """
485
+ Cloud Storage source paths to copy recursively. For example, providing `gs://my-bucket/dir/configs/*` will result in Skaffold copying all files within the `dir/configs` directory in the bucket `my-bucket`.
486
+ """
487
+ return pulumi.get(self, "source")
488
+
489
+ @property
490
+ @pulumi.getter
491
+ def path(self) -> Optional[str]:
492
+ """
493
+ Relative path from the source to the Skaffold file.
494
+ """
495
+ return pulumi.get(self, "path")
496
+
497
+
293
498
  @pulumi.output_type
294
499
  class DeliveryPipelineCondition(dict):
295
500
  @staticmethod
@@ -1119,6 +1324,12 @@ class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigCloudRun(dic
1119
1324
  suggest = None
1120
1325
  if key == "automaticTrafficControl":
1121
1326
  suggest = "automatic_traffic_control"
1327
+ elif key == "canaryRevisionTags":
1328
+ suggest = "canary_revision_tags"
1329
+ elif key == "priorRevisionTags":
1330
+ suggest = "prior_revision_tags"
1331
+ elif key == "stableRevisionTags":
1332
+ suggest = "stable_revision_tags"
1122
1333
 
1123
1334
  if suggest:
1124
1335
  pulumi.log.warn(f"Key '{key}' not found in DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigCloudRun. Access the value via the '{suggest}' property getter instead.")
@@ -1132,12 +1343,24 @@ class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigCloudRun(dic
1132
1343
  return super().get(key, default)
1133
1344
 
1134
1345
  def __init__(__self__, *,
1135
- automatic_traffic_control: Optional[bool] = None):
1346
+ automatic_traffic_control: Optional[bool] = None,
1347
+ canary_revision_tags: Optional[Sequence[str]] = None,
1348
+ prior_revision_tags: Optional[Sequence[str]] = None,
1349
+ stable_revision_tags: Optional[Sequence[str]] = None):
1136
1350
  """
1137
1351
  :param bool automatic_traffic_control: Whether Cloud Deploy should update the traffic stanza in a Cloud Run Service on the user's behalf to facilitate traffic splitting. This is required to be true for CanaryDeployments, but optional for CustomCanaryDeployments.
1352
+ :param Sequence[str] canary_revision_tags: Optional. A list of tags that are added to the canary revision while the canary phase is in progress.
1353
+ :param Sequence[str] prior_revision_tags: Optional. A list of tags that are added to the prior revision while the canary phase is in progress.
1354
+ :param Sequence[str] stable_revision_tags: Optional. A list of tags that are added to the final stable revision when the stable phase is applied.
1138
1355
  """
1139
1356
  if automatic_traffic_control is not None:
1140
1357
  pulumi.set(__self__, "automatic_traffic_control", automatic_traffic_control)
1358
+ if canary_revision_tags is not None:
1359
+ pulumi.set(__self__, "canary_revision_tags", canary_revision_tags)
1360
+ if prior_revision_tags is not None:
1361
+ pulumi.set(__self__, "prior_revision_tags", prior_revision_tags)
1362
+ if stable_revision_tags is not None:
1363
+ pulumi.set(__self__, "stable_revision_tags", stable_revision_tags)
1141
1364
 
1142
1365
  @property
1143
1366
  @pulumi.getter(name="automaticTrafficControl")
@@ -1147,6 +1370,30 @@ class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigCloudRun(dic
1147
1370
  """
1148
1371
  return pulumi.get(self, "automatic_traffic_control")
1149
1372
 
1373
+ @property
1374
+ @pulumi.getter(name="canaryRevisionTags")
1375
+ def canary_revision_tags(self) -> Optional[Sequence[str]]:
1376
+ """
1377
+ Optional. A list of tags that are added to the canary revision while the canary phase is in progress.
1378
+ """
1379
+ return pulumi.get(self, "canary_revision_tags")
1380
+
1381
+ @property
1382
+ @pulumi.getter(name="priorRevisionTags")
1383
+ def prior_revision_tags(self) -> Optional[Sequence[str]]:
1384
+ """
1385
+ Optional. A list of tags that are added to the prior revision while the canary phase is in progress.
1386
+ """
1387
+ return pulumi.get(self, "prior_revision_tags")
1388
+
1389
+ @property
1390
+ @pulumi.getter(name="stableRevisionTags")
1391
+ def stable_revision_tags(self) -> Optional[Sequence[str]]:
1392
+ """
1393
+ Optional. A list of tags that are added to the final stable revision when the stable phase is applied.
1394
+ """
1395
+ return pulumi.get(self, "stable_revision_tags")
1396
+
1150
1397
 
1151
1398
  @pulumi.output_type
1152
1399
  class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigKubernetes(dict):
@@ -1207,6 +1454,8 @@ class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigKubernetesGa
1207
1454
  suggest = "http_route"
1208
1455
  elif key == "routeUpdateWaitTime":
1209
1456
  suggest = "route_update_wait_time"
1457
+ elif key == "stableCutbackDuration":
1458
+ suggest = "stable_cutback_duration"
1210
1459
 
1211
1460
  if suggest:
1212
1461
  pulumi.log.warn(f"Key '{key}' not found in DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigKubernetesGatewayServiceMesh. Access the value via the '{suggest}' property getter instead.")
@@ -1223,18 +1472,22 @@ class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigKubernetesGa
1223
1472
  deployment: str,
1224
1473
  http_route: str,
1225
1474
  service: str,
1226
- route_update_wait_time: Optional[str] = None):
1475
+ route_update_wait_time: Optional[str] = None,
1476
+ stable_cutback_duration: Optional[str] = None):
1227
1477
  """
1228
1478
  :param str deployment: Required. Name of the Kubernetes Deployment whose traffic is managed by the specified HTTPRoute and Service.
1229
1479
  :param str http_route: Required. Name of the Gateway API HTTPRoute.
1230
1480
  :param str service: Required. Name of the Kubernetes Service.
1231
1481
  :param str route_update_wait_time: Optional. The time to wait for route updates to propagate. The maximum configurable time is 3 hours, in seconds format. If unspecified, there is no wait time.
1482
+ :param str stable_cutback_duration: Optional. The amount of time to migrate traffic back from the canary Service to the original Service during the stable phase deployment. If specified, must be between 15s and 3600s. If unspecified, there is no cutback time.
1232
1483
  """
1233
1484
  pulumi.set(__self__, "deployment", deployment)
1234
1485
  pulumi.set(__self__, "http_route", http_route)
1235
1486
  pulumi.set(__self__, "service", service)
1236
1487
  if route_update_wait_time is not None:
1237
1488
  pulumi.set(__self__, "route_update_wait_time", route_update_wait_time)
1489
+ if stable_cutback_duration is not None:
1490
+ pulumi.set(__self__, "stable_cutback_duration", stable_cutback_duration)
1238
1491
 
1239
1492
  @property
1240
1493
  @pulumi.getter
@@ -1268,6 +1521,14 @@ class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigKubernetesGa
1268
1521
  """
1269
1522
  return pulumi.get(self, "route_update_wait_time")
1270
1523
 
1524
+ @property
1525
+ @pulumi.getter(name="stableCutbackDuration")
1526
+ def stable_cutback_duration(self) -> Optional[str]:
1527
+ """
1528
+ Optional. The amount of time to migrate traffic back from the canary Service to the original Service during the stable phase deployment. If specified, must be between 15s and 3600s. If unspecified, there is no cutback time.
1529
+ """
1530
+ return pulumi.get(self, "stable_cutback_duration")
1531
+
1271
1532
 
1272
1533
  @pulumi.output_type
1273
1534
  class DeliveryPipelineSerialPipelineStageStrategyCanaryRuntimeConfigKubernetesServiceNetworking(dict):
@@ -550,6 +550,7 @@ class _FunctionState:
550
550
  status: Optional[pulumi.Input[str]] = None,
551
551
  timeout: Optional[pulumi.Input[int]] = None,
552
552
  trigger_http: Optional[pulumi.Input[bool]] = None,
553
+ version_id: Optional[pulumi.Input[str]] = None,
553
554
  vpc_connector: Optional[pulumi.Input[str]] = None,
554
555
  vpc_connector_egress_settings: Optional[pulumi.Input[str]] = None):
555
556
  """
@@ -593,6 +594,8 @@ class _FunctionState:
593
594
  :param pulumi.Input[str] status: Describes the current stage of a deployment.
594
595
  :param pulumi.Input[int] timeout: Timeout (in seconds) for the function. Default value is 60 seconds. Cannot be more than 540 seconds.
595
596
  :param pulumi.Input[bool] trigger_http: Boolean variable. Any HTTP request (of a supported type) to the endpoint will trigger function execution. Supported HTTP request types are: POST, PUT, GET, DELETE, and OPTIONS. Endpoint is returned as `https_trigger_url`. Cannot be used with `event_trigger`.
597
+ :param pulumi.Input[str] version_id: The version identifier of the Cloud Function. Each deployment attempt results in a new version of a function being
598
+ created.
596
599
  :param pulumi.Input[str] vpc_connector: The VPC Network Connector that this cloud function can connect to. It should be set up as fully-qualified URI. The format of this field is `projects/*/locations/*/connectors/*`.
597
600
  :param pulumi.Input[str] vpc_connector_egress_settings: The egress settings for the connector, controlling what traffic is diverted through it. Allowed values are `ALL_TRAFFIC` and `PRIVATE_RANGES_ONLY`. Defaults to `PRIVATE_RANGES_ONLY`. If unset, this field preserves the previously set value.
598
601
  """
@@ -658,6 +661,8 @@ class _FunctionState:
658
661
  pulumi.set(__self__, "timeout", timeout)
659
662
  if trigger_http is not None:
660
663
  pulumi.set(__self__, "trigger_http", trigger_http)
664
+ if version_id is not None:
665
+ pulumi.set(__self__, "version_id", version_id)
661
666
  if vpc_connector is not None:
662
667
  pulumi.set(__self__, "vpc_connector", vpc_connector)
663
668
  if vpc_connector_egress_settings is not None:
@@ -1043,6 +1048,19 @@ class _FunctionState:
1043
1048
  def trigger_http(self, value: Optional[pulumi.Input[bool]]):
1044
1049
  pulumi.set(self, "trigger_http", value)
1045
1050
 
1051
+ @property
1052
+ @pulumi.getter(name="versionId")
1053
+ def version_id(self) -> Optional[pulumi.Input[str]]:
1054
+ """
1055
+ The version identifier of the Cloud Function. Each deployment attempt results in a new version of a function being
1056
+ created.
1057
+ """
1058
+ return pulumi.get(self, "version_id")
1059
+
1060
+ @version_id.setter
1061
+ def version_id(self, value: Optional[pulumi.Input[str]]):
1062
+ pulumi.set(self, "version_id", value)
1063
+
1046
1064
  @property
1047
1065
  @pulumi.getter(name="vpcConnector")
1048
1066
  def vpc_connector(self) -> Optional[pulumi.Input[str]]:
@@ -1426,6 +1444,7 @@ class Function(pulumi.CustomResource):
1426
1444
  __props__.__dict__["effective_labels"] = None
1427
1445
  __props__.__dict__["pulumi_labels"] = None
1428
1446
  __props__.__dict__["status"] = None
1447
+ __props__.__dict__["version_id"] = None
1429
1448
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
1430
1449
  opts = pulumi.ResourceOptions.merge(opts, secret_opts)
1431
1450
  super(Function, __self__).__init__(
@@ -1469,6 +1488,7 @@ class Function(pulumi.CustomResource):
1469
1488
  status: Optional[pulumi.Input[str]] = None,
1470
1489
  timeout: Optional[pulumi.Input[int]] = None,
1471
1490
  trigger_http: Optional[pulumi.Input[bool]] = None,
1491
+ version_id: Optional[pulumi.Input[str]] = None,
1472
1492
  vpc_connector: Optional[pulumi.Input[str]] = None,
1473
1493
  vpc_connector_egress_settings: Optional[pulumi.Input[str]] = None) -> 'Function':
1474
1494
  """
@@ -1517,6 +1537,8 @@ class Function(pulumi.CustomResource):
1517
1537
  :param pulumi.Input[str] status: Describes the current stage of a deployment.
1518
1538
  :param pulumi.Input[int] timeout: Timeout (in seconds) for the function. Default value is 60 seconds. Cannot be more than 540 seconds.
1519
1539
  :param pulumi.Input[bool] trigger_http: Boolean variable. Any HTTP request (of a supported type) to the endpoint will trigger function execution. Supported HTTP request types are: POST, PUT, GET, DELETE, and OPTIONS. Endpoint is returned as `https_trigger_url`. Cannot be used with `event_trigger`.
1540
+ :param pulumi.Input[str] version_id: The version identifier of the Cloud Function. Each deployment attempt results in a new version of a function being
1541
+ created.
1520
1542
  :param pulumi.Input[str] vpc_connector: The VPC Network Connector that this cloud function can connect to. It should be set up as fully-qualified URI. The format of this field is `projects/*/locations/*/connectors/*`.
1521
1543
  :param pulumi.Input[str] vpc_connector_egress_settings: The egress settings for the connector, controlling what traffic is diverted through it. Allowed values are `ALL_TRAFFIC` and `PRIVATE_RANGES_ONLY`. Defaults to `PRIVATE_RANGES_ONLY`. If unset, this field preserves the previously set value.
1522
1544
  """
@@ -1555,6 +1577,7 @@ class Function(pulumi.CustomResource):
1555
1577
  __props__.__dict__["status"] = status
1556
1578
  __props__.__dict__["timeout"] = timeout
1557
1579
  __props__.__dict__["trigger_http"] = trigger_http
1580
+ __props__.__dict__["version_id"] = version_id
1558
1581
  __props__.__dict__["vpc_connector"] = vpc_connector
1559
1582
  __props__.__dict__["vpc_connector_egress_settings"] = vpc_connector_egress_settings
1560
1583
  return Function(resource_name, opts=opts, __props__=__props__)
@@ -1815,6 +1838,15 @@ class Function(pulumi.CustomResource):
1815
1838
  """
1816
1839
  return pulumi.get(self, "trigger_http")
1817
1840
 
1841
+ @property
1842
+ @pulumi.getter(name="versionId")
1843
+ def version_id(self) -> pulumi.Output[str]:
1844
+ """
1845
+ The version identifier of the Cloud Function. Each deployment attempt results in a new version of a function being
1846
+ created.
1847
+ """
1848
+ return pulumi.get(self, "version_id")
1849
+
1818
1850
  @property
1819
1851
  @pulumi.getter(name="vpcConnector")
1820
1852
  def vpc_connector(self) -> pulumi.Output[Optional[str]]:
@@ -22,7 +22,7 @@ class GetFunctionResult:
22
22
  """
23
23
  A collection of values returned by getFunction.
24
24
  """
25
- def __init__(__self__, available_memory_mb=None, build_environment_variables=None, build_worker_pool=None, description=None, docker_registry=None, docker_repository=None, effective_labels=None, entry_point=None, environment_variables=None, event_triggers=None, https_trigger_security_level=None, https_trigger_url=None, id=None, ingress_settings=None, kms_key_name=None, labels=None, max_instances=None, min_instances=None, name=None, project=None, pulumi_labels=None, region=None, runtime=None, secret_environment_variables=None, secret_volumes=None, service_account_email=None, source_archive_bucket=None, source_archive_object=None, source_repositories=None, status=None, timeout=None, trigger_http=None, vpc_connector=None, vpc_connector_egress_settings=None):
25
+ def __init__(__self__, available_memory_mb=None, build_environment_variables=None, build_worker_pool=None, description=None, docker_registry=None, docker_repository=None, effective_labels=None, entry_point=None, environment_variables=None, event_triggers=None, https_trigger_security_level=None, https_trigger_url=None, id=None, ingress_settings=None, kms_key_name=None, labels=None, max_instances=None, min_instances=None, name=None, project=None, pulumi_labels=None, region=None, runtime=None, secret_environment_variables=None, secret_volumes=None, service_account_email=None, source_archive_bucket=None, source_archive_object=None, source_repositories=None, status=None, timeout=None, trigger_http=None, version_id=None, vpc_connector=None, vpc_connector_egress_settings=None):
26
26
  if available_memory_mb and not isinstance(available_memory_mb, int):
27
27
  raise TypeError("Expected argument 'available_memory_mb' to be a int")
28
28
  pulumi.set(__self__, "available_memory_mb", available_memory_mb)
@@ -119,6 +119,9 @@ class GetFunctionResult:
119
119
  if trigger_http and not isinstance(trigger_http, bool):
120
120
  raise TypeError("Expected argument 'trigger_http' to be a bool")
121
121
  pulumi.set(__self__, "trigger_http", trigger_http)
122
+ if version_id and not isinstance(version_id, str):
123
+ raise TypeError("Expected argument 'version_id' to be a str")
124
+ pulumi.set(__self__, "version_id", version_id)
122
125
  if vpc_connector and not isinstance(vpc_connector, str):
123
126
  raise TypeError("Expected argument 'vpc_connector' to be a str")
124
127
  pulumi.set(__self__, "vpc_connector", vpc_connector)
@@ -337,6 +340,11 @@ class GetFunctionResult:
337
340
  """
338
341
  return pulumi.get(self, "trigger_http")
339
342
 
343
+ @property
344
+ @pulumi.getter(name="versionId")
345
+ def version_id(self) -> str:
346
+ return pulumi.get(self, "version_id")
347
+
340
348
  @property
341
349
  @pulumi.getter(name="vpcConnector")
342
350
  def vpc_connector(self) -> str:
@@ -392,6 +400,7 @@ class AwaitableGetFunctionResult(GetFunctionResult):
392
400
  status=self.status,
393
401
  timeout=self.timeout,
394
402
  trigger_http=self.trigger_http,
403
+ version_id=self.version_id,
395
404
  vpc_connector=self.vpc_connector,
396
405
  vpc_connector_egress_settings=self.vpc_connector_egress_settings)
397
406
 
@@ -463,6 +472,7 @@ def get_function(name: Optional[str] = None,
463
472
  status=pulumi.get(__ret__, 'status'),
464
473
  timeout=pulumi.get(__ret__, 'timeout'),
465
474
  trigger_http=pulumi.get(__ret__, 'trigger_http'),
475
+ version_id=pulumi.get(__ret__, 'version_id'),
466
476
  vpc_connector=pulumi.get(__ret__, 'vpc_connector'),
467
477
  vpc_connector_egress_settings=pulumi.get(__ret__, 'vpc_connector_egress_settings'))
468
478
 
@@ -1182,6 +1182,15 @@ class Service(pulumi.CustomResource):
1182
1182
  gcp.cloudrunv2.ServiceTemplateContainerArgs(
1183
1183
  name="hello-2",
1184
1184
  image="us-docker.pkg.dev/cloudrun/container/hello",
1185
+ envs=[gcp.cloudrunv2.ServiceTemplateContainerEnvArgs(
1186
+ name="PORT",
1187
+ value="8081",
1188
+ )],
1189
+ startup_probe=gcp.cloudrunv2.ServiceTemplateContainerStartupProbeArgs(
1190
+ http_get=gcp.cloudrunv2.ServiceTemplateContainerStartupProbeHttpGetArgs(
1191
+ port=8081,
1192
+ ),
1193
+ ),
1185
1194
  ),
1186
1195
  ],
1187
1196
  volumes=[gcp.cloudrunv2.ServiceTemplateVolumeArgs(
@@ -1608,6 +1617,15 @@ class Service(pulumi.CustomResource):
1608
1617
  gcp.cloudrunv2.ServiceTemplateContainerArgs(
1609
1618
  name="hello-2",
1610
1619
  image="us-docker.pkg.dev/cloudrun/container/hello",
1620
+ envs=[gcp.cloudrunv2.ServiceTemplateContainerEnvArgs(
1621
+ name="PORT",
1622
+ value="8081",
1623
+ )],
1624
+ startup_probe=gcp.cloudrunv2.ServiceTemplateContainerStartupProbeArgs(
1625
+ http_get=gcp.cloudrunv2.ServiceTemplateContainerStartupProbeHttpGetArgs(
1626
+ port=8081,
1627
+ ),
1628
+ ),
1611
1629
  ),
1612
1630
  ],
1613
1631
  volumes=[gcp.cloudrunv2.ServiceTemplateVolumeArgs(
@@ -5966,18 +5966,18 @@ class InstanceBootDiskInitializeParamsArgs:
5966
5966
  field is only applicable for persistent disks.
5967
5967
  :param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk.
5968
5968
  This sets the number of I/O operations per second that the disk can handle.
5969
- Values must be between 10,000 and 120,000. For more details,see the
5970
- [Extreme persistent disk documentation](https://cloud.google.com/compute/docs/disks/extreme-persistent-disk).
5969
+ For more details,see the [Hyperdisk documentation](https://cloud.google.com/compute/docs/disks/hyperdisks).
5971
5970
  Note: Updating currently is only supported for hyperdisk skus via disk update
5972
5971
  api/gcloud without the need to delete and recreate the disk, hyperdisk allows
5973
5972
  for an update of IOPS every 4 hours. To update your hyperdisk more frequently,
5974
5973
  you'll need to manually delete and recreate it.
5975
5974
  :param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk.
5976
5975
  This sets the number of throughput mb per second that the disk can handle.
5977
- Values must be between 1 and 7,124. Note: Updating currently is only supported
5978
- for hyperdisk skus via disk update api/gcloud without the need to delete and
5979
- recreate the disk, hyperdisk allows for an update of throughput every 4 hours.
5980
- To update your hyperdisk more frequently, you'll need to manually delete and recreate it.
5976
+ For more details,see the [Hyperdisk documentation](https://cloud.google.com/compute/docs/disks/hyperdisks).
5977
+ Note: Updating currently is only supported for hyperdisk skus via disk update
5978
+ api/gcloud without the need to delete and recreate the disk, hyperdisk allows
5979
+ for an update of throughput every 4 hours. To update your hyperdisk more
5980
+ frequently, you'll need to manually delete and recreate it.
5981
5981
  :param pulumi.Input[Mapping[str, Any]] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
5982
5982
  :param pulumi.Input[int] size: The size of the image in gigabytes. If not specified, it
5983
5983
  will inherit the size of its base image.
@@ -6052,8 +6052,7 @@ class InstanceBootDiskInitializeParamsArgs:
6052
6052
  """
6053
6053
  Indicates how many IOPS to provision for the disk.
6054
6054
  This sets the number of I/O operations per second that the disk can handle.
6055
- Values must be between 10,000 and 120,000. For more details,see the
6056
- [Extreme persistent disk documentation](https://cloud.google.com/compute/docs/disks/extreme-persistent-disk).
6055
+ For more details,see the [Hyperdisk documentation](https://cloud.google.com/compute/docs/disks/hyperdisks).
6057
6056
  Note: Updating currently is only supported for hyperdisk skus via disk update
6058
6057
  api/gcloud without the need to delete and recreate the disk, hyperdisk allows
6059
6058
  for an update of IOPS every 4 hours. To update your hyperdisk more frequently,
@@ -6071,10 +6070,11 @@ class InstanceBootDiskInitializeParamsArgs:
6071
6070
  """
6072
6071
  Indicates how much throughput to provision for the disk.
6073
6072
  This sets the number of throughput mb per second that the disk can handle.
6074
- Values must be between 1 and 7,124. Note: Updating currently is only supported
6075
- for hyperdisk skus via disk update api/gcloud without the need to delete and
6076
- recreate the disk, hyperdisk allows for an update of throughput every 4 hours.
6077
- To update your hyperdisk more frequently, you'll need to manually delete and recreate it.
6073
+ For more details,see the [Hyperdisk documentation](https://cloud.google.com/compute/docs/disks/hyperdisks).
6074
+ Note: Updating currently is only supported for hyperdisk skus via disk update
6075
+ api/gcloud without the need to delete and recreate the disk, hyperdisk allows
6076
+ for an update of throughput every 4 hours. To update your hyperdisk more
6077
+ frequently, you'll need to manually delete and recreate it.
6078
6078
  """
6079
6079
  return pulumi.get(self, "provisioned_throughput")
6080
6080
 
@@ -6466,8 +6466,8 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
6466
6466
  :param pulumi.Input[bool] enable_confidential_compute: A flag to enable confidential compute mode on boot disk
6467
6467
  :param pulumi.Input[str] image: The image from which this disk was initialised.
6468
6468
  :param pulumi.Input[Mapping[str, Any]] labels: A set of key/value label pairs assigned to the disk.
6469
- :param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000.
6470
- :param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle. Values must be between 1 and 7,124.
6469
+ :param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle.
6470
+ :param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle.
6471
6471
  :param pulumi.Input[Mapping[str, Any]] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
6472
6472
  :param pulumi.Input[int] size: The size of the image in gigabytes.
6473
6473
  :param pulumi.Input[str] type: The Google Compute Engine disk type. Such as pd-standard, pd-ssd or pd-balanced.
@@ -6529,7 +6529,7 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
6529
6529
  @pulumi.getter(name="provisionedIops")
6530
6530
  def provisioned_iops(self) -> Optional[pulumi.Input[int]]:
6531
6531
  """
6532
- Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000.
6532
+ Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle.
6533
6533
  """
6534
6534
  return pulumi.get(self, "provisioned_iops")
6535
6535
 
@@ -6541,7 +6541,7 @@ class InstanceFromMachineImageBootDiskInitializeParamsArgs:
6541
6541
  @pulumi.getter(name="provisionedThroughput")
6542
6542
  def provisioned_throughput(self) -> Optional[pulumi.Input[int]]:
6543
6543
  """
6544
- Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle. Values must be between 1 and 7,124.
6544
+ Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle.
6545
6545
  """
6546
6546
  return pulumi.get(self, "provisioned_throughput")
6547
6547
 
@@ -8017,8 +8017,8 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
8017
8017
  :param pulumi.Input[bool] enable_confidential_compute: A flag to enable confidential compute mode on boot disk
8018
8018
  :param pulumi.Input[str] image: The image from which this disk was initialised.
8019
8019
  :param pulumi.Input[Mapping[str, Any]] labels: A set of key/value label pairs assigned to the disk.
8020
- :param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000.
8021
- :param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle. Values must be between 1 and 7,124.
8020
+ :param pulumi.Input[int] provisioned_iops: Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle.
8021
+ :param pulumi.Input[int] provisioned_throughput: Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle.
8022
8022
  :param pulumi.Input[Mapping[str, Any]] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
8023
8023
  :param pulumi.Input[int] size: The size of the image in gigabytes.
8024
8024
  :param pulumi.Input[str] type: The Google Compute Engine disk type. Such as pd-standard, pd-ssd or pd-balanced.
@@ -8080,7 +8080,7 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
8080
8080
  @pulumi.getter(name="provisionedIops")
8081
8081
  def provisioned_iops(self) -> Optional[pulumi.Input[int]]:
8082
8082
  """
8083
- Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000.
8083
+ Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle.
8084
8084
  """
8085
8085
  return pulumi.get(self, "provisioned_iops")
8086
8086
 
@@ -8092,7 +8092,7 @@ class InstanceFromTemplateBootDiskInitializeParamsArgs:
8092
8092
  @pulumi.getter(name="provisionedThroughput")
8093
8093
  def provisioned_throughput(self) -> Optional[pulumi.Input[int]]:
8094
8094
  """
8095
- Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle. Values must be between 1 and 7,124.
8095
+ Indicates how much throughput to provision for the disk. This sets the number of throughput mb per second that the disk can handle.
8096
8096
  """
8097
8097
  return pulumi.get(self, "provisioned_throughput")
8098
8098