pulumi-gcp 8.12.0a1734458205__py3-none-any.whl → 8.12.0a1734479918__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 (48) hide show
  1. pulumi_gcp/__init__.py +32 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +0 -29
  3. pulumi_gcp/accesscontextmanager/outputs.py +0 -18
  4. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -36
  5. pulumi_gcp/artifactregistry/get_repository_iam_policy.py +12 -4
  6. pulumi_gcp/artifactregistry/repository.py +86 -39
  7. pulumi_gcp/artifactregistry/repository_iam_binding.py +42 -14
  8. pulumi_gcp/artifactregistry/repository_iam_member.py +42 -14
  9. pulumi_gcp/artifactregistry/repository_iam_policy.py +42 -14
  10. pulumi_gcp/compute/get_global_forwarding_rule.py +12 -1
  11. pulumi_gcp/compute/global_forwarding_rule.py +114 -2
  12. pulumi_gcp/compute/project_cloud_armor_tier.py +7 -7
  13. pulumi_gcp/firebase/_inputs.py +99 -0
  14. pulumi_gcp/firebase/database_instance.py +24 -6
  15. pulumi_gcp/firebase/hosting_version.py +96 -0
  16. pulumi_gcp/firebase/outputs.py +59 -0
  17. pulumi_gcp/firebase/project.py +6 -6
  18. pulumi_gcp/identityplatform/_inputs.py +6 -6
  19. pulumi_gcp/identityplatform/config.py +2 -2
  20. pulumi_gcp/identityplatform/outputs.py +4 -4
  21. pulumi_gcp/looker/instance.py +35 -14
  22. pulumi_gcp/networkconnectivity/_inputs.py +10 -12
  23. pulumi_gcp/networkconnectivity/outputs.py +6 -8
  24. pulumi_gcp/networksecurity/__init__.py +3 -0
  25. pulumi_gcp/networksecurity/_inputs.py +1903 -0
  26. pulumi_gcp/networksecurity/authz_policy.py +1008 -0
  27. pulumi_gcp/networksecurity/intercept_deployment.py +846 -0
  28. pulumi_gcp/networksecurity/intercept_deployment_group.py +752 -0
  29. pulumi_gcp/networksecurity/outputs.py +1393 -0
  30. pulumi_gcp/networkservices/__init__.py +1 -0
  31. pulumi_gcp/networkservices/authz_extension.py +1080 -0
  32. pulumi_gcp/oracledatabase/autonomous_database.py +4 -4
  33. pulumi_gcp/orgpolicy/_inputs.py +40 -0
  34. pulumi_gcp/orgpolicy/outputs.py +24 -0
  35. pulumi_gcp/orgpolicy/policy.py +64 -8
  36. pulumi_gcp/pulumi-plugin.json +1 -1
  37. pulumi_gcp/sql/_inputs.py +3 -3
  38. pulumi_gcp/sql/database_instance.py +14 -14
  39. pulumi_gcp/sql/outputs.py +2 -2
  40. pulumi_gcp/storage/_inputs.py +53 -6
  41. pulumi_gcp/storage/outputs.py +33 -4
  42. pulumi_gcp/tpu/_inputs.py +26 -18
  43. pulumi_gcp/tpu/outputs.py +18 -12
  44. pulumi_gcp/tpu/v2_vm.py +63 -0
  45. {pulumi_gcp-8.12.0a1734458205.dist-info → pulumi_gcp-8.12.0a1734479918.dist-info}/METADATA +1 -1
  46. {pulumi_gcp-8.12.0a1734458205.dist-info → pulumi_gcp-8.12.0a1734479918.dist-info}/RECORD +48 -44
  47. {pulumi_gcp-8.12.0a1734458205.dist-info → pulumi_gcp-8.12.0a1734479918.dist-info}/WHEEL +0 -0
  48. {pulumi_gcp-8.12.0a1734458205.dist-info → pulumi_gcp-8.12.0a1734479918.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py CHANGED
@@ -6478,6 +6478,14 @@ _utilities.register(
6478
6478
  "gcp:networksecurity/authorizationPolicy:AuthorizationPolicy": "AuthorizationPolicy"
6479
6479
  }
6480
6480
  },
