pulumi-gcp 7.20.0a1713984378__py3-none-any.whl → 7.20.0a1713986537__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 (35) hide show
  1. pulumi_gcp/__init__.py +8 -0
  2. pulumi_gcp/apigee/organization.py +162 -0
  3. pulumi_gcp/artifactregistry/_inputs.py +186 -0
  4. pulumi_gcp/artifactregistry/outputs.py +297 -4
  5. pulumi_gcp/artifactregistry/repository.py +346 -16
  6. pulumi_gcp/bigquery/table.py +61 -0
  7. pulumi_gcp/billing/budget.py +54 -0
  8. pulumi_gcp/cloudfunctionsv2/_inputs.py +16 -0
  9. pulumi_gcp/cloudfunctionsv2/function.py +110 -0
  10. pulumi_gcp/cloudfunctionsv2/outputs.py +25 -0
  11. pulumi_gcp/compute/_inputs.py +48 -0
  12. pulumi_gcp/compute/get_instance_group_manager.py +11 -1
  13. pulumi_gcp/compute/instance_group_manager.py +68 -21
  14. pulumi_gcp/compute/outputs.py +93 -0
  15. pulumi_gcp/compute/region_instance_group_manager.py +61 -14
  16. pulumi_gcp/container/outputs.py +4 -4
  17. pulumi_gcp/dns/_inputs.py +0 -128
  18. pulumi_gcp/dns/get_keys.py +1 -1
  19. pulumi_gcp/dns/get_managed_zones.py +3 -9
  20. pulumi_gcp/dns/get_record_set.py +3 -0
  21. pulumi_gcp/dns/outputs.py +34 -56
  22. pulumi_gcp/firestore/document.py +4 -4
  23. pulumi_gcp/organizations/get_active_folder.py +18 -3
  24. pulumi_gcp/projects/__init__.py +1 -0
  25. pulumi_gcp/projects/iam_member_remove.py +313 -0
  26. pulumi_gcp/vmwareengine/_inputs.py +63 -5
  27. pulumi_gcp/vmwareengine/get_private_cloud.py +1 -21
  28. pulumi_gcp/vmwareengine/outputs.py +113 -5
  29. pulumi_gcp/vmwareengine/private_cloud.py +0 -94
  30. pulumi_gcp/workbench/instance.py +4 -4
  31. pulumi_gcp/workstations/workstation_cluster.py +32 -0
  32. {pulumi_gcp-7.20.0a1713984378.dist-info → pulumi_gcp-7.20.0a1713986537.dist-info}/METADATA +1 -1
  33. {pulumi_gcp-7.20.0a1713984378.dist-info → pulumi_gcp-7.20.0a1713986537.dist-info}/RECORD +35 -34
  34. {pulumi_gcp-7.20.0a1713984378.dist-info → pulumi_gcp-7.20.0a1713986537.dist-info}/WHEEL +0 -0
  35. {pulumi_gcp-7.20.0a1713984378.dist-info → pulumi_gcp-7.20.0a1713986537.dist-info}/top_level.txt +0 -0
pulumi_gcp/__init__.py CHANGED
@@ -6305,6 +6305,14 @@ _utilities.register(
6305
6305
  "gcp:projects/iAMPolicy:IAMPolicy": "IAMPolicy"
6306
6306
  }
6307
6307
  },
