pulumi-gcp 7.34.0a1722604983__py3-none-any.whl → 7.35.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.

Potentially problematic release.


This version of pulumi-gcp might be problematic. Click here for more details.

@@ -2686,7 +2686,10 @@ if not MYPY:
2686
2686
  """
2687
2687
  A Google Cloud resource that is allowed to ingress the perimeter.
2688
2688
  Requests from these resources will be allowed to access perimeter data.
2689
- Currently only projects are allowed. Format `projects/{project_number}`
2689
+ Currently only projects and VPCs are allowed.
2690
+ Project format: `projects/{projectNumber}`
2691
+ VPC network format:
2692
+ `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
2690
2693
  The project may be in any Google Cloud organization, not just the
2691
2694
  organization that the perimeter is defined in. `*` is not allowed, the case
2692
2695
  of allowing all Google Cloud resources only is not supported.
@@ -2710,7 +2713,10 @@ class ServicePerimeterIngressPolicyIngressFromSourceArgs:
2710
2713
  If * is specified, then all IngressSources will be allowed.
2711
2714
  :param pulumi.Input[str] resource: A Google Cloud resource that is allowed to ingress the perimeter.
2712
2715
  Requests from these resources will be allowed to access perimeter data.
2713
- Currently only projects are allowed. Format `projects/{project_number}`
2716
+ Currently only projects and VPCs are allowed.
2717
+ Project format: `projects/{projectNumber}`
2718
+ VPC network format:
2719
+ `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
2714
2720
  The project may be in any Google Cloud organization, not just the
2715
2721
  organization that the perimeter is defined in. `*` is not allowed, the case
2716
2722
  of allowing all Google Cloud resources only is not supported.
@@ -2745,7 +2751,10 @@ class ServicePerimeterIngressPolicyIngressFromSourceArgs:
2745
2751
  """
2746
2752
  A Google Cloud resource that is allowed to ingress the perimeter.
2747
2753
  Requests from these resources will be allowed to access perimeter data.