6481
+ {
6482
+ "pkg": "gcp",
6483
+ "mod": "networksecurity/authzPolicy",
6484
+ "fqn": "pulumi_gcp.networksecurity",
6485
+ "classes": {
6486
+ "gcp:networksecurity/authzPolicy:AuthzPolicy": "AuthzPolicy"
6487
+ }
6488
+ },
6481
6489
  {
6482
6490
  "pkg": "gcp",
6483
6491
  "mod": "networksecurity/clientTlsPolicy",
@@ -6518,6 +6526,22 @@ _utilities.register(
6518
6526
  "gcp:networksecurity/gatewaySecurityPolicyRule:GatewaySecurityPolicyRule": "GatewaySecurityPolicyRule"
6519
6527
  }
6520
6528
  },
6529
+ {
6530
+ "pkg": "gcp",
6531
+ "mod": "networksecurity/interceptDeployment",
6532
+ "fqn": "pulumi_gcp.networksecurity",
6533
+ "classes": {
6534
+ "gcp:networksecurity/interceptDeployment:InterceptDeployment": "InterceptDeployment"
6535
+ }
6536
+ },
6537
+ {
6538
+ "pkg": "gcp",
6539
+ "mod": "networksecurity/interceptDeploymentGroup",
6540
+ "fqn": "pulumi_gcp.networksecurity",
6541
+ "classes": {
6542
+ "gcp:networksecurity/interceptDeploymentGroup:InterceptDeploymentGroup": "InterceptDeploymentGroup"
6543
+ }
6544
+ },
6521
6545
  {
6522
6546
  "pkg": "gcp",
6523
6547
  "mod": "networksecurity/mirroringDeployment",
@@ -6590,6 +6614,14 @@ _utilities.register(
6590
6614
  "gcp:networksecurity/urlList:UrlList": "UrlList"
6591
6615
  }
6592
6616
  },
