pulumi-gcp 7.14.1__py3-none-any.whl → 7.15.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. pulumi_gcp/__init__.py +94 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +74 -58
  3. pulumi_gcp/accesscontextmanager/outputs.py +74 -58
  4. pulumi_gcp/accesscontextmanager/service_perimeter.py +0 -2
  5. pulumi_gcp/apphub/__init__.py +15 -0
  6. pulumi_gcp/apphub/_inputs.py +1016 -0
  7. pulumi_gcp/apphub/application.py +775 -0
  8. pulumi_gcp/apphub/get_discovered_service.py +180 -0
  9. pulumi_gcp/apphub/get_discovered_workload.py +180 -0
  10. pulumi_gcp/apphub/outputs.py +1206 -0
  11. pulumi_gcp/apphub/service.py +1121 -0
  12. pulumi_gcp/apphub/service_project_attachment.py +516 -0
  13. pulumi_gcp/apphub/workload.py +1197 -0
  14. pulumi_gcp/cloudquota/__init__.py +9 -0
  15. pulumi_gcp/cloudquota/get_s_quota_info.py +322 -0
  16. pulumi_gcp/cloudquota/outputs.py +105 -0
  17. pulumi_gcp/cloudrunv2/_inputs.py +26 -2
  18. pulumi_gcp/cloudrunv2/get_service.py +11 -1
  19. pulumi_gcp/cloudrunv2/outputs.py +58 -2
  20. pulumi_gcp/cloudrunv2/service.py +54 -0
  21. pulumi_gcp/compute/_inputs.py +4 -4
  22. pulumi_gcp/compute/outputs.py +4 -4
  23. pulumi_gcp/compute/region_network_endpoint_group.py +30 -0
  24. pulumi_gcp/config/__init__.pyi +4 -0
  25. pulumi_gcp/config/vars.py +8 -0
  26. pulumi_gcp/firebase/__init__.py +1 -0
  27. pulumi_gcp/firebase/app_check_device_check_config.py +572 -0
  28. pulumi_gcp/firestore/_inputs.py +69 -0
  29. pulumi_gcp/firestore/database.py +206 -0
  30. pulumi_gcp/firestore/outputs.py +80 -0
  31. pulumi_gcp/gkeonprem/_inputs.py +1 -3
  32. pulumi_gcp/gkeonprem/outputs.py +1 -3
  33. pulumi_gcp/gkeonprem/v_mware_cluster.py +2 -0
  34. pulumi_gcp/iap/__init__.py +5 -0
  35. pulumi_gcp/iap/_inputs.py +100 -0
  36. pulumi_gcp/iap/get_tunnel_dest_group_iam_policy.py +172 -0
  37. pulumi_gcp/iap/outputs.py +76 -0
  38. pulumi_gcp/iap/tunnel_dest_group.py +524 -0
  39. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +858 -0
  40. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +858 -0
  41. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +760 -0
  42. pulumi_gcp/kms/__init__.py +1 -0
  43. pulumi_gcp/kms/_inputs.py +246 -0
  44. pulumi_gcp/kms/ekm_connection.py +610 -0
  45. pulumi_gcp/kms/outputs.py +242 -0
  46. pulumi_gcp/networksecurity/__init__.py +1 -0
  47. pulumi_gcp/networksecurity/firewall_endpoint_association.py +753 -0
  48. pulumi_gcp/notebooks/instance.py +8 -0
  49. pulumi_gcp/orgpolicy/policy.py +2 -2
  50. pulumi_gcp/provider.py +40 -0
  51. pulumi_gcp/pubsub/subscription.py +4 -4
  52. pulumi_gcp/securityposture/posture.py +2 -2
  53. pulumi_gcp/securityposture/posture_deployment.py +2 -2
  54. pulumi_gcp/storage/_inputs.py +32 -15
  55. pulumi_gcp/storage/outputs.py +29 -14
  56. pulumi_gcp/workstations/_inputs.py +134 -4
  57. pulumi_gcp/workstations/outputs.py +152 -4
  58. pulumi_gcp/workstations/workstation_config.py +54 -0
  59. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/METADATA +1 -1
  60. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/RECORD +62 -42
  61. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/WHEEL +0 -0
  62. {pulumi_gcp-7.14.1.dist-info → pulumi_gcp-7.15.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,9 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ from .. import _utilities
6
+ import typing
7
+ # Export this package's modules as members:
8
+ from .get_s_quota_info import *
9
+ from . import outputs
@@ -0,0 +1,322 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetSQuotaInfoResult',
15
+ 'AwaitableGetSQuotaInfoResult',
16
+ 'get_s_quota_info',
17
+ 'get_s_quota_info_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetSQuotaInfoResult:
22
+ """
23
+ A collection of values returned by getSQuotaInfo.
24
+ """
25
+ def __init__(__self__, container_type=None, dimensions=None, dimensions_infos=None, id=None, is_concurrent=None, is_fixed=None, is_precise=None, metric=None, metric_display_name=None, metric_unit=None, name=None, parent=None, quota_display_name=None, quota_id=None, quota_increase_eligibilities=None, refresh_interval=None, service=None, service_request_quota_uri=None):
26
+ if container_type and not isinstance(container_type, str):
27
+ raise TypeError("Expected argument 'container_type' to be a str")
28
+ pulumi.set(__self__, "container_type", container_type)
29
+ if dimensions and not isinstance(dimensions, list):
30
+ raise TypeError("Expected argument 'dimensions' to be a list")
31
+ pulumi.set(__self__, "dimensions", dimensions)
32
+ if dimensions_infos and not isinstance(dimensions_infos, list):
33
+ raise TypeError("Expected argument 'dimensions_infos' to be a list")
34
+ pulumi.set(__self__, "dimensions_infos", dimensions_infos)
35
+ if id and not isinstance(id, str):
36
+ raise TypeError("Expected argument 'id' to be a str")
37
+ pulumi.set(__self__, "id", id)
38
+ if is_concurrent and not isinstance(is_concurrent, bool):
39
+ raise TypeError("Expected argument 'is_concurrent' to be a bool")
40
+ pulumi.set(__self__, "is_concurrent", is_concurrent)
41
+ if is_fixed and not isinstance(is_fixed, bool):
42
+ raise TypeError("Expected argument 'is_fixed' to be a bool")
43
+ pulumi.set(__self__, "is_fixed", is_fixed)
44
+ if is_precise and not isinstance(is_precise, bool):
45
+ raise TypeError("Expected argument 'is_precise' to be a bool")
46
+ pulumi.set(__self__, "is_precise", is_precise)
47
+ if metric and not isinstance(metric, str):
48
+ raise TypeError("Expected argument 'metric' to be a str")
49
+ pulumi.set(__self__, "metric", metric)
50
+ if metric_display_name and not isinstance(metric_display_name, str):
51
+ raise TypeError("Expected argument 'metric_display_name' to be a str")
52
+ pulumi.set(__self__, "metric_display_name", metric_display_name)
53
+ if metric_unit and not isinstance(metric_unit, str):
54
+ raise TypeError("Expected argument 'metric_unit' to be a str")
55
+ pulumi.set(__self__, "metric_unit", metric_unit)
56
+ if name and not isinstance(name, str):
57
+ raise TypeError("Expected argument 'name' to be a str")
58
+ pulumi.set(__self__, "name", name)
59
+ if parent and not isinstance(parent, str):
60
+ raise TypeError("Expected argument 'parent' to be a str")
61
+ pulumi.set(__self__, "parent", parent)
62
+ if quota_display_name and not isinstance(quota_display_name, str):
63
+ raise TypeError("Expected argument 'quota_display_name' to be a str")
64
+ pulumi.set(__self__, "quota_display_name", quota_display_name)
65
+ if quota_id and not isinstance(quota_id, str):
66
+ raise TypeError("Expected argument 'quota_id' to be a str")
67
+ pulumi.set(__self__, "quota_id", quota_id)
68
+ if quota_increase_eligibilities and not isinstance(quota_increase_eligibilities, list):
69
+ raise TypeError("Expected argument 'quota_increase_eligibilities' to be a list")
70
+ pulumi.set(__self__, "quota_increase_eligibilities", quota_increase_eligibilities)
71
+ if refresh_interval and not isinstance(refresh_interval, str):
72
+ raise TypeError("Expected argument 'refresh_interval' to be a str")
73
+ pulumi.set(__self__, "refresh_interval", refresh_interval)
74
+ if service and not isinstance(service, str):
75
+ raise TypeError("Expected argument 'service' to be a str")
76
+ pulumi.set(__self__, "service", service)
77
+ if service_request_quota_uri and not isinstance(service_request_quota_uri, str):
78
+ raise TypeError("Expected argument 'service_request_quota_uri' to be a str")
79
+ pulumi.set(__self__, "service_request_quota_uri", service_request_quota_uri)
80
+
81
+ @property
82
+ @pulumi.getter(name="containerType")
83
+ def container_type(self) -> str:
84
+ """
85
+ (Output) The container type of the QuotaInfo.
86
+ """
87
+ return pulumi.get(self, "container_type")
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def dimensions(self) -> Sequence[str]:
92
+ """
93
+ The map of dimensions for this dimensions info. The key of a map entry is "region", "zone" or the name of a service specific dimension, and the value of a map entry is the value of the dimension. If a dimension does not appear in the map of dimensions, the dimensions info applies to all the dimension values except for those that have another DimenisonInfo instance configured for the specific value. Example: {"provider" : "Foo Inc"} where "provider" is a service specific dimension of a quota.
94
+ """
95
+ return pulumi.get(self, "dimensions")
96
+
97
+ @property
98
+ @pulumi.getter(name="dimensionsInfos")
99
+ def dimensions_infos(self) -> Sequence['outputs.GetSQuotaInfoDimensionsInfoResult']:
100
+ """
101
+ (Output) The collection of dimensions info ordered by their dimensions from more specific ones to less specific ones.
102
+ """
103
+ return pulumi.get(self, "dimensions_infos")
104
+
105
+ @property
106
+ @pulumi.getter
107
+ def id(self) -> str:
108
+ """
109
+ The provider-assigned unique ID for this managed resource.
110
+ """
111
+ return pulumi.get(self, "id")
112
+
113
+ @property
114
+ @pulumi.getter(name="isConcurrent")
115
+ def is_concurrent(self) -> bool:
116
+ """
117
+ (Output) Whether the quota is a concurrent quota. Concurrent quotas are enforced on the total number of concurrent operations in flight at any given time.
118
+ """
119
+ return pulumi.get(self, "is_concurrent")
120
+
121
+ @property
122
+ @pulumi.getter(name="isFixed")
123
+ def is_fixed(self) -> bool:
124
+ """
125
+ (Output) Whether the quota value is fixed or adjustable.
126
+ """
127
+ return pulumi.get(self, "is_fixed")
128
+
129
+ @property
130
+ @pulumi.getter(name="isPrecise")
131
+ def is_precise(self) -> bool:
132
+ """
133
+ (Output) Whether this is a precise quota. A precise quota is tracked with absolute precision. In contrast, an imprecise quota is not tracked with precision.
134
+ """
135
+ return pulumi.get(self, "is_precise")
136
+
137
+ @property
138
+ @pulumi.getter
139
+ def metric(self) -> str:
140
+ """
141
+ (Output) The metric of the quota. It specifies the resources consumption the quota is defined for, for example: `compute.googleapis.com/cpus`.
142
+ """
143
+ return pulumi.get(self, "metric")
144
+
145
+ @property
146
+ @pulumi.getter(name="metricDisplayName")
147
+ def metric_display_name(self) -> str:
148
+ """
149
+ (Output) The display name of the quota metric.
150
+ """
151
+ return pulumi.get(self, "metric_display_name")
152
+
153
+ @property
154
+ @pulumi.getter(name="metricUnit")
155
+ def metric_unit(self) -> str:
156
+ """
157
+ (Output) The unit in which the metric value is reported, e.g., `MByte`.
158
+ """
159
+ return pulumi.get(self, "metric_unit")
160
+
161
+ @property
162
+ @pulumi.getter
163
+ def name(self) -> str:
164
+ """
165
+ (Output) Resource name of this QuotaInfo, for example: `projects/123/locations/global/services/compute.googleapis.com/quotaInfos/CpusPerProjectPerRegion`.
166
+ """
167
+ return pulumi.get(self, "name")
168
+
169
+ @property
170
+ @pulumi.getter
171
+ def parent(self) -> str:
172
+ return pulumi.get(self, "parent")
173
+
174
+ @property
175
+ @pulumi.getter(name="quotaDisplayName")
176
+ def quota_display_name(self) -> str:
177
+ """
178
+ (Output) The display name of the quota.
179
+ """
180
+ return pulumi.get(self, "quota_display_name")
181
+
182
+ @property
183
+ @pulumi.getter(name="quotaId")
184
+ def quota_id(self) -> str:
185
+ return pulumi.get(self, "quota_id")
186
+
187
+ @property
188
+ @pulumi.getter(name="quotaIncreaseEligibilities")
189
+ def quota_increase_eligibilities(self) -> Sequence['outputs.GetSQuotaInfoQuotaIncreaseEligibilityResult']:
190
+ """
191
+ (Output) Whether it is eligible to request a higher quota value for this quota.
192
+ """
193
+ return pulumi.get(self, "quota_increase_eligibilities")
194
+
195
+ @property
196
+ @pulumi.getter(name="refreshInterval")
197
+ def refresh_interval(self) -> str:
198
+ """
199
+ (Output) The reset time interval for the quota. Refresh interval applies to rate quota only. Example: "minute" for per minute, "day" for per day, or "10 seconds" for every 10 seconds.
200
+ """
201
+ return pulumi.get(self, "refresh_interval")
202
+
203
+ @property
204
+ @pulumi.getter
205
+ def service(self) -> str:
206
+ return pulumi.get(self, "service")
207
+
208
+ @property
209
+ @pulumi.getter(name="serviceRequestQuotaUri")
210
+ def service_request_quota_uri(self) -> str:
211
+ """
212
+ (Output) URI to the page where users can request more quota for the cloud service, for example: `https://console.cloud.google.com/iam-admin/quotas`.
213
+ """
214
+ return pulumi.get(self, "service_request_quota_uri")
215
+
216
+
217
+ class AwaitableGetSQuotaInfoResult(GetSQuotaInfoResult):
218
+ # pylint: disable=using-constant-test
219
+ def __await__(self):
220
+ if False:
221
+ yield self
222
+ return GetSQuotaInfoResult(
223
+ container_type=self.container_type,
224
+ dimensions=self.dimensions,
225
+ dimensions_infos=self.dimensions_infos,
226
+ id=self.id,
227
+ is_concurrent=self.is_concurrent,
228
+ is_fixed=self.is_fixed,
229
+ is_precise=self.is_precise,
230
+ metric=self.metric,
231
+ metric_display_name=self.metric_display_name,
232
+ metric_unit=self.metric_unit,
233
+ name=self.name,
234
+ parent=self.parent,
235
+ quota_display_name=self.quota_display_name,
236
+ quota_id=self.quota_id,
237
+ quota_increase_eligibilities=self.quota_increase_eligibilities,
238
+ refresh_interval=self.refresh_interval,
239
+ service=self.service,
240
+ service_request_quota_uri=self.service_request_quota_uri)
241
+
242
+
243
+ def get_s_quota_info(parent: Optional[str] = None,
244
+ quota_id: Optional[str] = None,
245
+ service: Optional[str] = None,
246
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSQuotaInfoResult:
247
+ """
248
+ Provides information about a particular quota for a given project, folder or organization.
249
+
250
+ ## Example Usage
251
+
252
+ <!--Start PulumiCodeChooser -->
253
+ ```python
254
+ import pulumi
255
+ import pulumi_gcp as gcp
256
+
257
+ my_quota_info = gcp.cloudquota.get_s_quota_info(parent="projects/my-project",
258
+ service="compute.googleapis.com",
259
+ quota_id="CPUS-per-project-region")
260
+ ```
261
+ <!--End PulumiCodeChooser -->
262
+
263
+
264
+ :param str parent: The parent of the quota info. Allowed parents are "projects/[project-id / number]" or "folders/[folder-id / number]" or "organizations/[org-id / number].
265
+ :param str quota_id: The id of the quota, which is unique within the service.
266
+ :param str service: The name of the service in which the quota is defined.
267
+ """
268
+ __args__ = dict()
269
+ __args__['parent'] = parent
270
+ __args__['quotaId'] = quota_id
271
+ __args__['service'] = service
272
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
273
+ __ret__ = pulumi.runtime.invoke('gcp:cloudquota/getSQuotaInfo:getSQuotaInfo', __args__, opts=opts, typ=GetSQuotaInfoResult).value
274
+
275
+ return AwaitableGetSQuotaInfoResult(
276
+ container_type=pulumi.get(__ret__, 'container_type'),
277
+ dimensions=pulumi.get(__ret__, 'dimensions'),
278
+ dimensions_infos=pulumi.get(__ret__, 'dimensions_infos'),
279
+ id=pulumi.get(__ret__, 'id'),
280
+ is_concurrent=pulumi.get(__ret__, 'is_concurrent'),
281
+ is_fixed=pulumi.get(__ret__, 'is_fixed'),
282
+ is_precise=pulumi.get(__ret__, 'is_precise'),
283
+ metric=pulumi.get(__ret__, 'metric'),
284
+ metric_display_name=pulumi.get(__ret__, 'metric_display_name'),
285
+ metric_unit=pulumi.get(__ret__, 'metric_unit'),
286
+ name=pulumi.get(__ret__, 'name'),
287
+ parent=pulumi.get(__ret__, 'parent'),
288
+ quota_display_name=pulumi.get(__ret__, 'quota_display_name'),
289
+ quota_id=pulumi.get(__ret__, 'quota_id'),
290
+ quota_increase_eligibilities=pulumi.get(__ret__, 'quota_increase_eligibilities'),
291
+ refresh_interval=pulumi.get(__ret__, 'refresh_interval'),
292
+ service=pulumi.get(__ret__, 'service'),
293
+ service_request_quota_uri=pulumi.get(__ret__, 'service_request_quota_uri'))
294
+
295
+
296
+ @_utilities.lift_output_func(get_s_quota_info)
297
+ def get_s_quota_info_output(parent: Optional[pulumi.Input[str]] = None,
298
+ quota_id: Optional[pulumi.Input[str]] = None,
299
+ service: Optional[pulumi.Input[str]] = None,
300
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSQuotaInfoResult]:
301
+ """
302
+ Provides information about a particular quota for a given project, folder or organization.
303
+
304
+ ## Example Usage
305
+
306
+ <!--Start PulumiCodeChooser -->
307
+ ```python
308
+ import pulumi
309
+ import pulumi_gcp as gcp
310
+
311
+ my_quota_info = gcp.cloudquota.get_s_quota_info(parent="projects/my-project",
312
+ service="compute.googleapis.com",
313
+ quota_id="CPUS-per-project-region")
314
+ ```
315
+ <!--End PulumiCodeChooser -->
316
+
317
+
318
+ :param str parent: The parent of the quota info. Allowed parents are "projects/[project-id / number]" or "folders/[folder-id / number]" or "organizations/[org-id / number].
319
+ :param str quota_id: The id of the quota, which is unique within the service.
320
+ :param str service: The name of the service in which the quota is defined.
321
+ """
322
+ ...
@@ -0,0 +1,105 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetSQuotaInfoDimensionsInfoResult',
15
+ 'GetSQuotaInfoDimensionsInfoDetailResult',
16
+ 'GetSQuotaInfoQuotaIncreaseEligibilityResult',
17
+ ]
18
+
19
+ @pulumi.output_type
20
+ class GetSQuotaInfoDimensionsInfoResult(dict):
21
+ def __init__(__self__, *,
22
+ applicable_locations: Sequence[str],
23
+ details: Sequence['outputs.GetSQuotaInfoDimensionsInfoDetailResult'],
24
+ dimensions: Mapping[str, Any]):
25
+ """
26
+ :param Sequence[str] applicable_locations: The applicable regions or zones of this dimensions info. The field will be set to `['global']` for quotas that are not per region or per zone. Otherwise, it will be set to the list of locations this dimension info is applicable to.
27
+ :param Sequence['GetSQuotaInfoDimensionsInfoDetailArgs'] details: The quota details for a map of dimensions.
28
+ :param Mapping[str, Any] dimensions: The map of dimensions for this dimensions info. The key of a map entry is "region", "zone" or the name of a service specific dimension, and the value of a map entry is the value of the dimension. If a dimension does not appear in the map of dimensions, the dimensions info applies to all the dimension values except for those that have another DimenisonInfo instance configured for the specific value. Example: {"provider" : "Foo Inc"} where "provider" is a service specific dimension of a quota.
29
+ """
30
+ pulumi.set(__self__, "applicable_locations", applicable_locations)
31
+ pulumi.set(__self__, "details", details)
32
+ pulumi.set(__self__, "dimensions", dimensions)
33
+
34
+ @property
35
+ @pulumi.getter(name="applicableLocations")
36
+ def applicable_locations(self) -> Sequence[str]:
37
+ """
38
+ The applicable regions or zones of this dimensions info. The field will be set to `['global']` for quotas that are not per region or per zone. Otherwise, it will be set to the list of locations this dimension info is applicable to.
39
+ """
40
+ return pulumi.get(self, "applicable_locations")
41
+
42
+ @property
43
+ @pulumi.getter
44
+ def details(self) -> Sequence['outputs.GetSQuotaInfoDimensionsInfoDetailResult']:
45
+ """
46
+ The quota details for a map of dimensions.
47
+ """
48
+ return pulumi.get(self, "details")
49
+
50
+ @property
51
+ @pulumi.getter
52
+ def dimensions(self) -> Mapping[str, Any]:
53
+ """
54
+ The map of dimensions for this dimensions info. The key of a map entry is "region", "zone" or the name of a service specific dimension, and the value of a map entry is the value of the dimension. If a dimension does not appear in the map of dimensions, the dimensions info applies to all the dimension values except for those that have another DimenisonInfo instance configured for the specific value. Example: {"provider" : "Foo Inc"} where "provider" is a service specific dimension of a quota.
55
+ """
56
+ return pulumi.get(self, "dimensions")
57
+
58
+
59
+ @pulumi.output_type
60
+ class GetSQuotaInfoDimensionsInfoDetailResult(dict):
61
+ def __init__(__self__, *,
62
+ value: str):
63
+ """
64
+ :param str value: The value currently in effect and being enforced.
65
+ """
66
+ pulumi.set(__self__, "value", value)
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def value(self) -> str:
71
+ """
72
+ The value currently in effect and being enforced.
73
+ """
74
+ return pulumi.get(self, "value")
75
+
76
+
77
+ @pulumi.output_type
78
+ class GetSQuotaInfoQuotaIncreaseEligibilityResult(dict):
79
+ def __init__(__self__, *,
80
+ ineligibility_reason: str,
81
+ is_eligible: bool):
82
+ """
83
+ :param str ineligibility_reason: The enumeration of reasons when it is ineligible to request increase adjustment.
84
+ :param bool is_eligible: Whether a higher quota value can be requested for the quota.
85
+ """
86
+ pulumi.set(__self__, "ineligibility_reason", ineligibility_reason)
87
+ pulumi.set(__self__, "is_eligible", is_eligible)
88
+
89
+ @property
90
+ @pulumi.getter(name="ineligibilityReason")
91
+ def ineligibility_reason(self) -> str:
92
+ """
93
+ The enumeration of reasons when it is ineligible to request increase adjustment.
94
+ """
95
+ return pulumi.get(self, "ineligibility_reason")
96
+
97
+ @property
98
+ @pulumi.getter(name="isEligible")
99
+ def is_eligible(self) -> bool:
100
+ """
101
+ Whether a higher quota value can be requested for the quota.
102
+ """
103
+ return pulumi.get(self, "is_eligible")
104
+
105
+
@@ -36,6 +36,7 @@ __all__ = [
36
36
  'ServiceConditionArgs',
37
37
  'ServiceIamBindingConditionArgs',
38
38
  'ServiceIamMemberConditionArgs',
39
+ 'ServiceScalingArgs',
39
40
  'ServiceTemplateArgs',
40
41
  'ServiceTemplateContainerArgs',
41
42
  'ServiceTemplateContainerEnvArgs',
@@ -1826,6 +1827,29 @@ class ServiceIamMemberConditionArgs:
1826
1827
  pulumi.set(self, "description", value)
1827
1828
 
1828
1829
 
1830
+ @pulumi.input_type
1831
+ class ServiceScalingArgs:
1832
+ def __init__(__self__, *,
1833
+ min_instance_count: Optional[pulumi.Input[int]] = None):
1834
+ """
1835
+ :param pulumi.Input[int] min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
1836
+ """
1837
+ if min_instance_count is not None:
1838
+ pulumi.set(__self__, "min_instance_count", min_instance_count)
1839
+
1840
+ @property
1841
+ @pulumi.getter(name="minInstanceCount")
1842
+ def min_instance_count(self) -> Optional[pulumi.Input[int]]:
1843
+ """
1844
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
1845
+ """
1846
+ return pulumi.get(self, "min_instance_count")
1847
+
1848
+ @min_instance_count.setter
1849
+ def min_instance_count(self, value: Optional[pulumi.Input[int]]):
1850
+ pulumi.set(self, "min_instance_count", value)
1851
+
1852
+
1829
1853
  @pulumi.input_type
1830
1854
  class ServiceTemplateArgs:
1831
1855
  def __init__(__self__, *,
@@ -3119,7 +3143,7 @@ class ServiceTemplateScalingArgs:
3119
3143
  min_instance_count: Optional[pulumi.Input[int]] = None):
3120
3144
  """
3121
3145
  :param pulumi.Input[int] max_instance_count: Maximum number of serving instances that this resource should have.
3122
- :param pulumi.Input[int] min_instance_count: Minimum number of serving instances that this resource should have.
3146
+ :param pulumi.Input[int] min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
3123
3147
  """
3124
3148
  if max_instance_count is not None:
3125
3149
  pulumi.set(__self__, "max_instance_count", max_instance_count)
@@ -3142,7 +3166,7 @@ class ServiceTemplateScalingArgs:
3142
3166
  @pulumi.getter(name="minInstanceCount")
3143
3167
  def min_instance_count(self) -> Optional[pulumi.Input[int]]:
3144
3168
  """
3145
- Minimum number of serving instances that this resource should have.
3169
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
3146
3170
  """
3147
3171
  return pulumi.get(self, "min_instance_count")
3148
3172
 
@@ -22,7 +22,7 @@ class GetServiceResult:
22
22
  """
23
23
  A collection of values returned by getService.
24
24
  """
25
- def __init__(__self__, annotations=None, binary_authorizations=None, client=None, client_version=None, conditions=None, create_time=None, creator=None, custom_audiences=None, delete_time=None, description=None, effective_annotations=None, effective_labels=None, etag=None, expire_time=None, generation=None, id=None, ingress=None, labels=None, last_modifier=None, latest_created_revision=None, latest_ready_revision=None, launch_stage=None, location=None, name=None, observed_generation=None, project=None, pulumi_labels=None, reconciling=None, templates=None, terminal_conditions=None, traffic_statuses=None, traffics=None, uid=None, update_time=None, uri=None):
25
+ def __init__(__self__, annotations=None, binary_authorizations=None, client=None, client_version=None, conditions=None, create_time=None, creator=None, custom_audiences=None, delete_time=None, description=None, effective_annotations=None, effective_labels=None, etag=None, expire_time=None, generation=None, id=None, ingress=None, labels=None, last_modifier=None, latest_created_revision=None, latest_ready_revision=None, launch_stage=None, location=None, name=None, observed_generation=None, project=None, pulumi_labels=None, reconciling=None, scalings=None, templates=None, terminal_conditions=None, traffic_statuses=None, traffics=None, uid=None, update_time=None, uri=None):
26
26
  if annotations and not isinstance(annotations, dict):
27
27
  raise TypeError("Expected argument 'annotations' to be a dict")
28
28
  pulumi.set(__self__, "annotations", annotations)
@@ -107,6 +107,9 @@ class GetServiceResult:
107
107
  if reconciling and not isinstance(reconciling, bool):
108
108
  raise TypeError("Expected argument 'reconciling' to be a bool")
109
109
  pulumi.set(__self__, "reconciling", reconciling)
110
+ if scalings and not isinstance(scalings, list):
111
+ raise TypeError("Expected argument 'scalings' to be a list")
112
+ pulumi.set(__self__, "scalings", scalings)
110
113
  if templates and not isinstance(templates, list):
111
114
  raise TypeError("Expected argument 'templates' to be a list")
112
115
  pulumi.set(__self__, "templates", templates)
@@ -272,6 +275,11 @@ class GetServiceResult:
272
275
  def reconciling(self) -> bool:
273
276
  return pulumi.get(self, "reconciling")
274
277
 
278
+ @property
279
+ @pulumi.getter
280
+ def scalings(self) -> Sequence['outputs.GetServiceScalingResult']:
281
+ return pulumi.get(self, "scalings")
282
+
275
283
  @property
276
284
  @pulumi.getter
277
285
  def templates(self) -> Sequence['outputs.GetServiceTemplateResult']:
@@ -342,6 +350,7 @@ class AwaitableGetServiceResult(GetServiceResult):
342
350
  project=self.project,
343
351
  pulumi_labels=self.pulumi_labels,
344
352
  reconciling=self.reconciling,
353
+ scalings=self.scalings,
345
354
  templates=self.templates,
346
355
  terminal_conditions=self.terminal_conditions,
347
356
  traffic_statuses=self.traffic_statuses,
@@ -416,6 +425,7 @@ def get_service(location: Optional[str] = None,
416
425
  project=pulumi.get(__ret__, 'project'),
417
426
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
418
427
  reconciling=pulumi.get(__ret__, 'reconciling'),
428
+ scalings=pulumi.get(__ret__, 'scalings'),
419
429
  templates=pulumi.get(__ret__, 'templates'),
420
430
  terminal_conditions=pulumi.get(__ret__, 'terminal_conditions'),
421
431
  traffic_statuses=pulumi.get(__ret__, 'traffic_statuses'),
@@ -37,6 +37,7 @@ __all__ = [
37
37
  'ServiceCondition',
38
38
  'ServiceIamBindingCondition',
39
39
  'ServiceIamMemberCondition',
40
+ 'ServiceScaling',
40
41
  'ServiceTemplate',
41
42
  'ServiceTemplateContainer',
42
43
  'ServiceTemplateContainerEnv',
@@ -90,6 +91,7 @@ __all__ = [
90
91
  'GetJobTerminalConditionResult',
91
92
  'GetServiceBinaryAuthorizationResult',
92
93
  'GetServiceConditionResult',
94
+ 'GetServiceScalingResult',
93
95
  'GetServiceTemplateResult',
94
96
  'GetServiceTemplateContainerResult',
95
97
  'GetServiceTemplateContainerEnvResult',
@@ -1819,6 +1821,42 @@ class ServiceIamMemberCondition(dict):
1819
1821
  return pulumi.get(self, "description")
1820
1822
 
1821
1823
 
1824
+ @pulumi.output_type
1825
+ class ServiceScaling(dict):
1826
+ @staticmethod
1827
+ def __key_warning(key: str):
1828
+ suggest = None
1829
+ if key == "minInstanceCount":
1830
+ suggest = "min_instance_count"
1831
+
1832
+ if suggest:
1833
+ pulumi.log.warn(f"Key '{key}' not found in ServiceScaling. Access the value via the '{suggest}' property getter instead.")
1834
+
1835
+ def __getitem__(self, key: str) -> Any:
1836
+ ServiceScaling.__key_warning(key)
1837
+ return super().__getitem__(key)
1838
+
1839
+ def get(self, key: str, default = None) -> Any:
1840
+ ServiceScaling.__key_warning(key)
1841
+ return super().get(key, default)
1842
+
1843
+ def __init__(__self__, *,
1844
+ min_instance_count: Optional[int] = None):
1845
+ """
1846
+ :param int min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
1847
+ """
1848
+ if min_instance_count is not None:
1849
+ pulumi.set(__self__, "min_instance_count", min_instance_count)
1850
+
1851
+ @property
1852
+ @pulumi.getter(name="minInstanceCount")
1853
+ def min_instance_count(self) -> Optional[int]:
1854
+ """
1855
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
1856
+ """
1857
+ return pulumi.get(self, "min_instance_count")
1858
+
1859
+
1822
1860
  @pulumi.output_type
1823
1861
  class ServiceTemplate(dict):
1824
1862
  @staticmethod
@@ -3086,7 +3124,7 @@ class ServiceTemplateScaling(dict):
3086
3124
  min_instance_count: Optional[int] = None):
3087
3125
  """
3088
3126
  :param int max_instance_count: Maximum number of serving instances that this resource should have.
3089
- :param int min_instance_count: Minimum number of serving instances that this resource should have.
3127
+ :param int min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
3090
3128
  """
3091
3129
  if max_instance_count is not None:
3092
3130
  pulumi.set(__self__, "max_instance_count", max_instance_count)
@@ -3105,7 +3143,7 @@ class ServiceTemplateScaling(dict):
3105
3143
  @pulumi.getter(name="minInstanceCount")
3106
3144
  def min_instance_count(self) -> Optional[int]:
3107
3145
  """
3108
- Minimum number of serving instances that this resource should have.
3146
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
3109
3147
  """
3110
3148
  return pulumi.get(self, "min_instance_count")
3111
3149
 
@@ -5008,6 +5046,24 @@ class GetServiceConditionResult(dict):
5008
5046
  return pulumi.get(self, "type")
5009
5047
 
5010
5048
 
5049
+ @pulumi.output_type
5050
+ class GetServiceScalingResult(dict):
5051
+ def __init__(__self__, *,
5052
+ min_instance_count: int):
5053
+ """
5054
+ :param int min_instance_count: Minimum number of instances for the service, to be divided among all revisions receiving traffic.
5055
+ """
5056
+ pulumi.set(__self__, "min_instance_count", min_instance_count)
5057
+
5058
+ @property
5059
+ @pulumi.getter(name="minInstanceCount")
5060
+ def min_instance_count(self) -> int:
5061
+ """
5062
+ Minimum number of instances for the service, to be divided among all revisions receiving traffic.
5063
+ """
5064
+ return pulumi.get(self, "min_instance_count")
5065
+
5066
+
5011
5067
  @pulumi.output_type
5012
5068
  class GetServiceTemplateResult(dict):
5013
5069
  def __init__(__self__, *,