2748
- Currently only projects are allowed. Format `projects/{project_number}`
2754
+ Currently only projects and VPCs are allowed.
2755
+ Project format: `projects/{projectNumber}`
2756
+ VPC network format:
2757
+ `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
2749
2758
  The project may be in any Google Cloud organization, not just the
2750
2759
  organization that the perimeter is defined in. `*` is not allowed, the case
2751
2760
  of allowing all Google Cloud resources only is not supported.
@@ -25,13 +25,13 @@ class AccessPolicyArgs:
25
25
  """
26
26
  The set of arguments for constructing a AccessPolicy resource.
27
27
  :param pulumi.Input[str] parent: The parent of this AccessPolicy in the Cloud Resource Hierarchy.
28
- Format: organizations/{organization_id}
28
+ Format: 'organizations/{{organization_id}}'
29
29
  :param pulumi.Input[str] title: Human readable title. Does not affect behavior.
30
30
 
31
31
 
32
32
  - - -
33
33
  :param pulumi.Input[str] scopes: Folder or project on which this policy is applicable.
34
- Format: folders/{{folder_id}} or projects/{{project_id}}
34
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
35
35
  """
36
36
  pulumi.set(__self__, "parent", parent)
37
37
  pulumi.set(__self__, "title", title)
@@ -43,7 +43,7 @@ class AccessPolicyArgs:
43
43
  def parent(self) -> pulumi.Input[str]:
44
44
  """
45
45
  The parent of this AccessPolicy in the Cloud Resource Hierarchy.
46
- Format: organizations/{organization_id}
46
+ Format: 'organizations/{{organization_id}}'
47
47
  """
48
48
  return pulumi.get(self, "parent")
49
49
 
@@ -71,7 +71,7 @@ class AccessPolicyArgs:
71
71
  def scopes(self) -> Optional[pulumi.Input[str]]:
72
72
  """
73
73
  Folder or project on which this policy is applicable.
74
- Format: folders/{{folder_id}} or projects/{{project_id}}
74
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
75
75
  """
76
76
  return pulumi.get(self, "scopes")
77
77
 
@@ -92,11 +92,11 @@ class _AccessPolicyState:
92
92
  """
93
93
  Input properties used for looking up and filtering AccessPolicy resources.
94
94
  :param pulumi.Input[str] create_time: Time the AccessPolicy was created in UTC.
95
- :param pulumi.Input[str] name: Resource name of the AccessPolicy. Format: {policy_id}
95
+ :param pulumi.Input[str] name: Resource name of the AccessPolicy. Format: '{{policy_id}}'
96
96
  :param pulumi.Input[str] parent: The parent of this AccessPolicy in the Cloud Resource Hierarchy.
97
- Format: organizations/{organization_id}
97
+ Format: 'organizations/{{organization_id}}'
98
98
  :param pulumi.Input[str] scopes: Folder or project on which this policy is applicable.
99
- Format: folders/{{folder_id}} or projects/{{project_id}}
99
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
100
100
  :param pulumi.Input[str] title: Human readable title. Does not affect behavior.
101
101
 
102
102
 
@@ -132,7 +132,7 @@ class _AccessPolicyState:
132
132
  @pulumi.getter
133
133
  def name(self) -> Optional[pulumi.Input[str]]:
134
134
  """
135
- Resource name of the AccessPolicy. Format: {policy_id}
135
+ Resource name of the AccessPolicy. Format: '{{policy_id}}'
136
136
  """
137
137
  return pulumi.get(self, "name")
138
138
 
@@ -145,7 +145,7 @@ class _AccessPolicyState:
145
145
  def parent(self) -> Optional[pulumi.Input[str]]:
146
146
  """
147
147
  The parent of this AccessPolicy in the Cloud Resource Hierarchy.
148
- Format: organizations/{organization_id}
148
+ Format: 'organizations/{{organization_id}}'
149
149
  """
150
150
  return pulumi.get(self, "parent")
151
151
 
@@ -158,7 +158,7 @@ class _AccessPolicyState:
158
158
  def scopes(self) -> Optional[pulumi.Input[str]]:
159
159
  """
160
160
  Folder or project on which this policy is applicable.
161
- Format: folders/{{folder_id}} or projects/{{project_id}}
161
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
162
162
  """
163
163
  return pulumi.get(self, "scopes")
164
164
 
@@ -265,9 +265,9 @@ class AccessPolicy(pulumi.CustomResource):
265
265
  :param str resource_name: The name of the resource.
266
266
  :param pulumi.ResourceOptions opts: Options for the resource.
267
267
  :param pulumi.Input[str] parent: The parent of this AccessPolicy in the Cloud Resource Hierarchy.
268
- Format: organizations/{organization_id}
268
+ Format: 'organizations/{{organization_id}}'
269
269
  :param pulumi.Input[str] scopes: Folder or project on which this policy is applicable.
270
- Format: folders/{{folder_id}} or projects/{{project_id}}
270
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
271
271
  :param pulumi.Input[str] title: Human readable title. Does not affect behavior.
272
272
 
273
273
 
@@ -399,11 +399,11 @@ class AccessPolicy(pulumi.CustomResource):
399
399
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
400
400
  :param pulumi.ResourceOptions opts: Options for the resource.
401
401
  :param pulumi.Input[str] create_time: Time the AccessPolicy was created in UTC.
402
- :param pulumi.Input[str] name: Resource name of the AccessPolicy. Format: {policy_id}
402
+ :param pulumi.Input[str] name: Resource name of the AccessPolicy. Format: '{{policy_id}}'
403
403
  :param pulumi.Input[str] parent: The parent of this AccessPolicy in the Cloud Resource Hierarchy.
404
- Format: organizations/{organization_id}
404
+ Format: 'organizations/{{organization_id}}'
405
405
  :param pulumi.Input[str] scopes: Folder or project on which this policy is applicable.
406
- Format: folders/{{folder_id}} or projects/{{project_id}}
406
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
407
407
  :param pulumi.Input[str] title: Human readable title. Does not affect behavior.
408
408
 
409
409
 
@@ -434,7 +434,7 @@ class AccessPolicy(pulumi.CustomResource):
434
434
  @pulumi.getter
435
435
  def name(self) -> pulumi.Output[str]:
436
436
  """
437
- Resource name of the AccessPolicy. Format: {policy_id}
437
+ Resource name of the AccessPolicy. Format: '{{policy_id}}'
438
438
  """
439
439
  return pulumi.get(self, "name")
440
440
 
@@ -443,7 +443,7 @@ class AccessPolicy(pulumi.CustomResource):
443
443
  def parent(self) -> pulumi.Output[str]:
444
444
  """
445
445
  The parent of this AccessPolicy in the Cloud Resource Hierarchy.
446
- Format: organizations/{organization_id}
446
+ Format: 'organizations/{{organization_id}}'
447
447
  """
448
448
  return pulumi.get(self, "parent")
449
449
 
@@ -452,7 +452,7 @@ class AccessPolicy(pulumi.CustomResource):
452
452
  def scopes(self) -> pulumi.Output[Optional[str]]:
453
453
  """
454
454
  Folder or project on which this policy is applicable.
455
- Format: folders/{{folder_id}} or projects/{{project_id}}
455
+ Format: 'folders/{{folder_id}}' or 'projects/{{project_number}}'
456
456
  """
457
457
  return pulumi.get(self, "scopes")
458
458
 
@@ -2049,7 +2049,10 @@ class ServicePerimeterIngressPolicyIngressFromSource(dict):
2049
2049
  If * is specified, then all IngressSources will be allowed.
2050
2050
  :param str resource: A Google Cloud resource that is allowed to ingress the perimeter.
2051
2051
  Requests from these resources will be allowed to access perimeter data.
2052
- Currently only projects are allowed. Format `projects/{project_number}`
2052
+ Currently only projects and VPCs are allowed.
2053
+ Project format: `projects/{projectNumber}`
2054
+ VPC network format:
2055
+ `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
2053
2056
  The project may be in any Google Cloud organization, not just the