6617
+ {
6618
+ "pkg": "gcp",
6619
+ "mod": "networkservices/authzExtension",
6620
+ "fqn": "pulumi_gcp.networkservices",
6621
+ "classes": {
6622
+ "gcp:networkservices/authzExtension:AuthzExtension": "AuthzExtension"
6623
+ }
6624
+ },
6593
6625
  {
6594
6626
  "pkg": "gcp",
6595
6627
  "mod": "networkservices/edgeCacheKeyset",
@@ -6054,13 +6054,6 @@ if not MYPY:
6054
6054
  Description of the ServicePerimeter and its use. Does not affect
6055
6055
  behavior.
6056
6056
  """
6057
- etag: NotRequired[pulumi.Input[str]]
6058
- """
6059
- (Output)
6060
- An opaque identifier for the current version of the ServicePerimeter. This
6061
- identifier does not follow any specific format. If an etag is not provided, the
6062
- operation will be performed as if a valid etag is provided.
6063
- """
6064
6057
  perimeter_type: NotRequired[pulumi.Input[str]]
6065
6058
  """
6066
6059
  Specifies the type of the Perimeter. There are two types: regular and
@@ -6122,7 +6115,6 @@ class ServicePerimetersServicePerimeterArgs:
6122
6115
  title: pulumi.Input[str],
6123
6116
  create_time: Optional[pulumi.Input[str]] = None,
6124
6117
  description: Optional[pulumi.Input[str]] = None,
6125
- etag: Optional[pulumi.Input[str]] = None,
6126
6118
  perimeter_type: Optional[pulumi.Input[str]] = None,
6127
6119
  spec: Optional[pulumi.Input['ServicePerimetersServicePerimeterSpecArgs']] = None,
6128
6120
  status: Optional[pulumi.Input['ServicePerimetersServicePerimeterStatusArgs']] = None,
@@ -6137,10 +6129,6 @@ class ServicePerimetersServicePerimeterArgs:
6137
6129
  Time the AccessPolicy was created in UTC.
6138
6130
  :param pulumi.Input[str] description: Description of the ServicePerimeter and its use. Does not affect
6139
6131
  behavior.
6140
- :param pulumi.Input[str] etag: (Output)
6141
- An opaque identifier for the current version of the ServicePerimeter. This
6142
- identifier does not follow any specific format. If an etag is not provided, the
6143
- operation will be performed as if a valid etag is provided.
6144
6132
  :param pulumi.Input[str] perimeter_type: Specifies the type of the Perimeter. There are two types: regular and
6145
6133
  bridge. Regular Service Perimeter contains resources, access levels,
6146
6134
  and restricted services. Every resource can be in at most
@@ -6184,8 +6172,6 @@ class ServicePerimetersServicePerimeterArgs:
6184
6172
  pulumi.set(__self__, "create_time", create_time)
6185
6173
  if description is not None:
6186
6174
  pulumi.set(__self__, "description", description)
6187
- if etag is not None:
6188
- pulumi.set(__self__, "etag", etag)
6189
6175
  if perimeter_type is not None:
6190
6176
  pulumi.set(__self__, "perimeter_type", perimeter_type)
6191
6177
  if spec is not None:
@@ -6249,21 +6235,6 @@ class ServicePerimetersServicePerimeterArgs:
6249
6235
  def description(self, value: Optional[pulumi.Input[str]]):
6250
6236
  pulumi.set(self, "description", value)
6251
6237
 
6252
- @property
6253
- @pulumi.getter
6254
- def etag(self) -> Optional[pulumi.Input[str]]:
6255
- """
6256
- (Output)
6257
- An opaque identifier for the current version of the ServicePerimeter. This
6258
- identifier does not follow any specific format. If an etag is not provided, the
6259
- operation will be performed as if a valid etag is provided.
6260
- """
6261
- return pulumi.get(self, "etag")
6262
-
6263
- @etag.setter
6264
- def etag(self, value: Optional[pulumi.Input[str]]):
6265
- pulumi.set(self, "etag", value)
6266
-
6267
6238
  @property
6268
6239
  @pulumi.getter(name="perimeterType")
6269
6240
  def perimeter_type(self) -> Optional[pulumi.Input[str]]:
@@ -4683,7 +4683,6 @@ class ServicePerimetersServicePerimeter(dict):
4683
4683
  title: str,
4684
4684
  create_time: Optional[str] = None,
4685
4685
  description: Optional[str] = None,
4686
- etag: Optional[str] = None,
4687
4686
  perimeter_type: Optional[str] = None,
4688
4687
  spec: Optional['outputs.ServicePerimetersServicePerimeterSpec'] = None,
4689
4688
  status: Optional['outputs.ServicePerimetersServicePerimeterStatus'] = None,
@@ -4698,10 +4697,6 @@ class ServicePerimetersServicePerimeter(dict):
4698
4697
  Time the AccessPolicy was created in UTC.
4699
4698
  :param str description: Description of the ServicePerimeter and its use. Does not affect
4700
4699
  behavior.
4701
- :param str etag: (Output)
4702
- An opaque identifier for the current version of the ServicePerimeter. This
4703
- identifier does not follow any specific format. If an etag is not provided, the
4704
- operation will be performed as if a valid etag is provided.
4705
4700
  :param str perimeter_type: Specifies the type of the Perimeter. There are two types: regular and
4706
4701
  bridge. Regular Service Perimeter contains resources, access levels,
4707
4702
  and restricted services. Every resource can be in at most
@@ -4745,8 +4740,6 @@ class ServicePerimetersServicePerimeter(dict):
4745
4740
  pulumi.set(__self__, "create_time", create_time)
4746
4741
  if description is not None:
4747
4742
  pulumi.set(__self__, "description", description)
4748
- if etag is not None:
4749
- pulumi.set(__self__, "etag", etag)
4750
4743
  if perimeter_type is not None:
4751
4744
  pulumi.set(__self__, "perimeter_type", perimeter_type)
4752
4745
  if spec is not None:
@@ -4794,17 +4787,6 @@ class ServicePerimetersServicePerimeter(dict):
4794
4787
  """
4795
4788
  return pulumi.get(self, "description")
4796
4789
 
4797
- @property
4798
- @pulumi.getter
4799
- def etag(self) -> Optional[str]:
4800
- """
4801
- (Output)
4802
- An opaque identifier for the current version of the ServicePerimeter. This
4803
- identifier does not follow any specific format. If an etag is not provided, the
4804
- operation will be performed as if a valid etag is provided.
4805
- """
4806
- return pulumi.get(self, "etag")
4807
-
4808
4790
  @property
4809
4791
  @pulumi.getter(name="perimeterType")
4810
4792
  def perimeter_type(self) -> Optional[str]:
@@ -231,7 +231,6 @@ class _ServicePerimeterState:
231
231
  def __init__(__self__, *,
232
232
  create_time: Optional[pulumi.Input[str]] = None,
233
233
  description: Optional[pulumi.Input[str]] = None,
234
- etag: Optional[pulumi.Input[str]] = None,
235
234
  name: Optional[pulumi.Input[str]] = None,
236
235
  parent: Optional[pulumi.Input[str]] = None,
237
236
  perimeter_type: Optional[pulumi.Input[str]] = None,
@@ -245,9 +244,6 @@ class _ServicePerimeterState:
245
244
  :param pulumi.Input[str] create_time: Time the AccessPolicy was created in UTC.
246
245
  :param pulumi.Input[str] description: Description of the ServicePerimeter and its use. Does not affect
247
246
  behavior.
248
- :param pulumi.Input[str] etag: An opaque identifier for the current version of the ServicePerimeter. This
249
- identifier does not follow any specific format. If an etag is not provided, the
250
- operation will be performed as if a valid etag is provided.
251
247
  :param pulumi.Input[str] name: Resource name for the ServicePerimeter. The short_name component must
252
248
  begin with a letter and only include alphanumeric and '_'.
253
249
  Format: accessPolicies/{policy_id}/servicePerimeters/{short_name}
@@ -297,8 +293,6 @@ class _ServicePerimeterState:
297
293
  pulumi.set(__self__, "create_time", create_time)
298
294
  if description is not None:
299
295
  pulumi.set(__self__, "description", description)
300
- if etag is not None:
301
- pulumi.set(__self__, "etag", etag)
302
296
  if name is not None:
303
297
  pulumi.set(__self__, "name", name)
304
298
  if parent is not None:
@@ -341,20 +335,6 @@ class _ServicePerimeterState:
341
335
  def description(self, value: Optional[pulumi.Input[str]]):
342
336
  pulumi.set(self, "description", value)
343
337
 
344
- @property
345
- @pulumi.getter
346
- def etag(self) -> Optional[pulumi.Input[str]]:
347
- """
348
- An opaque identifier for the current version of the ServicePerimeter. This
349
- identifier does not follow any specific format. If an etag is not provided, the
350
- operation will be performed as if a valid etag is provided.
351
- """
352
- return pulumi.get(self, "etag")
353
-
354
- @etag.setter
355
- def etag(self, value: Optional[pulumi.Input[str]]):
356
- pulumi.set(self, "etag", value)
357
-
358
338
  @property
359
339
  @pulumi.getter
360
340
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -1009,7 +989,6 @@ class ServicePerimeter(pulumi.CustomResource):
1009
989
  __props__.__dict__["title"] = title
1010
990
  __props__.__dict__["use_explicit_dry_run_spec"] = use_explicit_dry_run_spec
1011
991
  __props__.__dict__["create_time"] = None
1012
- __props__.__dict__["etag"] = None
1013
992
  __props__.__dict__["update_time"] = None
1014
993
  super(ServicePerimeter, __self__).__init__(
1015
994
  'gcp:accesscontextmanager/servicePerimeter:ServicePerimeter',
@@ -1023,7 +1002,6 @@ class ServicePerimeter(pulumi.CustomResource):
1023
1002
  opts: Optional[pulumi.ResourceOptions] = None,
1024
1003
  create_time: Optional[pulumi.Input[str]] = None,
1025
1004
  description: Optional[pulumi.Input[str]] = None,
1026
- etag: Optional[pulumi.Input[str]] = None,
1027
1005
  name: Optional[pulumi.Input[str]] = None,
1028
1006
  parent: Optional[pulumi.Input[str]] = None,
1029
1007
  perimeter_type: Optional[pulumi.Input[str]] = None,
@@ -1042,9 +1020,6 @@ class ServicePerimeter(pulumi.CustomResource):
1042
1020
  :param pulumi.Input[str] create_time: Time the AccessPolicy was created in UTC.
1043
1021
  :param pulumi.Input[str] description: Description of the ServicePerimeter and its use. Does not affect
1044
1022
  behavior.
1045
- :param pulumi.Input[str] etag: An opaque identifier for the current version of the ServicePerimeter. This
1046
- identifier does not follow any specific format. If an etag is not provided, the
1047
- operation will be performed as if a valid etag is provided.
1048
1023
  :param pulumi.Input[str] name: Resource name for the ServicePerimeter. The short_name component must
1049
1024
  begin with a letter and only include alphanumeric and '_'.
1050
1025
  Format: accessPolicies/{policy_id}/servicePerimeters/{short_name}
@@ -1096,7 +1071,6 @@ class ServicePerimeter(pulumi.CustomResource):
1096
1071
 
1097
1072
  __props__.__dict__["create_time"] = create_time
1098
1073
  __props__.__dict__["description"] = description
1099
- __props__.__dict__["etag"] = etag
1100
1074
  __props__.__dict__["name"] = name
1101
1075
  __props__.__dict__["parent"] = parent
1102
1076
  __props__.__dict__["perimeter_type"] = perimeter_type
@@ -1124,16 +1098,6 @@ class ServicePerimeter(pulumi.CustomResource):
1124
1098
  """
1125
1099
  return pulumi.get(self, "description")
1126
1100
 
1127
- @property
1128
- @pulumi.getter
1129
- def etag(self) -> pulumi.Output[str]:
1130
- """
1131
- An opaque identifier for the current version of the ServicePerimeter. This
1132
- identifier does not follow any specific format. If an etag is not provided, the
1133
- operation will be performed as if a valid etag is provided.
1134
- """
1135
- return pulumi.get(self, "etag")
1136
-
1137
1101
  @property
1138
1102
  @pulumi.getter
1139
1103
  def name(self) -> pulumi.Output[str]:
@@ -120,8 +120,12 @@ def get_repository_iam_policy(location: Optional[str] = None,
120
120
  ```
121
121
 
122
122
 
123
- :param str location: The name of the location this repository is located in.
124
- Used to find the parent resource to bind the IAM policy to. If not specified,
123
+ :param str location: The name of the repository's location. In addition to specific regions,
124
+ special values for multi-region locations are `asia`, `europe`, and `us`.
125
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
126
+ or use the
127
+ artifactregistry_get_locations
128
+ data source for possible values. Used to find the parent resource to bind the IAM policy to. If not specified,
125
129
  the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
126
130
  location is specified, it is taken from the provider configuration.
127
131
  :param str project: The ID of the project in which the resource belongs.
@@ -161,8 +165,12 @@ def get_repository_iam_policy_output(location: Optional[pulumi.Input[Optional[st
161
165
  ```
162
166
 
163
167
 
164
- :param str location: The name of the location this repository is located in.
165
- Used to find the parent resource to bind the IAM policy to. If not specified,
168
+ :param str location: The name of the repository's location. In addition to specific regions,
169
+ special values for multi-region locations are `asia`, `europe`, and `us`.
170
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
171
+ or use the
172
+ artifactregistry_get_locations
173
+ data source for possible values. Used to find the parent resource to bind the IAM policy to. If not specified,
166
174
  the value will be parsed from the identifier of the parent resource. If no location is provided in the parent identifier and no
167
175
  location is specified, it is taken from the provider configuration.
168
176
  :param str project: The ID of the project in which the resource belongs.
@@ -41,11 +41,11 @@ class RepositoryArgs:
41
41
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
42
42
  You can only create alpha formats if you are a member of the
43
43
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
44
+ :param pulumi.Input[str] repository_id: The last part of the repository name, for example:
45
+ "repo1"
44
46
 
45
47
 
46
48
  - - -
47
- :param pulumi.Input[str] repository_id: The last part of the repository name, for example:
48
- "repo1"
49
49
  :param pulumi.Input[Sequence[pulumi.Input['RepositoryCleanupPolicyArgs']]] cleanup_policies: Cleanup policies for this repository. Cleanup policies indicate when
50
50
  certain package versions can be automatically deleted.
51
51
  Map keys are policy IDs supplied by users during policy creation. They must
@@ -68,7 +68,12 @@ class RepositoryArgs:
68
68
 
69
69
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
70
70
  Please refer to the field `effective_labels` for all of the labels present on the resource.
71
- :param pulumi.Input[str] location: The name of the location this repository is located in.
71
+ :param pulumi.Input[str] location: The name of the repository's location. In addition to specific regions,
72
+ special values for multi-region locations are `asia`, `europe`, and `us`.
73
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
74
+ or use the
75
+ artifactregistry_get_locations
76
+ data source for possible values.
72
77
  :param pulumi.Input['RepositoryMavenConfigArgs'] maven_config: MavenRepositoryConfig is maven related repository details.
73
78
  Provides additional configuration details for repositories of the maven
74
79
  format type.
@@ -118,9 +123,6 @@ class RepositoryArgs:
118
123
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
119
124
  You can only create alpha formats if you are a member of the
120
125
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
121
-
122
-
123
- - - -
124
126
  """
125
127
  return pulumi.get(self, "format")
126
128
 
@@ -134,6 +136,9 @@ class RepositoryArgs:
134
136
  """
135
137
  The last part of the repository name, for example:
136
138
  "repo1"
139
+
140
+
141
+ - - -
137
142
  """
138
143
  return pulumi.get(self, "repository_id")
139
144
 
@@ -233,7 +238,12 @@ class RepositoryArgs:
233
238
  @pulumi.getter
234
239
  def location(self) -> Optional[pulumi.Input[str]]:
235
240
  """
236
- The name of the location this repository is located in.
241
+ The name of the repository's location. In addition to specific regions,
242
+ special values for multi-region locations are `asia`, `europe`, and `us`.
243
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
244
+ or use the
245
+ artifactregistry_get_locations
246
+ data source for possible values.
237
247
  """
238
248
  return pulumi.get(self, "location")
239
249
 
@@ -350,9 +360,6 @@ class _RepositoryState:
350
360
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
351
361
  You can only create alpha formats if you are a member of the
352
362
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
353
-
354
-
355
- - - -
356
363
  :param pulumi.Input[str] kms_key_name: The Cloud KMS resource name of the customer managed encryption key that’s
357
364
  used to encrypt the contents of the Repository. Has the form:
358
365
  `projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key`.
@@ -365,7 +372,12 @@ class _RepositoryState:
365
372
 
366
373
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
367
374
  Please refer to the field `effective_labels` for all of the labels present on the resource.
368
- :param pulumi.Input[str] location: The name of the location this repository is located in.
375
+ :param pulumi.Input[str] location: The name of the repository's location. In addition to specific regions,
376
+ special values for multi-region locations are `asia`, `europe`, and `us`.
377
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
378
+ or use the
379
+ artifactregistry_get_locations
380
+ data source for possible values.
369
381
  :param pulumi.Input['RepositoryMavenConfigArgs'] maven_config: MavenRepositoryConfig is maven related repository details.
370
382
  Provides additional configuration details for repositories of the maven
371
383
  format type.
@@ -383,6 +395,9 @@ class _RepositoryState:
383
395
  Structure is documented below.
384
396
  :param pulumi.Input[str] repository_id: The last part of the repository name, for example:
385
397
  "repo1"
398
+
399
+
400
+ - - -
386
401
  :param pulumi.Input[str] update_time: The time when the repository was last updated.
387
402
  :param pulumi.Input['RepositoryVirtualRepositoryConfigArgs'] virtual_repository_config: Configuration specific for a Virtual Repository.
388
403
  Structure is documented below.
@@ -512,9 +527,6 @@ class _RepositoryState:
512
527
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
513
528
  You can only create alpha formats if you are a member of the
514
529
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
515
-
516
-
517
- - - -
518
530
  """
519
531
  return pulumi.get(self, "format")
520
532
 
@@ -560,7 +572,12 @@ class _RepositoryState:
560
572
  @pulumi.getter
561
573
  def location(self) -> Optional[pulumi.Input[str]]:
562
574
  """
563
- The name of the location this repository is located in.
575
+ The name of the repository's location. In addition to specific regions,
576
+ special values for multi-region locations are `asia`, `europe`, and `us`.
577
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
578
+ or use the
579
+ artifactregistry_get_locations
580
+ data source for possible values.
564
581
  """
565
582
  return pulumi.get(self, "location")
566
583
 
@@ -655,6 +672,9 @@ class _RepositoryState:
655
672
  """
656
673
  The last part of the repository name, for example:
657
674
  "repo1"
675
+
676
+
677
+ - - -
658
678
  """
659
679
  return pulumi.get(self, "repository_id")
660
680
 
@@ -731,6 +751,18 @@ class Repository(pulumi.CustomResource):
731
751
  description="example docker repository",
732
752
  format="DOCKER")
733
753
  ```
754
+ ### Artifact Registry Repository Multi Region
755
+
756
+ ```python
757
+ import pulumi
758
+ import pulumi_gcp as gcp
759
+
760
+ my_repo = gcp.artifactregistry.Repository("my-repo",
761
+ repository_id="my-repository",
762
+ description="example docker repository",
763
+ location="us",
764
+ format="DOCKER")
765
+ ```
734
766
  ### Artifact Registry Repository Docker
735
767
 
736
768
  ```python
@@ -1218,8 +1250,6 @@ class Repository(pulumi.CustomResource):
1218
1250
 
1219
1251
  * `{{location}}/{{repository_id}}`
1220
1252
 
1221
- * `{{repository_id}}`
1222
-
1223
1253
  When using the `pulumi import` command, Repository can be imported using one of the formats above. For example:
1224
1254
 
1225
1255
  ```sh
@@ -1234,10 +1264,6 @@ class Repository(pulumi.CustomResource):
1234
1264
  $ pulumi import gcp:artifactregistry/repository:Repository default {{location}}/{{repository_id}}
1235
1265
  ```
1236
1266
 
1237
- ```sh
1238
- $ pulumi import gcp:artifactregistry/repository:Repository default {{repository_id}}
1239
- ```
1240
-
1241
1267
  :param str resource_name: The name of the resource.
1242
1268
  :param pulumi.ResourceOptions opts: Options for the resource.
1243
1269
  :param pulumi.Input[Sequence[pulumi.Input[Union['RepositoryCleanupPolicyArgs', 'RepositoryCleanupPolicyArgsDict']]]] cleanup_policies: Cleanup policies for this repository. Cleanup policies indicate when
@@ -1254,9 +1280,6 @@ class Repository(pulumi.CustomResource):
1254
1280
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
1255
1281
  You can only create alpha formats if you are a member of the
1256
1282
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
1257
-
1258
-
1259
- - - -
1260
1283
  :param pulumi.Input[str] kms_key_name: The Cloud KMS resource name of the customer managed encryption key that’s
1261
1284
  used to encrypt the contents of the Repository. Has the form:
1262
1285
  `projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key`.
@@ -1269,7 +1292,12 @@ class Repository(pulumi.CustomResource):
1269
1292
 
1270
1293
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1271
1294
  Please refer to the field `effective_labels` for all of the labels present on the resource.
1272
- :param pulumi.Input[str] location: The name of the location this repository is located in.
1295
+ :param pulumi.Input[str] location: The name of the repository's location. In addition to specific regions,
1296
+ special values for multi-region locations are `asia`, `europe`, and `us`.
1297
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
1298
+ or use the
1299
+ artifactregistry_get_locations
1300
+ data source for possible values.
1273
1301
  :param pulumi.Input[Union['RepositoryMavenConfigArgs', 'RepositoryMavenConfigArgsDict']] maven_config: MavenRepositoryConfig is maven related repository details.
1274
1302
  Provides additional configuration details for repositories of the maven
1275
1303
  format type.
@@ -1283,6 +1311,9 @@ class Repository(pulumi.CustomResource):
1283
1311
  Structure is documented below.
1284
1312
  :param pulumi.Input[str] repository_id: The last part of the repository name, for example:
1285
1313
  "repo1"
1314
+
1315
+
1316
+ - - -
1286
1317
  :param pulumi.Input[Union['RepositoryVirtualRepositoryConfigArgs', 'RepositoryVirtualRepositoryConfigArgsDict']] virtual_repository_config: Configuration specific for a Virtual Repository.
1287
1318
  Structure is documented below.
1288
1319
  """
@@ -1315,6 +1346,18 @@ class Repository(pulumi.CustomResource):
1315
1346
  description="example docker repository",
1316
1347
  format="DOCKER")
1317
1348
  ```
1349
+ ### Artifact Registry Repository Multi Region
1350
+
1351
+ ```python
1352
+ import pulumi
1353
+ import pulumi_gcp as gcp
1354
+
1355
+ my_repo = gcp.artifactregistry.Repository("my-repo",
1356
+ repository_id="my-repository",
1357
+ description="example docker repository",
1358
+ location="us",
1359
+ format="DOCKER")
1360
+ ```
1318
1361
  ### Artifact Registry Repository Docker
1319
1362
 
1320
1363
  ```python
@@ -1802,8 +1845,6 @@ class Repository(pulumi.CustomResource):
1802
1845
 
1803
1846
  * `{{location}}/{{repository_id}}`
1804
1847
 
1805
- * `{{repository_id}}`
1806
-
1807
1848
  When using the `pulumi import` command, Repository can be imported using one of the formats above. For example:
1808
1849
 
1809
1850
  ```sh
@@ -1818,10 +1859,6 @@ class Repository(pulumi.CustomResource):
1818
1859
  $ pulumi import gcp:artifactregistry/repository:Repository default {{location}}/{{repository_id}}
1819
1860
  ```
1820
1861
 
1821
- ```sh
1822
- $ pulumi import gcp:artifactregistry/repository:Repository default {{repository_id}}
1823
- ```
1824
-
1825
1862
  :param str resource_name: The name of the resource.
1826
1863
  :param RepositoryArgs args: The arguments to use to populate this resource's properties.
1827
1864
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -1937,9 +1974,6 @@ class Repository(pulumi.CustomResource):
1937
1974
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
1938
1975
  You can only create alpha formats if you are a member of the
1939
1976
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
1940
-
1941
-
1942
- - - -
1943
1977
  :param pulumi.Input[str] kms_key_name: The Cloud KMS resource name of the customer managed encryption key that’s
1944
1978
  used to encrypt the contents of the Repository. Has the form:
1945
1979
  `projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key`.
@@ -1952,7 +1986,12 @@ class Repository(pulumi.CustomResource):
1952
1986
 
1953
1987
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1954
1988
  Please refer to the field `effective_labels` for all of the labels present on the resource.
1955
- :param pulumi.Input[str] location: The name of the location this repository is located in.
1989
+ :param pulumi.Input[str] location: The name of the repository's location. In addition to specific regions,
1990
+ special values for multi-region locations are `asia`, `europe`, and `us`.
1991
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
1992
+ or use the
1993
+ artifactregistry_get_locations
1994
+ data source for possible values.
1956
1995
  :param pulumi.Input[Union['RepositoryMavenConfigArgs', 'RepositoryMavenConfigArgsDict']] maven_config: MavenRepositoryConfig is maven related repository details.
1957
1996
  Provides additional configuration details for repositories of the maven
1958
1997
  format type.
@@ -1970,6 +2009,9 @@ class Repository(pulumi.CustomResource):
1970
2009
  Structure is documented below.
1971
2010
  :param pulumi.Input[str] repository_id: The last part of the repository name, for example:
1972
2011
  "repo1"
2012
+
2013
+
2014
+ - - -
1973
2015
  :param pulumi.Input[str] update_time: The time when the repository was last updated.
1974
2016
  :param pulumi.Input[Union['RepositoryVirtualRepositoryConfigArgs', 'RepositoryVirtualRepositoryConfigArgsDict']] virtual_repository_config: Configuration specific for a Virtual Repository.
1975
2017
  Structure is documented below.
@@ -2061,9 +2103,6 @@ class Repository(pulumi.CustomResource):
2061
2103
  can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
2062
2104
  You can only create alpha formats if you are a member of the
2063
2105
  [alpha user group](https://cloud.google.com/artifact-registry/docs/supported-formats#alpha-access).
2064
-
2065
-
2066
- - - -
2067
2106
  """
2068
2107
  return pulumi.get(self, "format")
2069
2108
 
@@ -2097,7 +2136,12 @@ class Repository(pulumi.CustomResource):
2097
2136
  @pulumi.getter
2098
2137
  def location(self) -> pulumi.Output[str]:
2099
2138
  """
2100
- The name of the location this repository is located in.
2139
+ The name of the repository's location. In addition to specific regions,
2140
+ special values for multi-region locations are `asia`, `europe`, and `us`.
2141
+ See [here](https://cloud.google.com/artifact-registry/docs/repositories/repo-locations),
2142
+ or use the
2143
+ artifactregistry_get_locations
2144
+ data source for possible values.
2101
2145
  """
2102
2146
  return pulumi.get(self, "location")
2103
2147
 
@@ -2164,6 +2208,9 @@ class Repository(pulumi.CustomResource):
2164
2208
  """
2165
2209
  The last part of the repository name, for example:
2166
2210
  "repo1"
2211
+
2212
+
2213
+ - - -
2167
2214
  """
2168
2215
  return pulumi.get(self, "repository_id")
2169
2216