6308
+ {
6309
+ "pkg": "gcp",
6310
+ "mod": "projects/iamMemberRemove",
6311
+ "fqn": "pulumi_gcp.projects",
6312
+ "classes": {
6313
+ "gcp:projects/iamMemberRemove:IamMemberRemove": "IamMemberRemove"
6314
+ }
6315
+ },
6308
6316
  {
6309
6317
  "pkg": "gcp",
6310
6318
  "mod": "projects/organizationPolicy",
@@ -18,8 +18,11 @@ class OrganizationArgs:
18
18
  def __init__(__self__, *,
19
19
  project_id: pulumi.Input[str],
20
20
  analytics_region: Optional[pulumi.Input[str]] = None,
21
+ api_consumer_data_encryption_key_name: Optional[pulumi.Input[str]] = None,
22
+ api_consumer_data_location: Optional[pulumi.Input[str]] = None,
21
23
  authorized_network: Optional[pulumi.Input[str]] = None,
22
24
  billing_type: Optional[pulumi.Input[str]] = None,
25
+ control_plane_encryption_key_name: Optional[pulumi.Input[str]] = None,
23
26
  description: Optional[pulumi.Input[str]] = None,
24
27
  disable_vpc_peering: Optional[pulumi.Input[bool]] = None,
25
28
  display_name: Optional[pulumi.Input[str]] = None,
@@ -34,10 +37,16 @@ class OrganizationArgs:
34
37
 
35
38
  - - -
36
39
  :param pulumi.Input[str] analytics_region: Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
40
+ :param pulumi.Input[str] api_consumer_data_encryption_key_name: Cloud KMS key name used for encrypting API consumer data.
41
+ :param pulumi.Input[str] api_consumer_data_location: This field is needed only for customers using non-default data residency regions.
42
+ Apigee stores some control plane data only in single region.
43
+ This field determines which single region Apigee should use.
37
44
  :param pulumi.Input[str] authorized_network: Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
38
45
  See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
39
46
  Valid only when `RuntimeType` is set to CLOUD. The value can be updated only when there are no runtime instances. For example: "default".
40
47
  :param pulumi.Input[str] billing_type: Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
48
+ :param pulumi.Input[str] control_plane_encryption_key_name: Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
49
+ Only used for the data residency region "US" or "EU".
41
50
  :param pulumi.Input[str] description: Description of the Apigee organization.
42
51
  :param pulumi.Input[bool] disable_vpc_peering: Flag that specifies whether the VPC Peering through Private Google Access should be
43
52
  disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
@@ -64,10 +73,16 @@ class OrganizationArgs:
64
73
  pulumi.set(__self__, "project_id", project_id)
65
74
  if analytics_region is not None:
66
75
  pulumi.set(__self__, "analytics_region", analytics_region)
76
+ if api_consumer_data_encryption_key_name is not None:
77
+ pulumi.set(__self__, "api_consumer_data_encryption_key_name", api_consumer_data_encryption_key_name)
78
+ if api_consumer_data_location is not None:
79
+ pulumi.set(__self__, "api_consumer_data_location", api_consumer_data_location)
67
80
  if authorized_network is not None:
68
81
  pulumi.set(__self__, "authorized_network", authorized_network)
69
82
  if billing_type is not None:
70
83
  pulumi.set(__self__, "billing_type", billing_type)
84
+ if control_plane_encryption_key_name is not None:
85
+ pulumi.set(__self__, "control_plane_encryption_key_name", control_plane_encryption_key_name)
71
86
  if description is not None:
72
87
  pulumi.set(__self__, "description", description)
73
88
  if disable_vpc_peering is not None:
@@ -110,6 +125,32 @@ class OrganizationArgs:
110
125
  def analytics_region(self, value: Optional[pulumi.Input[str]]):
111
126
  pulumi.set(self, "analytics_region", value)
112
127
 
128
+ @property
129
+ @pulumi.getter(name="apiConsumerDataEncryptionKeyName")
130
+ def api_consumer_data_encryption_key_name(self) -> Optional[pulumi.Input[str]]:
131
+ """
132
+ Cloud KMS key name used for encrypting API consumer data.
133
+ """
134
+ return pulumi.get(self, "api_consumer_data_encryption_key_name")
135
+
136
+ @api_consumer_data_encryption_key_name.setter
137
+ def api_consumer_data_encryption_key_name(self, value: Optional[pulumi.Input[str]]):
138
+ pulumi.set(self, "api_consumer_data_encryption_key_name", value)
139
+
140
+ @property
141
+ @pulumi.getter(name="apiConsumerDataLocation")
142
+ def api_consumer_data_location(self) -> Optional[pulumi.Input[str]]:
143
+ """
144
+ This field is needed only for customers using non-default data residency regions.
145
+ Apigee stores some control plane data only in single region.
146
+ This field determines which single region Apigee should use.
147
+ """
148
+ return pulumi.get(self, "api_consumer_data_location")
149
+
150
+ @api_consumer_data_location.setter
151
+ def api_consumer_data_location(self, value: Optional[pulumi.Input[str]]):
152
+ pulumi.set(self, "api_consumer_data_location", value)
153
+
113
154
  @property
114
155
  @pulumi.getter(name="authorizedNetwork")
115
156
  def authorized_network(self) -> Optional[pulumi.Input[str]]:
@@ -136,6 +177,19 @@ class OrganizationArgs:
136
177
  def billing_type(self, value: Optional[pulumi.Input[str]]):
137
178
  pulumi.set(self, "billing_type", value)
138
179
 
180
+ @property
181
+ @pulumi.getter(name="controlPlaneEncryptionKeyName")
182
+ def control_plane_encryption_key_name(self) -> Optional[pulumi.Input[str]]:
183
+ """
184
+ Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
185
+ Only used for the data residency region "US" or "EU".
186
+ """
187
+ return pulumi.get(self, "control_plane_encryption_key_name")
188
+
189
+ @control_plane_encryption_key_name.setter
190
+ def control_plane_encryption_key_name(self, value: Optional[pulumi.Input[str]]):
191
+ pulumi.set(self, "control_plane_encryption_key_name", value)
192
+
139
193
  @property
140
194
  @pulumi.getter
141
195
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -240,10 +294,13 @@ class OrganizationArgs:
240
294
  class _OrganizationState:
241
295
  def __init__(__self__, *,
242
296
  analytics_region: Optional[pulumi.Input[str]] = None,
297
+ api_consumer_data_encryption_key_name: Optional[pulumi.Input[str]] = None,
298
+ api_consumer_data_location: Optional[pulumi.Input[str]] = None,
243
299
  apigee_project_id: Optional[pulumi.Input[str]] = None,
244
300
  authorized_network: Optional[pulumi.Input[str]] = None,
245
301
  billing_type: Optional[pulumi.Input[str]] = None,
246
302
  ca_certificate: Optional[pulumi.Input[str]] = None,
303
+ control_plane_encryption_key_name: Optional[pulumi.Input[str]] = None,
247
304
  description: Optional[pulumi.Input[str]] = None,
248
305
  disable_vpc_peering: Optional[pulumi.Input[bool]] = None,
249
306
  display_name: Optional[pulumi.Input[str]] = None,
@@ -257,6 +314,10 @@ class _OrganizationState:
257
314
  """
258
315
  Input properties used for looking up and filtering Organization resources.
259
316
  :param pulumi.Input[str] analytics_region: Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
317
+ :param pulumi.Input[str] api_consumer_data_encryption_key_name: Cloud KMS key name used for encrypting API consumer data.
318
+ :param pulumi.Input[str] api_consumer_data_location: This field is needed only for customers using non-default data residency regions.
319
+ Apigee stores some control plane data only in single region.
320
+ This field determines which single region Apigee should use.
260
321
  :param pulumi.Input[str] apigee_project_id: Output only. Project ID of the Apigee Tenant Project.
261
322
  :param pulumi.Input[str] authorized_network: Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
262
323
  See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
@@ -264,6 +325,8 @@ class _OrganizationState:
264
325
  :param pulumi.Input[str] billing_type: Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
265
326
  :param pulumi.Input[str] ca_certificate: Output only. Base64-encoded public certificate for the root CA of the Apigee organization.
266
327
  Valid only when `RuntimeType` is CLOUD. A base64-encoded string.
328
+ :param pulumi.Input[str] control_plane_encryption_key_name: Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
329
+ Only used for the data residency region "US" or "EU".
267
330
  :param pulumi.Input[str] description: Description of the Apigee organization.
268
331
  :param pulumi.Input[bool] disable_vpc_peering: Flag that specifies whether the VPC Peering through Private Google Access should be
269
332
  disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
@@ -296,6 +359,10 @@ class _OrganizationState:
296
359
  """
297
360
  if analytics_region is not None:
298
361
  pulumi.set(__self__, "analytics_region", analytics_region)
362
+ if api_consumer_data_encryption_key_name is not None:
363
+ pulumi.set(__self__, "api_consumer_data_encryption_key_name", api_consumer_data_encryption_key_name)
364
+ if api_consumer_data_location is not None:
365
+ pulumi.set(__self__, "api_consumer_data_location", api_consumer_data_location)
299
366
  if apigee_project_id is not None:
300
367
  pulumi.set(__self__, "apigee_project_id", apigee_project_id)
301
368
  if authorized_network is not None:
@@ -304,6 +371,8 @@ class _OrganizationState:
304
371
  pulumi.set(__self__, "billing_type", billing_type)
305
372
  if ca_certificate is not None:
306
373
  pulumi.set(__self__, "ca_certificate", ca_certificate)
374
+ if control_plane_encryption_key_name is not None:
375
+ pulumi.set(__self__, "control_plane_encryption_key_name", control_plane_encryption_key_name)
307
376
  if description is not None:
308
377
  pulumi.set(__self__, "description", description)
309
378
  if disable_vpc_peering is not None:
@@ -337,6 +406,32 @@ class _OrganizationState:
337
406
  def analytics_region(self, value: Optional[pulumi.Input[str]]):
338
407
  pulumi.set(self, "analytics_region", value)
339
408
 
409
+ @property
410
+ @pulumi.getter(name="apiConsumerDataEncryptionKeyName")
411
+ def api_consumer_data_encryption_key_name(self) -> Optional[pulumi.Input[str]]:
412
+ """
413
+ Cloud KMS key name used for encrypting API consumer data.
414
+ """
415
+ return pulumi.get(self, "api_consumer_data_encryption_key_name")
416
+
417
+ @api_consumer_data_encryption_key_name.setter
418
+ def api_consumer_data_encryption_key_name(self, value: Optional[pulumi.Input[str]]):
419
+ pulumi.set(self, "api_consumer_data_encryption_key_name", value)
420
+
421
+ @property
422
+ @pulumi.getter(name="apiConsumerDataLocation")
423
+ def api_consumer_data_location(self) -> Optional[pulumi.Input[str]]:
424
+ """
425
+ This field is needed only for customers using non-default data residency regions.
426
+ Apigee stores some control plane data only in single region.
427
+ This field determines which single region Apigee should use.
428
+ """
429
+ return pulumi.get(self, "api_consumer_data_location")
430
+
431
+ @api_consumer_data_location.setter
432
+ def api_consumer_data_location(self, value: Optional[pulumi.Input[str]]):
433
+ pulumi.set(self, "api_consumer_data_location", value)
434
+
340
435
  @property
341
436
  @pulumi.getter(name="apigeeProjectId")
342
437
  def apigee_project_id(self) -> Optional[pulumi.Input[str]]:
@@ -388,6 +483,19 @@ class _OrganizationState:
388
483
  def ca_certificate(self, value: Optional[pulumi.Input[str]]):
389
484
  pulumi.set(self, "ca_certificate", value)
390
485
 
486
+ @property
487
+ @pulumi.getter(name="controlPlaneEncryptionKeyName")
488
+ def control_plane_encryption_key_name(self) -> Optional[pulumi.Input[str]]:
489
+ """
490
+ Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
491
+ Only used for the data residency region "US" or "EU".
492
+ """
493
+ return pulumi.get(self, "control_plane_encryption_key_name")
494
+
495
+ @control_plane_encryption_key_name.setter
496
+ def control_plane_encryption_key_name(self, value: Optional[pulumi.Input[str]]):
497
+ pulumi.set(self, "control_plane_encryption_key_name", value)
498
+
391
499
  @property
392
500
  @pulumi.getter
393
501
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -534,8 +642,11 @@ class Organization(pulumi.CustomResource):
534
642
  resource_name: str,
535
643
  opts: Optional[pulumi.ResourceOptions] = None,
536
644
  analytics_region: Optional[pulumi.Input[str]] = None,
645
+ api_consumer_data_encryption_key_name: Optional[pulumi.Input[str]] = None,
646
+ api_consumer_data_location: Optional[pulumi.Input[str]] = None,
537
647
  authorized_network: Optional[pulumi.Input[str]] = None,
538
648
  billing_type: Optional[pulumi.Input[str]] = None,
649
+ control_plane_encryption_key_name: Optional[pulumi.Input[str]] = None,
539
650
  description: Optional[pulumi.Input[str]] = None,
540
651
  disable_vpc_peering: Optional[pulumi.Input[bool]] = None,
541
652
  display_name: Optional[pulumi.Input[str]] = None,
@@ -681,10 +792,16 @@ class Organization(pulumi.CustomResource):
681
792
  :param str resource_name: The name of the resource.
682
793
  :param pulumi.ResourceOptions opts: Options for the resource.
683
794
  :param pulumi.Input[str] analytics_region: Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
795
+ :param pulumi.Input[str] api_consumer_data_encryption_key_name: Cloud KMS key name used for encrypting API consumer data.
796
+ :param pulumi.Input[str] api_consumer_data_location: This field is needed only for customers using non-default data residency regions.
797
+ Apigee stores some control plane data only in single region.
798
+ This field determines which single region Apigee should use.
684
799
  :param pulumi.Input[str] authorized_network: Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
685
800
  See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
686
801
  Valid only when `RuntimeType` is set to CLOUD. The value can be updated only when there are no runtime instances. For example: "default".
687
802
  :param pulumi.Input[str] billing_type: Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
803
+ :param pulumi.Input[str] control_plane_encryption_key_name: Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
804
+ Only used for the data residency region "US" or "EU".
688
805
  :param pulumi.Input[str] description: Description of the Apigee organization.
689
806
  :param pulumi.Input[bool] disable_vpc_peering: Flag that specifies whether the VPC Peering through Private Google Access should be
690
807
  disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
@@ -867,8 +984,11 @@ class Organization(pulumi.CustomResource):
867
984
  resource_name: str,
868
985
  opts: Optional[pulumi.ResourceOptions] = None,
869
986
  analytics_region: Optional[pulumi.Input[str]] = None,
987
+ api_consumer_data_encryption_key_name: Optional[pulumi.Input[str]] = None,
988
+ api_consumer_data_location: Optional[pulumi.Input[str]] = None,
870
989
  authorized_network: Optional[pulumi.Input[str]] = None,
871
990
  billing_type: Optional[pulumi.Input[str]] = None,
991
+ control_plane_encryption_key_name: Optional[pulumi.Input[str]] = None,
872
992
  description: Optional[pulumi.Input[str]] = None,
873
993
  disable_vpc_peering: Optional[pulumi.Input[bool]] = None,
874
994
  display_name: Optional[pulumi.Input[str]] = None,
@@ -887,8 +1007,11 @@ class Organization(pulumi.CustomResource):
887
1007
  __props__ = OrganizationArgs.__new__(OrganizationArgs)
888
1008
 
889
1009
  __props__.__dict__["analytics_region"] = analytics_region
1010
+ __props__.__dict__["api_consumer_data_encryption_key_name"] = api_consumer_data_encryption_key_name
1011
+ __props__.__dict__["api_consumer_data_location"] = api_consumer_data_location
890
1012
  __props__.__dict__["authorized_network"] = authorized_network
891
1013
  __props__.__dict__["billing_type"] = billing_type
1014
+ __props__.__dict__["control_plane_encryption_key_name"] = control_plane_encryption_key_name
892
1015
  __props__.__dict__["description"] = description
893
1016
  __props__.__dict__["disable_vpc_peering"] = disable_vpc_peering
894
1017
  __props__.__dict__["display_name"] = display_name
@@ -914,10 +1037,13 @@ class Organization(pulumi.CustomResource):
914
1037
  id: pulumi.Input[str],
915
1038
  opts: Optional[pulumi.ResourceOptions] = None,
916
1039
  analytics_region: Optional[pulumi.Input[str]] = None,
1040
+ api_consumer_data_encryption_key_name: Optional[pulumi.Input[str]] = None,
1041
+ api_consumer_data_location: Optional[pulumi.Input[str]] = None,
917
1042
  apigee_project_id: Optional[pulumi.Input[str]] = None,
918
1043
  authorized_network: Optional[pulumi.Input[str]] = None,
919
1044
  billing_type: Optional[pulumi.Input[str]] = None,
920
1045
  ca_certificate: Optional[pulumi.Input[str]] = None,
1046
+ control_plane_encryption_key_name: Optional[pulumi.Input[str]] = None,
921
1047
  description: Optional[pulumi.Input[str]] = None,
922
1048
  disable_vpc_peering: Optional[pulumi.Input[bool]] = None,
923
1049
  display_name: Optional[pulumi.Input[str]] = None,
@@ -936,6 +1062,10 @@ class Organization(pulumi.CustomResource):
936
1062
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
937
1063
  :param pulumi.ResourceOptions opts: Options for the resource.
938
1064
  :param pulumi.Input[str] analytics_region: Primary GCP region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).
1065
+ :param pulumi.Input[str] api_consumer_data_encryption_key_name: Cloud KMS key name used for encrypting API consumer data.
1066
+ :param pulumi.Input[str] api_consumer_data_location: This field is needed only for customers using non-default data residency regions.
1067
+ Apigee stores some control plane data only in single region.
1068
+ This field determines which single region Apigee should use.
939
1069
  :param pulumi.Input[str] apigee_project_id: Output only. Project ID of the Apigee Tenant Project.
940
1070
  :param pulumi.Input[str] authorized_network: Compute Engine network used for Service Networking to be peered with Apigee runtime instances.
941
1071
  See [Getting started with the Service Networking API](https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started).
@@ -943,6 +1073,8 @@ class Organization(pulumi.CustomResource):
943
1073
  :param pulumi.Input[str] billing_type: Billing type of the Apigee organization. See [Apigee pricing](https://cloud.google.com/apigee/pricing).
944
1074
  :param pulumi.Input[str] ca_certificate: Output only. Base64-encoded public certificate for the root CA of the Apigee organization.
945
1075
  Valid only when `RuntimeType` is CLOUD. A base64-encoded string.
1076
+ :param pulumi.Input[str] control_plane_encryption_key_name: Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
1077
+ Only used for the data residency region "US" or "EU".
946
1078
  :param pulumi.Input[str] description: Description of the Apigee organization.
947
1079
  :param pulumi.Input[bool] disable_vpc_peering: Flag that specifies whether the VPC Peering through Private Google Access should be
948
1080
  disabled between the consumer network and Apigee. Required if an `authorizedNetwork`
@@ -978,10 +1110,13 @@ class Organization(pulumi.CustomResource):
978
1110
  __props__ = _OrganizationState.__new__(_OrganizationState)
979
1111
 
980
1112
  __props__.__dict__["analytics_region"] = analytics_region
1113
+ __props__.__dict__["api_consumer_data_encryption_key_name"] = api_consumer_data_encryption_key_name
1114
+ __props__.__dict__["api_consumer_data_location"] = api_consumer_data_location
981
1115
  __props__.__dict__["apigee_project_id"] = apigee_project_id
982
1116
  __props__.__dict__["authorized_network"] = authorized_network
983
1117
  __props__.__dict__["billing_type"] = billing_type
984
1118
  __props__.__dict__["ca_certificate"] = ca_certificate
1119
+ __props__.__dict__["control_plane_encryption_key_name"] = control_plane_encryption_key_name
985
1120
  __props__.__dict__["description"] = description
986
1121
  __props__.__dict__["disable_vpc_peering"] = disable_vpc_peering
987
1122
  __props__.__dict__["display_name"] = display_name
@@ -1002,6 +1137,24 @@ class Organization(pulumi.CustomResource):
1002
1137
  """
1003
1138
  return pulumi.get(self, "analytics_region")
1004
1139
 
1140
+ @property
1141
+ @pulumi.getter(name="apiConsumerDataEncryptionKeyName")
1142
+ def api_consumer_data_encryption_key_name(self) -> pulumi.Output[Optional[str]]:
1143
+ """
1144
+ Cloud KMS key name used for encrypting API consumer data.
1145
+ """
1146
+ return pulumi.get(self, "api_consumer_data_encryption_key_name")
1147
+
1148
+ @property
1149
+ @pulumi.getter(name="apiConsumerDataLocation")
1150
+ def api_consumer_data_location(self) -> pulumi.Output[Optional[str]]:
1151
+ """
1152
+ This field is needed only for customers using non-default data residency regions.
1153
+ Apigee stores some control plane data only in single region.
1154
+ This field determines which single region Apigee should use.
1155
+ """
1156
+ return pulumi.get(self, "api_consumer_data_location")
1157
+
1005
1158
  @property
1006
1159
  @pulumi.getter(name="apigeeProjectId")
1007
1160
  def apigee_project_id(self) -> pulumi.Output[str]:
@@ -1037,6 +1190,15 @@ class Organization(pulumi.CustomResource):
1037
1190
  """
1038
1191
  return pulumi.get(self, "ca_certificate")
1039
1192
 
1193
+ @property
1194
+ @pulumi.getter(name="controlPlaneEncryptionKeyName")
1195
+ def control_plane_encryption_key_name(self) -> pulumi.Output[Optional[str]]:
1196
+ """
1197
+ Cloud KMS key name used for encrypting control plane data that is stored in a multi region.
1198
+ Only used for the data residency region "US" or "EU".
1199
+ """
1200
+ return pulumi.get(self, "control_plane_encryption_key_name")
1201
+
1040
1202
  @property
1041
1203
  @pulumi.getter
1042
1204
  def description(self) -> pulumi.Output[Optional[str]]:
@@ -21,9 +21,13 @@ __all__ = [
21
21
  'RepositoryRemoteRepositoryConfigAptRepositoryArgs',
22
22
  'RepositoryRemoteRepositoryConfigAptRepositoryPublicRepositoryArgs',
23
23
  'RepositoryRemoteRepositoryConfigDockerRepositoryArgs',
24
+ 'RepositoryRemoteRepositoryConfigDockerRepositoryCustomRepositoryArgs',
24
25
  'RepositoryRemoteRepositoryConfigMavenRepositoryArgs',
26
+ 'RepositoryRemoteRepositoryConfigMavenRepositoryCustomRepositoryArgs',
25
27
  'RepositoryRemoteRepositoryConfigNpmRepositoryArgs',
28
+ 'RepositoryRemoteRepositoryConfigNpmRepositoryCustomRepositoryArgs',
26
29
  'RepositoryRemoteRepositoryConfigPythonRepositoryArgs',
30
+ 'RepositoryRemoteRepositoryConfigPythonRepositoryCustomRepositoryArgs',
27
31
  'RepositoryRemoteRepositoryConfigUpstreamCredentialsArgs',
28
32
  'RepositoryRemoteRepositoryConfigUpstreamCredentialsUsernamePasswordCredentialsArgs',
29
33
  'RepositoryRemoteRepositoryConfigYumRepositoryArgs',
@@ -407,6 +411,7 @@ class RepositoryRemoteRepositoryConfigArgs:
407
411
  def __init__(__self__, *,
408
412
  apt_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigAptRepositoryArgs']] = None,
409
413
  description: Optional[pulumi.Input[str]] = None,
414
+ disable_upstream_validation: Optional[pulumi.Input[bool]] = None,
410
415
  docker_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryArgs']] = None,
411
416
  maven_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigMavenRepositoryArgs']] = None,
412
417
  npm_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigNpmRepositoryArgs']] = None,
@@ -417,6 +422,8 @@ class RepositoryRemoteRepositoryConfigArgs:
417
422
  :param pulumi.Input['RepositoryRemoteRepositoryConfigAptRepositoryArgs'] apt_repository: Specific settings for an Apt remote repository.
418
423
  Structure is documented below.
419
424
  :param pulumi.Input[str] description: The description of the remote source.
425
+ :param pulumi.Input[bool] disable_upstream_validation: If true, the remote repository upstream and upstream credentials will
426
+ not be validated.
420
427
  :param pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryArgs'] docker_repository: Specific settings for a Docker remote repository.
421
428
  Structure is documented below.
422
429
  :param pulumi.Input['RepositoryRemoteRepositoryConfigMavenRepositoryArgs'] maven_repository: Specific settings for a Maven remote repository.
@@ -434,6 +441,8 @@ class RepositoryRemoteRepositoryConfigArgs:
434
441
  pulumi.set(__self__, "apt_repository", apt_repository)
435
442
  if description is not None:
436
443
  pulumi.set(__self__, "description", description)
444
+ if disable_upstream_validation is not None:
445
+ pulumi.set(__self__, "disable_upstream_validation", disable_upstream_validation)
437
446
  if docker_repository is not None:
438
447
  pulumi.set(__self__, "docker_repository", docker_repository)
439
448
  if maven_repository is not None:
@@ -472,6 +481,19 @@ class RepositoryRemoteRepositoryConfigArgs:
472
481
  def description(self, value: Optional[pulumi.Input[str]]):
473
482
  pulumi.set(self, "description", value)
474
483
 
484
+ @property
485
+ @pulumi.getter(name="disableUpstreamValidation")
486
+ def disable_upstream_validation(self) -> Optional[pulumi.Input[bool]]:
487
+ """
488
+ If true, the remote repository upstream and upstream credentials will
489
+ not be validated.
490
+ """
491
+ return pulumi.get(self, "disable_upstream_validation")
492
+
493
+ @disable_upstream_validation.setter
494
+ def disable_upstream_validation(self, value: Optional[pulumi.Input[bool]]):
495
+ pulumi.set(self, "disable_upstream_validation", value)
496
+
475
497
  @property
476
498
  @pulumi.getter(name="dockerRepository")
477
499
  def docker_repository(self) -> Optional[pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryArgs']]:
@@ -618,15 +640,33 @@ class RepositoryRemoteRepositoryConfigAptRepositoryPublicRepositoryArgs:
618
640
  @pulumi.input_type
619
641
  class RepositoryRemoteRepositoryConfigDockerRepositoryArgs:
620
642
  def __init__(__self__, *,
643
+ custom_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryCustomRepositoryArgs']] = None,
621
644
  public_repository: Optional[pulumi.Input[str]] = None):
622
645
  """
646
+ :param pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryCustomRepositoryArgs'] custom_repository: Settings for a remote repository with a custom uri.
647
+ Structure is documented below.
623
648
  :param pulumi.Input[str] public_repository: Address of the remote repository.
624
649
  Default value is `DOCKER_HUB`.
625
650
  Possible values are: `DOCKER_HUB`.
626
651
  """
652
+ if custom_repository is not None:
653
+ pulumi.set(__self__, "custom_repository", custom_repository)
627
654
  if public_repository is not None:
628
655
  pulumi.set(__self__, "public_repository", public_repository)
629
656
 
657
+ @property
658
+ @pulumi.getter(name="customRepository")
659
+ def custom_repository(self) -> Optional[pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryCustomRepositoryArgs']]:
660
+ """
661
+ Settings for a remote repository with a custom uri.
662
+ Structure is documented below.
663
+ """
664
+ return pulumi.get(self, "custom_repository")
665
+
666
+ @custom_repository.setter
667
+ def custom_repository(self, value: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigDockerRepositoryCustomRepositoryArgs']]):
668
+ pulumi.set(self, "custom_repository", value)
669
+
630
670
  @property
631
671
  @pulumi.getter(name="publicRepository")
632
672
  def public_repository(self) -> Optional[pulumi.Input[str]]:
@@ -642,18 +682,59 @@ class RepositoryRemoteRepositoryConfigDockerRepositoryArgs:
642
682
  pulumi.set(self, "public_repository", value)
643
683
 
644
684
 
685
+ @pulumi.input_type
686
+ class RepositoryRemoteRepositoryConfigDockerRepositoryCustomRepositoryArgs:
687
+ def __init__(__self__, *,
688
+ uri: Optional[pulumi.Input[str]] = None):
689
+ """
690
+ :param pulumi.Input[str] uri: Specific uri to the registry, e.g. `"https://pypi.io"`
691
+ """
692
+ if uri is not None:
693
+ pulumi.set(__self__, "uri", uri)
694
+
695
+ @property
696
+ @pulumi.getter
697
+ def uri(self) -> Optional[pulumi.Input[str]]:
698
+ """
699
+ Specific uri to the registry, e.g. `"https://pypi.io"`
700
+ """
701
+ return pulumi.get(self, "uri")
702
+
703
+ @uri.setter
704
+ def uri(self, value: Optional[pulumi.Input[str]]):
705
+ pulumi.set(self, "uri", value)
706
+
707
+
645
708
  @pulumi.input_type
646
709
  class RepositoryRemoteRepositoryConfigMavenRepositoryArgs:
647
710
  def __init__(__self__, *,
711
+ custom_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigMavenRepositoryCustomRepositoryArgs']] = None,
648
712
  public_repository: Optional[pulumi.Input[str]] = None):
649
713
  """
714
+ :param pulumi.Input['RepositoryRemoteRepositoryConfigMavenRepositoryCustomRepositoryArgs'] custom_repository: Settings for a remote repository with a custom uri.
715
+ Structure is documented below.
650
716
  :param pulumi.Input[str] public_repository: Address of the remote repository.
651
717
  Default value is `MAVEN_CENTRAL`.
652
718
  Possible values are: `MAVEN_CENTRAL`.
653
719
  """
720
+ if custom_repository is not None:
721
+ pulumi.set(__self__, "custom_repository", custom_repository)
654
722
  if public_repository is not None:
655
723
  pulumi.set(__self__, "public_repository", public_repository)
656
724
 
725
+ @property
726
+ @pulumi.getter(name="customRepository")
727
+ def custom_repository(self) -> Optional[pulumi.Input['RepositoryRemoteRepositoryConfigMavenRepositoryCustomRepositoryArgs']]:
728
+ """
729
+ Settings for a remote repository with a custom uri.
730
+ Structure is documented below.
731
+ """
732
+ return pulumi.get(self, "custom_repository")
733
+
734
+ @custom_repository.setter
735
+ def custom_repository(self, value: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigMavenRepositoryCustomRepositoryArgs']]):
736
+ pulumi.set(self, "custom_repository", value)
737
+
657
738
  @property
658
739
  @pulumi.getter(name="publicRepository")
659
740
  def public_repository(self) -> Optional[pulumi.Input[str]]:
@@ -669,18 +750,59 @@ class RepositoryRemoteRepositoryConfigMavenRepositoryArgs:
669
750
  pulumi.set(self, "public_repository", value)
670
751
 
671
752
 
753
+ @pulumi.input_type
754
+ class RepositoryRemoteRepositoryConfigMavenRepositoryCustomRepositoryArgs:
755
+ def __init__(__self__, *,
756
+ uri: Optional[pulumi.Input[str]] = None):
757
+ """
758
+ :param pulumi.Input[str] uri: Specific uri to the registry, e.g. `"https://pypi.io"`
759
+ """
760
+ if uri is not None:
761
+ pulumi.set(__self__, "uri", uri)
762
+
763
+ @property
764
+ @pulumi.getter
765
+ def uri(self) -> Optional[pulumi.Input[str]]:
766
+ """
767
+ Specific uri to the registry, e.g. `"https://pypi.io"`
768
+ """
769
+ return pulumi.get(self, "uri")
770
+
771
+ @uri.setter
772
+ def uri(self, value: Optional[pulumi.Input[str]]):
773
+ pulumi.set(self, "uri", value)
774
+
775
+
672
776
  @pulumi.input_type
673
777
  class RepositoryRemoteRepositoryConfigNpmRepositoryArgs:
674
778
  def __init__(__self__, *,
779
+ custom_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigNpmRepositoryCustomRepositoryArgs']] = None,
675
780
  public_repository: Optional[pulumi.Input[str]] = None):
676
781
  """
782
+ :param pulumi.Input['RepositoryRemoteRepositoryConfigNpmRepositoryCustomRepositoryArgs'] custom_repository: Settings for a remote repository with a custom uri.
783
+ Structure is documented below.
677
784
  :param pulumi.Input[str] public_repository: Address of the remote repository.
678
785
  Default value is `NPMJS`.
679
786
  Possible values are: `NPMJS`.
680
787
  """
788
+ if custom_repository is not None:
789
+ pulumi.set(__self__, "custom_repository", custom_repository)
681
790
  if public_repository is not None:
682
791
  pulumi.set(__self__, "public_repository", public_repository)
683
792
 
793
+ @property
794
+ @pulumi.getter(name="customRepository")
795
+ def custom_repository(self) -> Optional[pulumi.Input['RepositoryRemoteRepositoryConfigNpmRepositoryCustomRepositoryArgs']]:
796
+ """
797
+ Settings for a remote repository with a custom uri.
798
+ Structure is documented below.
799
+ """
800
+ return pulumi.get(self, "custom_repository")
801
+
802
+ @custom_repository.setter
803
+ def custom_repository(self, value: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigNpmRepositoryCustomRepositoryArgs']]):
804
+ pulumi.set(self, "custom_repository", value)
805
+
684
806
  @property
685
807
  @pulumi.getter(name="publicRepository")
686
808
  def public_repository(self) -> Optional[pulumi.Input[str]]:
@@ -696,18 +818,59 @@ class RepositoryRemoteRepositoryConfigNpmRepositoryArgs:
696
818
  pulumi.set(self, "public_repository", value)
697
819
 
698
820
 
821
+ @pulumi.input_type
822
+ class RepositoryRemoteRepositoryConfigNpmRepositoryCustomRepositoryArgs:
823
+ def __init__(__self__, *,
824
+ uri: Optional[pulumi.Input[str]] = None):
825
+ """
826
+ :param pulumi.Input[str] uri: Specific uri to the registry, e.g. `"https://pypi.io"`
827
+ """
828
+ if uri is not None:
829
+ pulumi.set(__self__, "uri", uri)
830
+
831
+ @property
832
+ @pulumi.getter
833
+ def uri(self) -> Optional[pulumi.Input[str]]:
834
+ """
835
+ Specific uri to the registry, e.g. `"https://pypi.io"`
836
+ """
837
+ return pulumi.get(self, "uri")
838
+
839
+ @uri.setter
840
+ def uri(self, value: Optional[pulumi.Input[str]]):
841
+ pulumi.set(self, "uri", value)
842
+
843
+
699
844
  @pulumi.input_type
700
845
  class RepositoryRemoteRepositoryConfigPythonRepositoryArgs:
701
846
  def __init__(__self__, *,
847
+ custom_repository: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigPythonRepositoryCustomRepositoryArgs']] = None,
702
848
  public_repository: Optional[pulumi.Input[str]] = None):
703
849
  """
850
+ :param pulumi.Input['RepositoryRemoteRepositoryConfigPythonRepositoryCustomRepositoryArgs'] custom_repository: Settings for a remote repository with a custom uri.
851
+ Structure is documented below.
704
852
  :param pulumi.Input[str] public_repository: Address of the remote repository.
705
853
  Default value is `PYPI`.
706
854
  Possible values are: `PYPI`.
707
855
  """
856
+ if custom_repository is not None:
857
+ pulumi.set(__self__, "custom_repository", custom_repository)
708
858
  if public_repository is not None:
709
859
  pulumi.set(__self__, "public_repository", public_repository)
710
860
 
861
+ @property
862
+ @pulumi.getter(name="customRepository")
863
+ def custom_repository(self) -> Optional[pulumi.Input['RepositoryRemoteRepositoryConfigPythonRepositoryCustomRepositoryArgs']]:
864
+ """
865
+ Settings for a remote repository with a custom uri.
866
+ Structure is documented below.
867
+ """
868
+ return pulumi.get(self, "custom_repository")
869
+
870
+ @custom_repository.setter
871
+ def custom_repository(self, value: Optional[pulumi.Input['RepositoryRemoteRepositoryConfigPythonRepositoryCustomRepositoryArgs']]):
872
+ pulumi.set(self, "custom_repository", value)
873
+
711
874
  @property
712
875
  @pulumi.getter(name="publicRepository")
713
876
  def public_repository(self) -> Optional[pulumi.Input[str]]:
@@ -723,6 +886,29 @@ class RepositoryRemoteRepositoryConfigPythonRepositoryArgs:
723
886
  pulumi.set(self, "public_repository", value)
724
887
 
725
888
 
889
+ @pulumi.input_type
890
+ class RepositoryRemoteRepositoryConfigPythonRepositoryCustomRepositoryArgs:
891
+ def __init__(__self__, *,
892
+ uri: Optional[pulumi.Input[str]] = None):
893
+ """
894
+ :param pulumi.Input[str] uri: Specific uri to the registry, e.g. `"https://pypi.io"`
895
+ """
896
+ if uri is not None:
897
+ pulumi.set(__self__, "uri", uri)
898
+
899
+ @property
900
+ @pulumi.getter
901
+ def uri(self) -> Optional[pulumi.Input[str]]:
902
+ """
903
+ Specific uri to the registry, e.g. `"https://pypi.io"`
904
+ """
905
+ return pulumi.get(self, "uri")
906
+
907
+ @uri.setter
908
+ def uri(self, value: Optional[pulumi.Input[str]]):
909
+ pulumi.set(self, "uri", value)
910
+
911
+
726
912
  @pulumi.input_type
727
913
  class RepositoryRemoteRepositoryConfigUpstreamCredentialsArgs:
728
914
  def __init__(__self__, *,