2054
2057
  organization that the perimeter is defined in. `*` is not allowed, the case
2055
2058
  of allowing all Google Cloud resources only is not supported.
@@ -2080,7 +2083,10 @@ class ServicePerimeterIngressPolicyIngressFromSource(dict):
2080
2083
  """
2081
2084
  A Google Cloud resource that is allowed to ingress the perimeter.
2082
2085
  Requests from these resources will be allowed to access perimeter data.
2083
- Currently only projects are allowed. Format `projects/{project_number}`
2086
+ Currently only projects and VPCs are allowed.
2087
+ Project format: `projects/{projectNumber}`
2088
+ VPC network format:
2089
+ `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.
2084
2090
  The project may be in any Google Cloud organization, not just the
2085
2091
  organization that the perimeter is defined in. `*` is not allowed, the case
2086
2092
  of allowing all Google Cloud resources only is not supported.
@@ -693,6 +693,32 @@ class DataTransferConfig(pulumi.CustomResource):
693
693
  },
694
694
  opts = pulumi.ResourceOptions(depends_on=[permissions]))
695
695
  ```
696
+ ### Bigquerydatatransfer Config Salesforce
697
+
698
+ ```python
699
+ import pulumi
700
+ import pulumi_gcp as gcp
701
+
702
+ project = gcp.organizations.get_project()
703
+ my_dataset = gcp.bigquery.Dataset("my_dataset",
704
+ dataset_id="my_dataset",
705
+ description="My dataset",
706
+ location="asia-northeast1")
707
+ salesforce_config = gcp.bigquery.DataTransferConfig("salesforce_config",
708
+ display_name="my-salesforce-config",
709
+ location="asia-northeast1",
710
+ data_source_id="salesforce",
711
+ schedule="first sunday of quarter 00:00",
712
+ destination_dataset_id=my_dataset.dataset_id,
713
+ params={
714
+ "connector.authentication.oauth.clientId": "client-id",
715
+ "connector.authentication.oauth.clientSecret": "client-secret",
716
+ "connector.authentication.username": "username",
717
+ "connector.authentication.password": "password",
718
+ "connector.authentication.securityToken": "security-token",
719
+ "assets": "[\\"asset-a\\",\\"asset-b\\"]",
720
+ })
721
+ ```
696
722
 
697
723
  ## Import
698
724
 
@@ -803,6 +829,32 @@ class DataTransferConfig(pulumi.CustomResource):
803
829
  },
804
830
  opts = pulumi.ResourceOptions(depends_on=[permissions]))
805
831
  ```
832
+ ### Bigquerydatatransfer Config Salesforce
833
+
834
+ ```python
835
+ import pulumi
836
+ import pulumi_gcp as gcp
837
+
838
+ project = gcp.organizations.get_project()
839
+ my_dataset = gcp.bigquery.Dataset("my_dataset",
840
+ dataset_id="my_dataset",
841
+ description="My dataset",
842
+ location="asia-northeast1")
843
+ salesforce_config = gcp.bigquery.DataTransferConfig("salesforce_config",
844
+ display_name="my-salesforce-config",
845
+ location="asia-northeast1",
846
+ data_source_id="salesforce",
847
+ schedule="first sunday of quarter 00:00",
848
+ destination_dataset_id=my_dataset.dataset_id,
849
+ params={
850
+ "connector.authentication.oauth.clientId": "client-id",
851
+ "connector.authentication.oauth.clientSecret": "client-secret",
852
+ "connector.authentication.username": "username",
853
+ "connector.authentication.password": "password",
854
+ "connector.authentication.securityToken": "security-token",
855
+ "assets": "[\\"asset-a\\",\\"asset-b\\"]",
856
+ })
857
+ ```
806
858
 
807
859
  ## Import
808
860
 
@@ -13962,19 +13962,19 @@ if not MYPY:
13962
13962
  """
13963
13963
  max_surge_fixed: NotRequired[pulumi.Input[int]]
13964
13964
  """
13965
- , The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with `max_surge_percent`. If neither is set, defaults to 1
13965
+ , Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with `max_surge_percent`. Both cannot be 0.
13966
13966
  """
13967
13967
  max_surge_percent: NotRequired[pulumi.Input[int]]
13968
13968
  """
13969
- , The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with `max_surge_fixed`.
13969
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with `max_surge_fixed`.
13970
13970
  """
13971
13971
  max_unavailable_fixed: NotRequired[pulumi.Input[int]]
13972
13972
  """
13973
- , The maximum number of instances that can be unavailable during the update process. Conflicts with `max_unavailable_percent`. If neither is set, defaults to 1
13973
+ , Specifies a fixed number of VM instances. This must be a positive integer.
13974
13974
  """
13975
13975
  max_unavailable_percent: NotRequired[pulumi.Input[int]]
13976
13976
  """
13977
- , The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with `max_unavailable_fixed`.
13977
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%..
13978
13978
  """
13979
13979
  min_ready_sec: NotRequired[pulumi.Input[int]]
13980
13980
  """
@@ -14007,10 +14007,10 @@ class InstanceGroupManagerUpdatePolicyArgs:
14007
14007
  """
14008
14008
  :param pulumi.Input[str] minimal_action: Minimal action to be taken on an instance. You can specify either `NONE` to forbid any actions, `REFRESH` to update without stopping instances, `RESTART` to restart existing instances or `REPLACE` to delete and create new instances from the target template. If you specify a `REFRESH`, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.
14009
14009
  :param pulumi.Input[str] type: The type of update process. You can specify either `PROACTIVE` so that the instance group manager proactively executes actions in order to bring instances to their target versions or `OPPORTUNISTIC` so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).
14010
- :param pulumi.Input[int] max_surge_fixed: , The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with `max_surge_percent`. If neither is set, defaults to 1
14011
- :param pulumi.Input[int] max_surge_percent: , The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with `max_surge_fixed`.
14012
- :param pulumi.Input[int] max_unavailable_fixed: , The maximum number of instances that can be unavailable during the update process. Conflicts with `max_unavailable_percent`. If neither is set, defaults to 1
14013
- :param pulumi.Input[int] max_unavailable_percent: , The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with `max_unavailable_fixed`.
14010
+ :param pulumi.Input[int] max_surge_fixed: , Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with `max_surge_percent`. Both cannot be 0.
14011
+ :param pulumi.Input[int] max_surge_percent: , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with `max_surge_fixed`.
14012
+ :param pulumi.Input[int] max_unavailable_fixed: , Specifies a fixed number of VM instances. This must be a positive integer.
14013
+ :param pulumi.Input[int] max_unavailable_percent: , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%..
14014
14014
  :param pulumi.Input[int] min_ready_sec: , Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600]
14015
14015
  :param pulumi.Input[str] most_disruptive_allowed_action: Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to allow actions that do not need instance restart, RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
14016
14016
  :param pulumi.Input[str] replacement_method: , The instance replacement method for managed instance groups. Valid values are: "RECREATE", "SUBSTITUTE". If SUBSTITUTE (default), the group replaces VM instances with new instances that have randomly generated names. If RECREATE, instance names are preserved. You must also set max_unavailable_fixed or max_unavailable_percent to be greater than 0.
@@ -14061,7 +14061,7 @@ class InstanceGroupManagerUpdatePolicyArgs:
14061
14061
  @pulumi.getter(name="maxSurgeFixed")
14062
14062
  def max_surge_fixed(self) -> Optional[pulumi.Input[int]]:
14063
14063
  """
14064
- , The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with `max_surge_percent`. If neither is set, defaults to 1
14064
+ , Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with `max_surge_percent`. Both cannot be 0.
14065
14065
  """
14066
14066
  return pulumi.get(self, "max_surge_fixed")
14067
14067
 
@@ -14073,7 +14073,7 @@ class InstanceGroupManagerUpdatePolicyArgs:
14073
14073
  @pulumi.getter(name="maxSurgePercent")
14074
14074
  def max_surge_percent(self) -> Optional[pulumi.Input[int]]:
14075
14075
  """
14076
- , The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with `max_surge_fixed`.
14076
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with `max_surge_fixed`.
14077
14077
  """
14078
14078
  return pulumi.get(self, "max_surge_percent")
14079
14079
 
@@ -14085,7 +14085,7 @@ class InstanceGroupManagerUpdatePolicyArgs:
14085
14085
  @pulumi.getter(name="maxUnavailableFixed")
14086
14086
  def max_unavailable_fixed(self) -> Optional[pulumi.Input[int]]:
14087
14087
  """
14088
- , The maximum number of instances that can be unavailable during the update process. Conflicts with `max_unavailable_percent`. If neither is set, defaults to 1
14088
+ , Specifies a fixed number of VM instances. This must be a positive integer.
14089
14089
  """
14090
14090
  return pulumi.get(self, "max_unavailable_fixed")
14091
14091
 
@@ -14097,7 +14097,7 @@ class InstanceGroupManagerUpdatePolicyArgs:
14097
14097
  @pulumi.getter(name="maxUnavailablePercent")
14098
14098
  def max_unavailable_percent(self) -> Optional[pulumi.Input[int]]:
14099
14099
  """
14100
- , The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with `max_unavailable_fixed`.
14100
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%..
14101
14101
  """
14102
14102
  return pulumi.get(self, "max_unavailable_percent")
14103
14103
 
@@ -27090,19 +27090,19 @@ if not MYPY:
27090
27090
  """
27091
27091
  max_surge_fixed: NotRequired[pulumi.Input[int]]
27092
27092
  """
27093
- , The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with `max_surge_percent`. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of `max_unavailable_fixed` or `max_surge_fixed` must be greater than 0.
27093
+ , Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with `max_surge_percent`. Both cannot be 0.
27094
27094
  """
27095
27095
  max_surge_percent: NotRequired[pulumi.Input[int]]
27096
27096
  """
27097
- , The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with `max_surge_fixed`. Percent value is only allowed for regional managed instance groups with size at least 10.
27097
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with `max_surge_fixed`.
27098
27098
  """
27099
27099
  max_unavailable_fixed: NotRequired[pulumi.Input[int]]
27100
27100
  """
27101
- , The maximum number of instances that can be unavailable during the update process. Conflicts with `max_unavailable_percent`. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of `max_unavailable_fixed` or `max_surge_fixed` must be greater than 0.
27101
+ , Specifies a fixed number of VM instances. This must be a positive integer.
27102
27102
  """
27103
27103
  max_unavailable_percent: NotRequired[pulumi.Input[int]]
27104
27104
  """
27105
- , The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with `max_unavailable_fixed`. Percent value is only allowed for regional managed instance groups with size at least 10.
27105
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%..
27106
27106
  """
27107
27107
  min_ready_sec: NotRequired[pulumi.Input[int]]
27108
27108
  """
@@ -27137,10 +27137,10 @@ class RegionInstanceGroupManagerUpdatePolicyArgs:
27137
27137
  :param pulumi.Input[str] minimal_action: Minimal action to be taken on an instance. You can specify either `NONE` to forbid any actions, `REFRESH` to update without stopping instances, `RESTART` to restart existing instances or `REPLACE` to delete and create new instances from the target template. If you specify a `REFRESH`, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.
27138
27138
  :param pulumi.Input[str] type: The type of update process. You can specify either `PROACTIVE` so that the instance group manager proactively executes actions in order to bring instances to their target versions or `OPPORTUNISTIC` so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).
27139
27139
  :param pulumi.Input[str] instance_redistribution_type: The instance redistribution policy for regional managed instance groups. Valid values are: `"PROACTIVE"`, `"NONE"`. If `PROACTIVE` (default), the group attempts to maintain an even distribution of VM instances across zones in the region. If `NONE`, proactive redistribution is disabled.
27140
- :param pulumi.Input[int] max_surge_fixed: , The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with `max_surge_percent`. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of `max_unavailable_fixed` or `max_surge_fixed` must be greater than 0.
27141
- :param pulumi.Input[int] max_surge_percent: , The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with `max_surge_fixed`. Percent value is only allowed for regional managed instance groups with size at least 10.
27142
- :param pulumi.Input[int] max_unavailable_fixed: , The maximum number of instances that can be unavailable during the update process. Conflicts with `max_unavailable_percent`. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of `max_unavailable_fixed` or `max_surge_fixed` must be greater than 0.
27143
- :param pulumi.Input[int] max_unavailable_percent: , The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with `max_unavailable_fixed`. Percent value is only allowed for regional managed instance groups with size at least 10.
27140
+ :param pulumi.Input[int] max_surge_fixed: , Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with `max_surge_percent`. Both cannot be 0.
27141
+ :param pulumi.Input[int] max_surge_percent: , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with `max_surge_fixed`.
27142
+ :param pulumi.Input[int] max_unavailable_fixed: , Specifies a fixed number of VM instances. This must be a positive integer.
27143
+ :param pulumi.Input[int] max_unavailable_percent: , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%..
27144
27144
  :param pulumi.Input[int] min_ready_sec: , Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600]
27145
27145
  :param pulumi.Input[str] most_disruptive_allowed_action: Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to allow actions that do not need instance restart, RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
27146
27146
  :param pulumi.Input[str] replacement_method: , The instance replacement method for managed instance groups. Valid values are: "RECREATE", "SUBSTITUTE". If SUBSTITUTE (default), the group replaces VM instances with new instances that have randomly generated names. If RECREATE, instance names are preserved. You must also set max_unavailable_fixed or max_unavailable_percent to be greater than 0.
@@ -27205,7 +27205,7 @@ class RegionInstanceGroupManagerUpdatePolicyArgs:
27205
27205
  @pulumi.getter(name="maxSurgeFixed")
27206
27206
  def max_surge_fixed(self) -> Optional[pulumi.Input[int]]:
27207
27207
  """
27208
- , The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with `max_surge_percent`. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of `max_unavailable_fixed` or `max_surge_fixed` must be greater than 0.
27208
+ , Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with `max_surge_percent`. Both cannot be 0.
27209
27209
  """
27210
27210
  return pulumi.get(self, "max_surge_fixed")
27211
27211
 
@@ -27217,7 +27217,7 @@ class RegionInstanceGroupManagerUpdatePolicyArgs:
27217
27217
  @pulumi.getter(name="maxSurgePercent")
27218
27218
  def max_surge_percent(self) -> Optional[pulumi.Input[int]]:
27219
27219
  """
27220
- , The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with `max_surge_fixed`. Percent value is only allowed for regional managed instance groups with size at least 10.
27220
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with `max_surge_fixed`.
27221
27221
  """
27222
27222
  return pulumi.get(self, "max_surge_percent")
27223
27223
 
@@ -27229,7 +27229,7 @@ class RegionInstanceGroupManagerUpdatePolicyArgs:
27229
27229
  @pulumi.getter(name="maxUnavailableFixed")
27230
27230
  def max_unavailable_fixed(self) -> Optional[pulumi.Input[int]]:
27231
27231
  """
27232
- , The maximum number of instances that can be unavailable during the update process. Conflicts with `max_unavailable_percent`. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of `max_unavailable_fixed` or `max_surge_fixed` must be greater than 0.
27232
+ , Specifies a fixed number of VM instances. This must be a positive integer.
27233
27233
  """
27234
27234
  return pulumi.get(self, "max_unavailable_fixed")
27235
27235
 
@@ -27241,7 +27241,7 @@ class RegionInstanceGroupManagerUpdatePolicyArgs:
27241
27241
  @pulumi.getter(name="maxUnavailablePercent")
27242
27242
  def max_unavailable_percent(self) -> Optional[pulumi.Input[int]]:
27243
27243
  """
27244
- , The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with `max_unavailable_fixed`. Percent value is only allowed for regional managed instance groups with size at least 10.
27244
+ , Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%..
27245
27245
  """
27246
27246
  return pulumi.get(self, "max_unavailable_percent")
27247
27247
 
@@ -21,6 +21,7 @@ __all__ = ['DiskArgs', 'Disk']
21
21
  @pulumi.input_type
22
22
  class DiskArgs:
23
23
  def __init__(__self__, *,
24
+ access_mode: Optional[pulumi.Input[str]] = None,
24
25
  async_primary_disk: Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']] = None,
25
26
  description: Optional[pulumi.Input[str]] = None,
26
27
  disk_encryption_key: Optional[pulumi.Input['DiskDiskEncryptionKeyArgs']] = None,
@@ -47,6 +48,11 @@ class DiskArgs:
47
48
  zone: Optional[pulumi.Input[str]] = None):
48
49
  """
49
50
  The set of arguments for constructing a Disk resource.
51
+ :param pulumi.Input[str] access_mode: The accessMode of the disk.
52
+ For example:
53
+ * READ_WRITE_SINGLE
54
+ * READ_WRITE_MANY
55
+ * READ_ONLY_SINGLE
50
56
  :param pulumi.Input['DiskAsyncPrimaryDiskArgs'] async_primary_disk: A nested object resource
51
57
  Structure is documented below.
52
58
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when
@@ -154,6 +160,8 @@ class DiskArgs:
154
160
  create the disk. Provide this when creating the disk.
155
161
  :param pulumi.Input[str] zone: A reference to the zone where the disk resides.
156
162
  """
163
+ if access_mode is not None:
164
+ pulumi.set(__self__, "access_mode", access_mode)
157
165
  if async_primary_disk is not None:
158
166
  pulumi.set(__self__, "async_primary_disk", async_primary_disk)
159
167
  if description is not None:
@@ -206,6 +214,22 @@ class DiskArgs:
206
214
  if zone is not None:
207
215
  pulumi.set(__self__, "zone", zone)
208
216
 
217
+ @property
218
+ @pulumi.getter(name="accessMode")
219
+ def access_mode(self) -> Optional[pulumi.Input[str]]:
220
+ """
221
+ The accessMode of the disk.
222
+ For example:
223
+ * READ_WRITE_SINGLE
224
+ * READ_WRITE_MANY
225
+ * READ_ONLY_SINGLE
226
+ """
227
+ return pulumi.get(self, "access_mode")
228
+
229
+ @access_mode.setter
230
+ def access_mode(self, value: Optional[pulumi.Input[str]]):
231
+ pulumi.set(self, "access_mode", value)
232
+
209
233
  @property
210
234
  @pulumi.getter(name="asyncPrimaryDisk")
211
235
  def async_primary_disk(self) -> Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']]:
@@ -581,6 +605,7 @@ class DiskArgs:
581
605
  @pulumi.input_type
582
606
  class _DiskState:
583
607
  def __init__(__self__, *,
608
+ access_mode: Optional[pulumi.Input[str]] = None,
584
609
  async_primary_disk: Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']] = None,
585
610
  creation_timestamp: Optional[pulumi.Input[str]] = None,
586
611
  description: Optional[pulumi.Input[str]] = None,
@@ -619,6 +644,11 @@ class _DiskState:
619
644
  zone: Optional[pulumi.Input[str]] = None):
620
645
  """
621
646
  Input properties used for looking up and filtering Disk resources.
647
+ :param pulumi.Input[str] access_mode: The accessMode of the disk.
648
+ For example:
649
+ * READ_WRITE_SINGLE
650
+ * READ_WRITE_MANY
651
+ * READ_ONLY_SINGLE
622
652
  :param pulumi.Input['DiskAsyncPrimaryDiskArgs'] async_primary_disk: A nested object resource
623
653
  Structure is documented below.
624
654
  :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
@@ -752,6 +782,8 @@ class _DiskState:
752
782
  project/zones/zone/instances/instance
753
783
  :param pulumi.Input[str] zone: A reference to the zone where the disk resides.
754
784
  """
785
+ if access_mode is not None:
786
+ pulumi.set(__self__, "access_mode", access_mode)
755
787
  if async_primary_disk is not None:
756
788
  pulumi.set(__self__, "async_primary_disk", async_primary_disk)
757
789
  if creation_timestamp is not None:
@@ -828,6 +860,22 @@ class _DiskState:
828
860
  if zone is not None:
829
861
  pulumi.set(__self__, "zone", zone)
830
862
 
863
+ @property
864
+ @pulumi.getter(name="accessMode")
865
+ def access_mode(self) -> Optional[pulumi.Input[str]]:
866
+ """
867
+ The accessMode of the disk.
868
+ For example:
869
+ * READ_WRITE_SINGLE
870
+ * READ_WRITE_MANY
871
+ * READ_ONLY_SINGLE
872
+ """
873
+ return pulumi.get(self, "access_mode")
874
+
875
+ @access_mode.setter
876
+ def access_mode(self, value: Optional[pulumi.Input[str]]):
877
+ pulumi.set(self, "access_mode", value)
878
+
831
879
  @property
832
880
  @pulumi.getter(name="asyncPrimaryDisk")
833
881
  def async_primary_disk(self) -> Optional[pulumi.Input['DiskAsyncPrimaryDiskArgs']]:
@@ -1363,6 +1411,7 @@ class Disk(pulumi.CustomResource):
1363
1411
  def __init__(__self__,
1364
1412
  resource_name: str,
1365
1413
  opts: Optional[pulumi.ResourceOptions] = None,
1414
+ access_mode: Optional[pulumi.Input[str]] = None,
1366
1415
  async_primary_disk: Optional[pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']]] = None,
1367
1416
  description: Optional[pulumi.Input[str]] = None,
1368
1417
  disk_encryption_key: Optional[pulumi.Input[Union['DiskDiskEncryptionKeyArgs', 'DiskDiskEncryptionKeyArgsDict']]] = None,
@@ -1509,6 +1558,11 @@ class Disk(pulumi.CustomResource):
1509
1558
 
1510
1559
  :param str resource_name: The name of the resource.
1511
1560
  :param pulumi.ResourceOptions opts: Options for the resource.
1561
+ :param pulumi.Input[str] access_mode: The accessMode of the disk.
1562
+ For example:
1563
+ * READ_WRITE_SINGLE
1564
+ * READ_WRITE_MANY
1565
+ * READ_ONLY_SINGLE
1512
1566
  :param pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']] async_primary_disk: A nested object resource
1513
1567
  Structure is documented below.
1514
1568
  :param pulumi.Input[str] description: An optional description of this resource. Provide this property when
@@ -1756,6 +1810,7 @@ class Disk(pulumi.CustomResource):
1756
1810
  def _internal_init(__self__,
1757
1811
  resource_name: str,
1758
1812
  opts: Optional[pulumi.ResourceOptions] = None,
1813
+ access_mode: Optional[pulumi.Input[str]] = None,
1759
1814
  async_primary_disk: Optional[pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']]] = None,
1760
1815
  description: Optional[pulumi.Input[str]] = None,
1761
1816
  disk_encryption_key: Optional[pulumi.Input[Union['DiskDiskEncryptionKeyArgs', 'DiskDiskEncryptionKeyArgsDict']]] = None,
@@ -1789,6 +1844,7 @@ class Disk(pulumi.CustomResource):
1789
1844
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1790
1845
  __props__ = DiskArgs.__new__(DiskArgs)
1791
1846
 
1847
+ __props__.__dict__["access_mode"] = access_mode
1792
1848
  __props__.__dict__["async_primary_disk"] = async_primary_disk
1793
1849
  __props__.__dict__["description"] = description
1794
1850
  __props__.__dict__["disk_encryption_key"] = disk_encryption_key
@@ -1837,6 +1893,7 @@ class Disk(pulumi.CustomResource):
1837
1893
  def get(resource_name: str,
1838
1894
  id: pulumi.Input[str],
1839
1895
  opts: Optional[pulumi.ResourceOptions] = None,
1896
+ access_mode: Optional[pulumi.Input[str]] = None,
1840
1897
  async_primary_disk: Optional[pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']]] = None,
1841
1898
  creation_timestamp: Optional[pulumi.Input[str]] = None,
1842
1899
  description: Optional[pulumi.Input[str]] = None,
@@ -1880,6 +1937,11 @@ class Disk(pulumi.CustomResource):
1880
1937
  :param str resource_name: The unique name of the resulting resource.
1881
1938
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1882
1939
  :param pulumi.ResourceOptions opts: Options for the resource.
1940
+ :param pulumi.Input[str] access_mode: The accessMode of the disk.
1941
+ For example:
1942
+ * READ_WRITE_SINGLE
1943
+ * READ_WRITE_MANY
1944
+ * READ_ONLY_SINGLE
1883
1945
  :param pulumi.Input[Union['DiskAsyncPrimaryDiskArgs', 'DiskAsyncPrimaryDiskArgsDict']] async_primary_disk: A nested object resource
1884
1946
  Structure is documented below.
1885
1947
  :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
@@ -2017,6 +2079,7 @@ class Disk(pulumi.CustomResource):
2017
2079
 
2018
2080
  __props__ = _DiskState.__new__(_DiskState)
2019
2081
 
2082
+ __props__.__dict__["access_mode"] = access_mode
2020
2083
  __props__.__dict__["async_primary_disk"] = async_primary_disk
2021
2084
  __props__.__dict__["creation_timestamp"] = creation_timestamp
2022
2085
  __props__.__dict__["description"] = description
@@ -2055,6 +2118,18 @@ class Disk(pulumi.CustomResource):
2055
2118
  __props__.__dict__["zone"] = zone
2056
2119
  return Disk(resource_name, opts=opts, __props__=__props__)
2057
2120
 
2121
+ @property
2122
+ @pulumi.getter(name="accessMode")
2123
+ def access_mode(self) -> pulumi.Output[str]:
2124
+ """
2125
+ The accessMode of the disk.
2126
+ For example:
2127
+ * READ_WRITE_SINGLE
2128
+ * READ_WRITE_MANY
2129
+ * READ_ONLY_SINGLE
2130
+ """
2131
+ return pulumi.get(self, "access_mode")
2132
+
2058
2133
  @property
2059
2134
  @pulumi.getter(name="asyncPrimaryDisk")
2060
2135
  def async_primary_disk(self) -> pulumi.Output[Optional['outputs.DiskAsyncPrimaryDisk']]: