pulumi-gcp 7.15.0a1711038061__py3-none-any.whl → 7.16.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 (83) hide show
  1. pulumi_gcp/__init__.py +102 -0
  2. pulumi_gcp/accesscontextmanager/__init__.py +1 -0
  3. pulumi_gcp/accesscontextmanager/_inputs.py +74 -58
  4. pulumi_gcp/accesscontextmanager/outputs.py +74 -58
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -2
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +345 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +80 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +86 -0
  9. pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +4 -2
  10. pulumi_gcp/apphub/__init__.py +15 -0
  11. pulumi_gcp/apphub/_inputs.py +1016 -0
  12. pulumi_gcp/apphub/application.py +775 -0
  13. pulumi_gcp/apphub/get_discovered_service.py +180 -0
  14. pulumi_gcp/apphub/get_discovered_workload.py +180 -0
  15. pulumi_gcp/apphub/outputs.py +1206 -0
  16. pulumi_gcp/apphub/service.py +1121 -0
  17. pulumi_gcp/apphub/service_project_attachment.py +516 -0
  18. pulumi_gcp/apphub/workload.py +1197 -0
  19. pulumi_gcp/cloudquota/__init__.py +10 -0
  20. pulumi_gcp/cloudquota/get_s_quota_info.py +322 -0
  21. pulumi_gcp/cloudquota/get_s_quota_infos.py +136 -0
  22. pulumi_gcp/cloudquota/outputs.py +375 -0
  23. pulumi_gcp/cloudrunv2/_inputs.py +85 -4
  24. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  25. pulumi_gcp/cloudrunv2/outputs.py +165 -6
  26. pulumi_gcp/cloudrunv2/service.py +60 -6
  27. pulumi_gcp/composer/_inputs.py +16 -0
  28. pulumi_gcp/composer/outputs.py +23 -0
  29. pulumi_gcp/compute/_inputs.py +109 -11
  30. pulumi_gcp/compute/outputs.py +144 -13
  31. pulumi_gcp/compute/region_network_endpoint_group.py +30 -0
  32. pulumi_gcp/compute/region_url_map.py +152 -0
  33. pulumi_gcp/config/__init__.pyi +4 -0
  34. pulumi_gcp/config/vars.py +8 -0
  35. pulumi_gcp/dataform/repository.py +4 -74
  36. pulumi_gcp/firebase/__init__.py +1 -0
  37. pulumi_gcp/firebase/android_app.py +41 -40
  38. pulumi_gcp/firebase/app_check_device_check_config.py +572 -0
  39. pulumi_gcp/firestore/_inputs.py +69 -0
  40. pulumi_gcp/firestore/database.py +206 -0
  41. pulumi_gcp/firestore/index.py +34 -48
  42. pulumi_gcp/firestore/outputs.py +80 -0
  43. pulumi_gcp/gkeonprem/_inputs.py +1 -3
  44. pulumi_gcp/gkeonprem/outputs.py +1 -3
  45. pulumi_gcp/gkeonprem/v_mware_cluster.py +2 -0
  46. pulumi_gcp/iap/__init__.py +5 -0
  47. pulumi_gcp/iap/_inputs.py +100 -0
  48. pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +172 -0
  49. pulumi_gcp/iap/outputs.py +76 -0
  50. pulumi_gcp/iap/tunnel_dest_group.py +524 -0
  51. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +858 -0
  52. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +858 -0
  53. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +760 -0
  54. pulumi_gcp/kms/__init__.py +1 -0
  55. pulumi_gcp/kms/_inputs.py +246 -0
  56. pulumi_gcp/kms/ekm_connection.py +610 -0
  57. pulumi_gcp/kms/outputs.py +242 -0
  58. pulumi_gcp/monitoring/_inputs.py +2 -0
  59. pulumi_gcp/monitoring/outputs.py +2 -0
  60. pulumi_gcp/networksecurity/__init__.py +1 -0
  61. pulumi_gcp/networksecurity/firewall_endpoint.py +48 -0
  62. pulumi_gcp/networksecurity/firewall_endpoint_association.py +753 -0
  63. pulumi_gcp/notebooks/instance.py +8 -0
  64. pulumi_gcp/orgpolicy/policy.py +2 -2
  65. pulumi_gcp/provider.py +40 -0
  66. pulumi_gcp/pubsub/_inputs.py +108 -0
  67. pulumi_gcp/pubsub/get_topic.py +11 -1
  68. pulumi_gcp/pubsub/outputs.py +213 -0
  69. pulumi_gcp/pubsub/subscription.py +4 -4
  70. pulumi_gcp/pubsub/topic.py +92 -0
  71. pulumi_gcp/securityposture/posture.py +2 -2
  72. pulumi_gcp/securityposture/posture_deployment.py +2 -2
  73. pulumi_gcp/storage/_inputs.py +72 -15
  74. pulumi_gcp/storage/bucket.py +54 -0
  75. pulumi_gcp/storage/get_bucket.py +11 -1
  76. pulumi_gcp/storage/outputs.py +110 -14
  77. pulumi_gcp/workstations/_inputs.py +247 -4
  78. pulumi_gcp/workstations/outputs.py +261 -5
  79. pulumi_gcp/workstations/workstation_config.py +160 -0
  80. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/METADATA +1 -1
  81. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/RECORD +83 -61
  82. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/WHEEL +0 -0
  83. {pulumi_gcp-7.15.0a1711038061.dist-info → pulumi_gcp-7.16.0.dist-info}/top_level.txt +0 -0
@@ -28,6 +28,7 @@ __all__ = [
28
28
  'JobTemplateTemplateVolume',
29
29
  'JobTemplateTemplateVolumeCloudSqlInstance',
30
30
  'JobTemplateTemplateVolumeEmptyDir',
31
+ 'JobTemplateTemplateVolumeGcs',
31
32
  'JobTemplateTemplateVolumeSecret',
32
33
  'JobTemplateTemplateVolumeSecretItem',
33
34
  'JobTemplateTemplateVpcAccess',
@@ -37,6 +38,7 @@ __all__ = [
37
38
  'ServiceCondition',
38
39
  'ServiceIamBindingCondition',
39
40
  'ServiceIamMemberCondition',
41
+ 'ServiceScaling',
40
42
  'ServiceTemplate',
41
43
  'ServiceTemplateContainer',
42
44
  'ServiceTemplateContainerEnv',
@@ -83,6 +85,7 @@ __all__ = [
83
85
  'GetJobTemplateTemplateVolumeResult',
84
86
  'GetJobTemplateTemplateVolumeCloudSqlInstanceResult',
85
87
  'GetJobTemplateTemplateVolumeEmptyDirResult',
88
+ 'GetJobTemplateTemplateVolumeGcResult',
86
89
  'GetJobTemplateTemplateVolumeSecretResult',
87
90
  'GetJobTemplateTemplateVolumeSecretItemResult',
88
91
  'GetJobTemplateTemplateVpcAccessResult',
@@ -90,6 +93,7 @@ __all__ = [
90
93
  'GetJobTerminalConditionResult',
91
94
  'GetServiceBinaryAuthorizationResult',
92
95
  'GetServiceConditionResult',
96
+ 'GetServiceScalingResult',
93
97
  'GetServiceTemplateResult',
94
98
  'GetServiceTemplateContainerResult',
95
99
  'GetServiceTemplateContainerEnvResult',
@@ -1085,6 +1089,7 @@ class JobTemplateTemplateVolume(dict):
1085
1089
  name: str,
1086
1090
  cloud_sql_instance: Optional['outputs.JobTemplateTemplateVolumeCloudSqlInstance'] = None,
1087
1091
  empty_dir: Optional['outputs.JobTemplateTemplateVolumeEmptyDir'] = None,
1092
+ gcs: Optional['outputs.JobTemplateTemplateVolumeGcs'] = None,
1088
1093
  secret: Optional['outputs.JobTemplateTemplateVolumeSecret'] = None):
1089
1094
  """
1090
1095
  :param str name: Volume's name.
@@ -1092,6 +1097,8 @@ class JobTemplateTemplateVolume(dict):
1092
1097
  Structure is documented below.
1093
1098
  :param 'JobTemplateTemplateVolumeEmptyDirArgs' empty_dir: Ephemeral storage used as a shared volume.
1094
1099
  Structure is documented below.
1100
+ :param 'JobTemplateTemplateVolumeGcsArgs' gcs: Cloud Storage bucket mounted as a volume using GCSFuse. This feature requires the launch stage to be set to ALPHA or BETA.
1101
+ Structure is documented below.
1095
1102
  :param 'JobTemplateTemplateVolumeSecretArgs' secret: Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
1096
1103
  Structure is documented below.
1097
1104
  """
@@ -1100,6 +1107,8 @@ class JobTemplateTemplateVolume(dict):
1100
1107
  pulumi.set(__self__, "cloud_sql_instance", cloud_sql_instance)
1101
1108
  if empty_dir is not None:
1102
1109
  pulumi.set(__self__, "empty_dir", empty_dir)
1110
+ if gcs is not None:
1111
+ pulumi.set(__self__, "gcs", gcs)
1103
1112
  if secret is not None:
1104
1113
  pulumi.set(__self__, "secret", secret)
1105
1114
 
@@ -1129,6 +1138,15 @@ class JobTemplateTemplateVolume(dict):
1129
1138
  """
1130
1139
  return pulumi.get(self, "empty_dir")
1131
1140
 
1141
+ @property
1142
+ @pulumi.getter
1143
+ def gcs(self) -> Optional['outputs.JobTemplateTemplateVolumeGcs']:
1144
+ """
1145
+ Cloud Storage bucket mounted as a volume using GCSFuse. This feature requires the launch stage to be set to ALPHA or BETA.
1146
+ Structure is documented below.
1147
+ """
1148
+ return pulumi.get(self, "gcs")
1149
+
1132
1150
  @property
1133
1151
  @pulumi.getter
1134
1152
  def secret(self) -> Optional['outputs.JobTemplateTemplateVolumeSecret']:
@@ -1210,6 +1228,53 @@ class JobTemplateTemplateVolumeEmptyDir(dict):
1210
1228
  return pulumi.get(self, "size_limit")
1211
1229
 
1212
1230
 
1231
+ @pulumi.output_type
1232
+ class JobTemplateTemplateVolumeGcs(dict):
1233
+ @staticmethod
1234
+ def __key_warning(key: str):
1235
+ suggest = None
1236
+ if key == "readOnly":
1237
+ suggest = "read_only"
1238
+
1239
+ if suggest:
1240
+ pulumi.log.warn(f"Key '{key}' not found in JobTemplateTemplateVolumeGcs. Access the value via the '{suggest}' property getter instead.")
1241
+
1242
+ def __getitem__(self, key: str) -> Any:
1243
+ JobTemplateTemplateVolumeGcs.__key_warning(key)
1244
+ return super().__getitem__(key)
1245
+
1246
+ def get(self, key: str, default = None) -> Any:
1247
+ JobTemplateTemplateVolumeGcs.__key_warning(key)
1248
+ return super().get(key, default)
1249
+
1250
+ def __init__(__self__, *,
1251
+ bucket: str,
1252
+ read_only: Optional[bool] = None):
1253
+ """
1254
+ :param str bucket: Name of the cloud storage bucket to back the volume. The resource service account must have permission to access the bucket.
1255
+ :param bool read_only: If true, mount this volume as read-only in all mounts. If false, mount this volume as read-write.
1256
+ """
1257
+ pulumi.set(__self__, "bucket", bucket)
1258
+ if read_only is not None:
1259
+ pulumi.set(__self__, "read_only", read_only)
1260
+
1261
+ @property
1262
+ @pulumi.getter
1263
+ def bucket(self) -> str:
1264
+ """
1265
+ Name of the cloud storage bucket to back the volume. The resource service account must have permission to access the bucket.
1266
+ """
1267
+ return pulumi.get(self, "bucket")
1268
+
1269
+ @property
1270
+ @pulumi.getter(name="readOnly")
1271
+ def read_only(self) -> Optional[bool]:
1272
+ """
1273
+ If true, mount this volume as read-only in all mounts. If false, mount this volume as read-write.
1274
+ """
1275
+ return pulumi.get(self, "read_only")
1276
+
1277
+
1213
1278
  @pulumi.output_type
1214
1279
  class JobTemplateTemplateVolumeSecret(dict):
1215
1280
  @staticmethod
@@ -1819,6 +1884,42 @@ class ServiceIamMemberCondition(dict):
1819
1884
  return pulumi.get(self, "description")
1820
1885
 
1821
1886
 
1887
+ @pulumi.output_type
1888
+ class ServiceScaling(dict):
1889
+ @staticmethod
1890
+ def __key_warning(key: str):
1891
+ suggest = None
1892
+ if key == "minInstanceCount":
1893
+ suggest = "min_instance_count"
1894
+
1895
+ if suggest:
1896
+ pulumi.log.warn(f"Key '{key}' not found in ServiceScaling. Access the value via the '{suggest}' property getter instead.")
1897
+
1898
+ def __getitem__(self, key: str) -> Any:
1899
+ ServiceScaling.__key_warning(key)
1900
+ return super().__getitem__(key)
1901
+
1902
+ def get(self, key: str, default = None) -> Any:
1903
+ ServiceScaling.__key_warning(key)
1904
+ return super().get(key, default)
1905
+
1906
+ def __init__(__self__, *,
1907
+ min_instance_count: Optional[int] = None):
1908
+ """
1909
+ :param int min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
1910
+ """
1911
+ if min_instance_count is not None:
1912
+ pulumi.set(__self__, "min_instance_count", min_instance_count)
1913
+
1914
+ @property
1915
+ @pulumi.getter(name="minInstanceCount")
1916
+ def min_instance_count(self) -> Optional[int]:
1917
+ """
1918
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
1919
+ """
1920
+ return pulumi.get(self, "min_instance_count")
1921
+
1922
+
1822
1923
  @pulumi.output_type
1823
1924
  class ServiceTemplate(dict):
1824
1925
  @staticmethod
@@ -3086,7 +3187,7 @@ class ServiceTemplateScaling(dict):
3086
3187
  min_instance_count: Optional[int] = None):
3087
3188
  """
3088
3189
  :param int max_instance_count: Maximum number of serving instances that this resource should have.
3089
- :param int min_instance_count: Minimum number of serving instances that this resource should have.
3190
+ :param int min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
3090
3191
  """
3091
3192
  if max_instance_count is not None:
3092
3193
  pulumi.set(__self__, "max_instance_count", max_instance_count)
@@ -3105,7 +3206,7 @@ class ServiceTemplateScaling(dict):
3105
3206
  @pulumi.getter(name="minInstanceCount")
3106
3207
  def min_instance_count(self) -> Optional[int]:
3107
3208
  """
3108
- Minimum number of serving instances that this resource should have.
3209
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
3109
3210
  """
3110
3211
  return pulumi.get(self, "min_instance_count")
3111
3212
 
@@ -3144,7 +3245,7 @@ class ServiceTemplateVolume(dict):
3144
3245
  Structure is documented below.
3145
3246
  :param 'ServiceTemplateVolumeEmptyDirArgs' empty_dir: Ephemeral storage used as a shared volume.
3146
3247
  Structure is documented below.
3147
- :param 'ServiceTemplateVolumeGcsArgs' gcs: Represents a GCS Bucket mounted as a volume.
3248
+ :param 'ServiceTemplateVolumeGcsArgs' gcs: Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment and requires launch-stage to be set to ALPHA or BETA.
3148
3249
  Structure is documented below.
3149
3250
  :param 'ServiceTemplateVolumeNfsArgs' nfs: Represents an NFS mount.
3150
3251
  Structure is documented below.
@@ -3193,7 +3294,7 @@ class ServiceTemplateVolume(dict):
3193
3294
  @pulumi.getter
3194
3295
  def gcs(self) -> Optional['outputs.ServiceTemplateVolumeGcs']:
3195
3296
  """
3196
- Represents a GCS Bucket mounted as a volume.
3297
+ Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment and requires launch-stage to be set to ALPHA or BETA.
3197
3298
  Structure is documented below.
3198
3299
  """
3199
3300
  return pulumi.get(self, "gcs")
@@ -4520,16 +4621,19 @@ class GetJobTemplateTemplateVolumeResult(dict):
4520
4621
  def __init__(__self__, *,
4521
4622
  cloud_sql_instances: Sequence['outputs.GetJobTemplateTemplateVolumeCloudSqlInstanceResult'],
4522
4623
  empty_dirs: Sequence['outputs.GetJobTemplateTemplateVolumeEmptyDirResult'],
4624
+ gcs: Sequence['outputs.GetJobTemplateTemplateVolumeGcResult'],
4523
4625
  name: str,
4524
4626
  secrets: Sequence['outputs.GetJobTemplateTemplateVolumeSecretResult']):
4525
4627
  """
4526
4628
  :param Sequence['GetJobTemplateTemplateVolumeCloudSqlInstanceArgs'] cloud_sql_instances: For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run.
4527
4629
  :param Sequence['GetJobTemplateTemplateVolumeEmptyDirArgs'] empty_dirs: Ephemeral storage used as a shared volume.
4630
+ :param Sequence['GetJobTemplateTemplateVolumeGcArgs'] gcs: Cloud Storage bucket mounted as a volume using GCSFuse. This feature requires the launch stage to be set to ALPHA or BETA.
4528
4631
  :param str name: The name of the Cloud Run v2 Job.
4529
4632
  :param Sequence['GetJobTemplateTemplateVolumeSecretArgs'] secrets: Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
4530
4633
  """
4531
4634
  pulumi.set(__self__, "cloud_sql_instances", cloud_sql_instances)
4532
4635
  pulumi.set(__self__, "empty_dirs", empty_dirs)
4636
+ pulumi.set(__self__, "gcs", gcs)
4533
4637
  pulumi.set(__self__, "name", name)
4534
4638
  pulumi.set(__self__, "secrets", secrets)
4535
4639
 
@@ -4549,6 +4653,14 @@ class GetJobTemplateTemplateVolumeResult(dict):
4549
4653
  """
4550
4654
  return pulumi.get(self, "empty_dirs")
4551
4655
 
4656
+ @property
4657
+ @pulumi.getter
4658
+ def gcs(self) -> Sequence['outputs.GetJobTemplateTemplateVolumeGcResult']:
4659
+ """
4660
+ Cloud Storage bucket mounted as a volume using GCSFuse. This feature requires the launch stage to be set to ALPHA or BETA.
4661
+ """
4662
+ return pulumi.get(self, "gcs")
4663
+
4552
4664
  @property
4553
4665
  @pulumi.getter
4554
4666
  def name(self) -> str:
@@ -4613,6 +4725,35 @@ class GetJobTemplateTemplateVolumeEmptyDirResult(dict):
4613
4725
  return pulumi.get(self, "size_limit")
4614
4726
 
4615
4727
 
4728
+ @pulumi.output_type
4729
+ class GetJobTemplateTemplateVolumeGcResult(dict):
4730
+ def __init__(__self__, *,
4731
+ bucket: str,
4732
+ read_only: bool):
4733
+ """
4734
+ :param str bucket: Name of the cloud storage bucket to back the volume. The resource service account must have permission to access the bucket.
4735
+ :param bool read_only: If true, mount this volume as read-only in all mounts. If false, mount this volume as read-write.
4736
+ """
4737
+ pulumi.set(__self__, "bucket", bucket)
4738
+ pulumi.set(__self__, "read_only", read_only)
4739
+
4740
+ @property
4741
+ @pulumi.getter
4742
+ def bucket(self) -> str:
4743
+ """
4744
+ Name of the cloud storage bucket to back the volume. The resource service account must have permission to access the bucket.
4745
+ """
4746
+ return pulumi.get(self, "bucket")
4747
+
4748
+ @property
4749
+ @pulumi.getter(name="readOnly")
4750
+ def read_only(self) -> bool:
4751
+ """
4752
+ If true, mount this volume as read-only in all mounts. If false, mount this volume as read-write.
4753
+ """
4754
+ return pulumi.get(self, "read_only")
4755
+
4756
+
4616
4757
  @pulumi.output_type
4617
4758
  class GetJobTemplateTemplateVolumeSecretResult(dict):
4618
4759
  def __init__(__self__, *,
@@ -5008,6 +5149,24 @@ class GetServiceConditionResult(dict):
5008
5149
  return pulumi.get(self, "type")
5009
5150
 
5010
5151
 
5152
+ @pulumi.output_type
5153
+ class GetServiceScalingResult(dict):
5154
+ def __init__(__self__, *,
5155
+ min_instance_count: int):
5156
+ """
5157
+ :param int min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
5158
+ """
5159
+ pulumi.set(__self__, "min_instance_count", min_instance_count)
5160
+
5161
+ @property
5162
+ @pulumi.getter(name="minInstanceCount")
5163
+ def min_instance_count(self) -> int:
5164
+ """
5165
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
5166
+ """
5167
+ return pulumi.get(self, "min_instance_count")
5168
+
5169
+
5011
5170
  @pulumi.output_type
5012
5171
  class GetServiceTemplateResult(dict):
5013
5172
  def __init__(__self__, *,
@@ -5973,7 +6132,7 @@ class GetServiceTemplateVolumeResult(dict):
5973
6132
  """
5974
6133
  :param Sequence['GetServiceTemplateVolumeCloudSqlInstanceArgs'] cloud_sql_instances: For Cloud SQL volumes, contains the specific instances that should be mounted. Visit https://cloud.google.com/sql/docs/mysql/connect-run for more information on how to connect Cloud SQL and Cloud Run.
5975
6134
  :param Sequence['GetServiceTemplateVolumeEmptyDirArgs'] empty_dirs: Ephemeral storage used as a shared volume.
5976
- :param Sequence['GetServiceTemplateVolumeGcArgs'] gcs: Represents a GCS Bucket mounted as a volume.
6135
+ :param Sequence['GetServiceTemplateVolumeGcArgs'] gcs: Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment and requires launch-stage to be set to ALPHA or BETA.
5977
6136
  :param str name: The name of the Cloud Run v2 Service.
5978
6137
  :param Sequence['GetServiceTemplateVolumeNfArgs'] nfs: Represents an NFS mount.
5979
6138
  :param Sequence['GetServiceTemplateVolumeSecretArgs'] secrets: Secret represents a secret that should populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret
@@ -6005,7 +6164,7 @@ class GetServiceTemplateVolumeResult(dict):
6005
6164
  @pulumi.getter
6006
6165
  def gcs(self) -> Sequence['outputs.GetServiceTemplateVolumeGcResult']:
6007
6166
  """
6008
- Represents a GCS Bucket mounted as a volume.
6167
+ Cloud Storage bucket mounted as a volume using GCSFuse. This feature is only supported in the gen2 execution environment and requires launch-stage to be set to ALPHA or BETA.
6009
6168
  """
6010
6169
  return pulumi.get(self, "gcs")
6011
6170
 
@@ -29,6 +29,7 @@ class ServiceArgs:
29
29
  launch_stage: Optional[pulumi.Input[str]] = None,
30
30
  name: Optional[pulumi.Input[str]] = None,
31
31
  project: Optional[pulumi.Input[str]] = None,
32
+ scaling: Optional[pulumi.Input['ServiceScalingArgs']] = None,
32
33
  traffics: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceTrafficArgs']]]] = None):
33
34
  """
34
35
  The set of arguments for constructing a Service resource.
@@ -63,6 +64,8 @@ class ServiceArgs:
63
64
  :param pulumi.Input[str] name: Name of the Service.
64
65
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
65
66
  If it is not provided, the provider project is used.
67
+ :param pulumi.Input['ServiceScalingArgs'] scaling: Scaling settings that apply to the whole service
68
+ Structure is documented below.
66
69
  :param pulumi.Input[Sequence[pulumi.Input['ServiceTrafficArgs']]] traffics: Specifies how to distribute traffic over a collection of Revisions belonging to the Service. If traffic is empty or not provided, defaults to 100%!t(MISSING)raffic to the latest Ready Revision.
67
70
  Structure is documented below.
68
71
  """
@@ -90,6 +93,8 @@ class ServiceArgs:
90
93
  pulumi.set(__self__, "name", name)
91
94
  if project is not None:
92
95
  pulumi.set(__self__, "project", project)
96
+ if scaling is not None:
97
+ pulumi.set(__self__, "scaling", scaling)
93
98
  if traffics is not None:
94
99
  pulumi.set(__self__, "traffics", traffics)
95
100
 
@@ -267,6 +272,19 @@ class ServiceArgs:
267
272
  def project(self, value: Optional[pulumi.Input[str]]):
268
273
  pulumi.set(self, "project", value)
269
274
 
275
+ @property
276
+ @pulumi.getter
277
+ def scaling(self) -> Optional[pulumi.Input['ServiceScalingArgs']]:
278
+ """
279
+ Scaling settings that apply to the whole service
280
+ Structure is documented below.
281
+ """
282
+ return pulumi.get(self, "scaling")
283
+
284
+ @scaling.setter
285
+ def scaling(self, value: Optional[pulumi.Input['ServiceScalingArgs']]):
286
+ pulumi.set(self, "scaling", value)
287
+
270
288
  @property
271
289
  @pulumi.getter
272
290
  def traffics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServiceTrafficArgs']]]]:
@@ -311,6 +329,7 @@ class _ServiceState:
311
329
  project: Optional[pulumi.Input[str]] = None,
312
330
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
313
331
  reconciling: Optional[pulumi.Input[bool]] = None,
332
+ scaling: Optional[pulumi.Input['ServiceScalingArgs']] = None,
314
333
  template: Optional[pulumi.Input['ServiceTemplateArgs']] = None,
315
334
  terminal_conditions: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceTerminalConditionArgs']]]] = None,
316
335
  traffic_statuses: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceTrafficStatusArgs']]]] = None,
@@ -370,6 +389,8 @@ class _ServiceState:
370
389
  When a new Service is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Service to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri 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 serving state matches the Service, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state.
371
390
  If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision.
372
391
  If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created Services. Additional information on the failure can be found in terminalCondition and conditions.
392
+ :param pulumi.Input['ServiceScalingArgs'] scaling: Scaling settings that apply to the whole service
393
+ Structure is documented below.
373
394
  :param pulumi.Input['ServiceTemplateArgs'] template: The template used to create revisions for this Service.
374
395
  Structure is documented below.
375
396
  :param pulumi.Input[Sequence[pulumi.Input['ServiceTerminalConditionArgs']]] terminal_conditions: The Condition of this Service, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run.
@@ -437,6 +458,8 @@ class _ServiceState:
437
458
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
438
459
  if reconciling is not None:
439
460
  pulumi.set(__self__, "reconciling", reconciling)
461
+ if scaling is not None:
462
+ pulumi.set(__self__, "scaling", scaling)
440
463
  if template is not None:
441
464
  pulumi.set(__self__, "template", template)
442
465
  if terminal_conditions is not None:
@@ -799,6 +822,19 @@ class _ServiceState:
799
822
  def reconciling(self, value: Optional[pulumi.Input[bool]]):
800
823
  pulumi.set(self, "reconciling", value)
801
824
 
825
+ @property
826
+ @pulumi.getter
827
+ def scaling(self) -> Optional[pulumi.Input['ServiceScalingArgs']]:
828
+ """
829
+ Scaling settings that apply to the whole service
830
+ Structure is documented below.
831
+ """
832
+ return pulumi.get(self, "scaling")
833
+
834
+ @scaling.setter
835
+ def scaling(self, value: Optional[pulumi.Input['ServiceScalingArgs']]):
836
+ pulumi.set(self, "scaling", value)
837
+
802
838
  @property
803
839
  @pulumi.getter
804
840
  def template(self) -> Optional[pulumi.Input['ServiceTemplateArgs']]:
@@ -906,6 +942,7 @@ class Service(pulumi.CustomResource):
906
942
  location: Optional[pulumi.Input[str]] = None,
907
943
  name: Optional[pulumi.Input[str]] = None,
908
944
  project: Optional[pulumi.Input[str]] = None,
945
+ scaling: Optional[pulumi.Input[pulumi.InputType['ServiceScalingArgs']]] = None,
909
946
  template: Optional[pulumi.Input[pulumi.InputType['ServiceTemplateArgs']]] = None,
910
947
  traffics: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServiceTrafficArgs']]]]] = None,
911
948
  __props__=None):
@@ -1194,9 +1231,9 @@ class Service(pulumi.CustomResource):
1194
1231
  containers=[
1195
1232
  gcp.cloudrunv2.ServiceTemplateContainerArgs(
1196
1233
  name="hello-1",
1197
- ports=[gcp.cloudrunv2.ServiceTemplateContainerPortArgs(
1198
- container_port=8080,
1199
- )],
1234
+ ports={
1235
+ "containerPort": 8080,
1236
+ },
1200
1237
  image="us-docker.pkg.dev/cloudrun/container/hello",
1201
1238
  depends_ons=["hello-2"],
1202
1239
  volume_mounts=[gcp.cloudrunv2.ServiceTemplateContainerVolumeMountArgs(
@@ -1367,6 +1404,8 @@ class Service(pulumi.CustomResource):
1367
1404
  :param pulumi.Input[str] name: Name of the Service.
1368
1405
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
1369
1406
  If it is not provided, the provider project is used.
1407
+ :param pulumi.Input[pulumi.InputType['ServiceScalingArgs']] scaling: Scaling settings that apply to the whole service
1408
+ Structure is documented below.
1370
1409
  :param pulumi.Input[pulumi.InputType['ServiceTemplateArgs']] template: The template used to create revisions for this Service.
1371
1410
  Structure is documented below.
1372
1411
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServiceTrafficArgs']]]] traffics: Specifies how to distribute traffic over a collection of Revisions belonging to the Service. If traffic is empty or not provided, defaults to 100%!t(MISSING)raffic to the latest Ready Revision.
@@ -1663,9 +1702,9 @@ class Service(pulumi.CustomResource):
1663
1702
  containers=[
1664
1703
  gcp.cloudrunv2.ServiceTemplateContainerArgs(
1665
1704
  name="hello-1",
1666
- ports=[gcp.cloudrunv2.ServiceTemplateContainerPortArgs(
1667
- container_port=8080,
1668
- )],
1705
+ ports={
1706
+ "containerPort": 8080,
1707
+ },
1669
1708
  image="us-docker.pkg.dev/cloudrun/container/hello",
1670
1709
  depends_ons=["hello-2"],
1671
1710
  volume_mounts=[gcp.cloudrunv2.ServiceTemplateContainerVolumeMountArgs(
@@ -1832,6 +1871,7 @@ class Service(pulumi.CustomResource):
1832
1871
  location: Optional[pulumi.Input[str]] = None,
1833
1872
  name: Optional[pulumi.Input[str]] = None,
1834
1873
  project: Optional[pulumi.Input[str]] = None,
1874
+ scaling: Optional[pulumi.Input[pulumi.InputType['ServiceScalingArgs']]] = None,
1835
1875
  template: Optional[pulumi.Input[pulumi.InputType['ServiceTemplateArgs']]] = None,
1836
1876
  traffics: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServiceTrafficArgs']]]]] = None,
1837
1877
  __props__=None):
@@ -1857,6 +1897,7 @@ class Service(pulumi.CustomResource):
1857
1897
  __props__.__dict__["location"] = location
1858
1898
  __props__.__dict__["name"] = name
1859
1899
  __props__.__dict__["project"] = project
1900
+ __props__.__dict__["scaling"] = scaling
1860
1901
  if template is None and not opts.urn:
1861
1902
  raise TypeError("Missing required property 'template'")
1862
1903
  __props__.__dict__["template"] = template
@@ -1920,6 +1961,7 @@ class Service(pulumi.CustomResource):
1920
1961
  project: Optional[pulumi.Input[str]] = None,
1921
1962
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1922
1963
  reconciling: Optional[pulumi.Input[bool]] = None,
1964
+ scaling: Optional[pulumi.Input[pulumi.InputType['ServiceScalingArgs']]] = None,
1923
1965
  template: Optional[pulumi.Input[pulumi.InputType['ServiceTemplateArgs']]] = None,
1924
1966
  terminal_conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServiceTerminalConditionArgs']]]]] = None,
1925
1967
  traffic_statuses: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServiceTrafficStatusArgs']]]]] = None,
@@ -1984,6 +2026,8 @@ class Service(pulumi.CustomResource):
1984
2026
  When a new Service is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Service to the desired serving state. This process is called reconciliation. While reconciliation is in process, observedGeneration, latest_ready_revison, trafficStatuses, and uri 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 serving state matches the Service, or there was an error, and reconciliation failed. This state can be found in terminalCondition.state.
1985
2027
  If reconciliation succeeded, the following fields will match: traffic and trafficStatuses, observedGeneration and generation, latestReadyRevision and latestCreatedRevision.
1986
2028
  If reconciliation failed, trafficStatuses, observedGeneration, and latestReadyRevision will have the state of the last serving revision, or empty for newly created Services. Additional information on the failure can be found in terminalCondition and conditions.
2029
+ :param pulumi.Input[pulumi.InputType['ServiceScalingArgs']] scaling: Scaling settings that apply to the whole service
2030
+ Structure is documented below.
1987
2031
  :param pulumi.Input[pulumi.InputType['ServiceTemplateArgs']] template: The template used to create revisions for this Service.
1988
2032
  Structure is documented below.
1989
2033
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ServiceTerminalConditionArgs']]]] terminal_conditions: The Condition of this Service, containing its readiness status, and detailed error information in case it did not reach a serving state. See comments in reconciling for additional information on reconciliation process in Cloud Run.
@@ -2028,6 +2072,7 @@ class Service(pulumi.CustomResource):
2028
2072
  __props__.__dict__["project"] = project
2029
2073
  __props__.__dict__["pulumi_labels"] = pulumi_labels
2030
2074
  __props__.__dict__["reconciling"] = reconciling
2075
+ __props__.__dict__["scaling"] = scaling
2031
2076
  __props__.__dict__["template"] = template
2032
2077
  __props__.__dict__["terminal_conditions"] = terminal_conditions
2033
2078
  __props__.__dict__["traffic_statuses"] = traffic_statuses
@@ -2276,6 +2321,15 @@ class Service(pulumi.CustomResource):
2276
2321
  """
2277
2322
  return pulumi.get(self, "reconciling")
2278
2323
 
2324
+ @property
2325
+ @pulumi.getter
2326
+ def scaling(self) -> pulumi.Output[Optional['outputs.ServiceScaling']]:
2327
+ """
2328
+ Scaling settings that apply to the whole service
2329
+ Structure is documented below.
2330
+ """
2331
+ return pulumi.get(self, "scaling")
2332
+
2279
2333
  @property
2280
2334
  @pulumi.getter
2281
2335
  def template(self) -> pulumi.Output['outputs.ServiceTemplate']:
@@ -1458,14 +1458,18 @@ class EnvironmentConfigWorkloadsConfigArgs:
1458
1458
  @pulumi.input_type
1459
1459
  class EnvironmentConfigWorkloadsConfigDagProcessorArgs:
1460
1460
  def __init__(__self__, *,
1461
+ count: Optional[pulumi.Input[int]] = None,
1461
1462
  cpu: Optional[pulumi.Input[float]] = None,
1462
1463
  memory_gb: Optional[pulumi.Input[float]] = None,
1463
1464
  storage_gb: Optional[pulumi.Input[float]] = None):
1464
1465
  """
1466
+ :param pulumi.Input[int] count: Number of DAG processors.
1465
1467
  :param pulumi.Input[float] cpu: CPU request and limit for DAG processor.
1466
1468
  :param pulumi.Input[float] memory_gb: Memory (GB) request and limit for DAG processor.
1467
1469
  :param pulumi.Input[float] storage_gb: Storage (GB) request and limit for DAG processor.
1468
1470
  """
1471
+ if count is not None:
1472
+ pulumi.set(__self__, "count", count)
1469
1473
  if cpu is not None:
1470
1474
  pulumi.set(__self__, "cpu", cpu)
1471
1475
  if memory_gb is not None:
@@ -1473,6 +1477,18 @@ class EnvironmentConfigWorkloadsConfigDagProcessorArgs:
1473
1477
  if storage_gb is not None:
1474
1478
  pulumi.set(__self__, "storage_gb", storage_gb)
1475
1479
 
1480
+ @property
1481
+ @pulumi.getter
1482
+ def count(self) -> Optional[pulumi.Input[int]]:
1483
+ """
1484
+ Number of DAG processors.
1485
+ """
1486
+ return pulumi.get(self, "count")
1487
+
1488
+ @count.setter
1489
+ def count(self, value: Optional[pulumi.Input[int]]):
1490
+ pulumi.set(self, "count", value)
1491
+
1476
1492
  @property
1477
1493
  @pulumi.getter
1478
1494
  def cpu(self) -> Optional[pulumi.Input[float]]:
@@ -1569,14 +1569,18 @@ class EnvironmentConfigWorkloadsConfigDagProcessor(dict):
1569
1569
  return super().get(key, default)
1570
1570
 
1571
1571
  def __init__(__self__, *,
1572
+ count: Optional[int] = None,
1572
1573
  cpu: Optional[float] = None,
1573
1574
  memory_gb: Optional[float] = None,
1574
1575
  storage_gb: Optional[float] = None):
1575
1576
  """
1577
+ :param int count: Number of DAG processors.
1576
1578
  :param float cpu: CPU request and limit for DAG processor.
1577
1579
  :param float memory_gb: Memory (GB) request and limit for DAG processor.
1578
1580
  :param float storage_gb: Storage (GB) request and limit for DAG processor.
1579
1581
  """
1582
+ if count is not None:
1583
+ pulumi.set(__self__, "count", count)
1580
1584
  if cpu is not None:
1581
1585
  pulumi.set(__self__, "cpu", cpu)
1582
1586
  if memory_gb is not None:
@@ -1584,6 +1588,14 @@ class EnvironmentConfigWorkloadsConfigDagProcessor(dict):
1584
1588
  if storage_gb is not None:
1585
1589
  pulumi.set(__self__, "storage_gb", storage_gb)
1586
1590
 
1591
+ @property
1592
+ @pulumi.getter
1593
+ def count(self) -> Optional[int]:
1594
+ """
1595
+ Number of DAG processors.
1596
+ """
1597
+ return pulumi.get(self, "count")
1598
+
1587
1599
  @property
1588
1600
  @pulumi.getter
1589
1601
  def cpu(self) -> Optional[float]:
@@ -2937,18 +2949,29 @@ class GetEnvironmentConfigWorkloadsConfigResult(dict):
2937
2949
  @pulumi.output_type
2938
2950
  class GetEnvironmentConfigWorkloadsConfigDagProcessorResult(dict):
2939
2951
  def __init__(__self__, *,
2952
+ count: int,
2940
2953
  cpu: float,
2941
2954
  memory_gb: float,
2942
2955
  storage_gb: float):
2943
2956
  """
2957
+ :param int count: Number of DAG processors.
2944
2958
  :param float cpu: CPU request and limit for DAG processor.
2945
2959
  :param float memory_gb: Memory (GB) request and limit for DAG processor.
2946
2960
  :param float storage_gb: Storage (GB) request and limit for DAG processor.
2947
2961
  """
2962
+ pulumi.set(__self__, "count", count)
2948
2963
  pulumi.set(__self__, "cpu", cpu)
2949
2964
  pulumi.set(__self__, "memory_gb", memory_gb)
2950
2965
  pulumi.set(__self__, "storage_gb", storage_gb)
2951
2966
 
2967
+ @property
2968
+ @pulumi.getter
2969
+ def count(self) -> int:
2970
+ """
2971
+ Number of DAG processors.
2972
+ """
2973
+ return pulumi.get(self, "count")
2974
+
2952
2975
  @property
2953
2976
  @pulumi.getter
2954
2977
  def cpu(self) -> float: