pulumi-gcp 7.16.0a1711520590__py3-none-any.whl → 7.17.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 (113) hide show
  1. pulumi_gcp/__init__.py +35 -0
  2. pulumi_gcp/accesscontextmanager/__init__.py +1 -0
  3. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_resource.py +345 -0
  4. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +80 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +86 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_resource.py +4 -2
  7. pulumi_gcp/apphub/__init__.py +1 -0
  8. pulumi_gcp/apphub/get_application.py +220 -0
  9. pulumi_gcp/apphub/outputs.py +214 -0
  10. pulumi_gcp/applicationintegration/__init__.py +10 -0
  11. pulumi_gcp/applicationintegration/_inputs.py +119 -0
  12. pulumi_gcp/applicationintegration/client.py +566 -0
  13. pulumi_gcp/applicationintegration/outputs.py +122 -0
  14. pulumi_gcp/bigquery/_inputs.py +16 -0
  15. pulumi_gcp/bigquery/outputs.py +14 -0
  16. pulumi_gcp/bigquery/routine.py +98 -0
  17. pulumi_gcp/bigtable/_inputs.py +4 -4
  18. pulumi_gcp/bigtable/gc_policy.py +8 -0
  19. pulumi_gcp/bigtable/outputs.py +4 -4
  20. pulumi_gcp/billing/_inputs.py +4 -4
  21. pulumi_gcp/billing/outputs.py +4 -4
  22. pulumi_gcp/billing/project_info.py +4 -4
  23. pulumi_gcp/cloudfunctionsv2/_inputs.py +2 -2
  24. pulumi_gcp/cloudfunctionsv2/outputs.py +4 -4
  25. pulumi_gcp/cloudquota/__init__.py +3 -0
  26. pulumi_gcp/cloudquota/_inputs.py +131 -0
  27. pulumi_gcp/cloudquota/get_s_quota_infos.py +136 -0
  28. pulumi_gcp/cloudquota/outputs.py +388 -0
  29. pulumi_gcp/cloudquota/s_quota_preference.py +777 -0
  30. pulumi_gcp/cloudrunv2/_inputs.py +59 -2
  31. pulumi_gcp/cloudrunv2/outputs.py +107 -4
  32. pulumi_gcp/cloudrunv2/service.py +13 -13
  33. pulumi_gcp/composer/_inputs.py +30 -4
  34. pulumi_gcp/composer/outputs.py +45 -10
  35. pulumi_gcp/compute/_inputs.py +145 -51
  36. pulumi_gcp/compute/autoscaler.py +14 -14
  37. pulumi_gcp/compute/interconnect_attachment.py +64 -0
  38. pulumi_gcp/compute/network_endpoint.py +8 -0
  39. pulumi_gcp/compute/network_endpoint_list.py +8 -0
  40. pulumi_gcp/compute/outputs.py +202 -69
  41. pulumi_gcp/compute/region_autoscaler.py +14 -14
  42. pulumi_gcp/compute/region_backend_service.py +28 -0
  43. pulumi_gcp/compute/region_url_map.py +152 -0
  44. pulumi_gcp/compute/target_instance.py +4 -4
  45. pulumi_gcp/config/__init__.pyi +2 -0
  46. pulumi_gcp/config/vars.py +4 -0
  47. pulumi_gcp/container/_inputs.py +148 -16
  48. pulumi_gcp/container/outputs.py +148 -16
  49. pulumi_gcp/databasemigrationservice/connection_profile.py +6 -6
  50. pulumi_gcp/dataflow/flex_template_job.py +84 -112
  51. pulumi_gcp/dataform/repository.py +4 -74
  52. pulumi_gcp/dataloss/_inputs.py +6 -6
  53. pulumi_gcp/dataloss/outputs.py +6 -6
  54. pulumi_gcp/dataplex/task.py +16 -16
  55. pulumi_gcp/dataproc/_inputs.py +85 -10
  56. pulumi_gcp/dataproc/get_metastore_service.py +11 -1
  57. pulumi_gcp/dataproc/metastore_service.py +120 -0
  58. pulumi_gcp/dataproc/outputs.py +142 -10
  59. pulumi_gcp/firebase/android_app.py +41 -40
  60. pulumi_gcp/firebase/app_check_service_config.py +2 -2
  61. pulumi_gcp/firestore/backup_schedule.py +14 -14
  62. pulumi_gcp/firestore/field.py +4 -4
  63. pulumi_gcp/firestore/index.py +34 -48
  64. pulumi_gcp/gkehub/membership_binding.py +6 -6
  65. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  66. pulumi_gcp/gkehub/namespace.py +4 -4
  67. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  68. pulumi_gcp/iam/_inputs.py +76 -0
  69. pulumi_gcp/iam/outputs.py +76 -0
  70. pulumi_gcp/iam/workforce_pool_provider.py +35 -0
  71. pulumi_gcp/iam/workload_identity_pool_provider.py +140 -0
  72. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  73. pulumi_gcp/kms/_inputs.py +46 -0
  74. pulumi_gcp/kms/crypto_key.py +54 -0
  75. pulumi_gcp/kms/crypto_key_version.py +54 -0
  76. pulumi_gcp/kms/get_kms_crypto_key.py +11 -1
  77. pulumi_gcp/kms/outputs.py +54 -0
  78. pulumi_gcp/logging/_inputs.py +8 -8
  79. pulumi_gcp/logging/metric.py +7 -7
  80. pulumi_gcp/logging/outputs.py +8 -8
  81. pulumi_gcp/monitoring/_inputs.py +4 -2
  82. pulumi_gcp/monitoring/outputs.py +4 -2
  83. pulumi_gcp/monitoring/slo.py +4 -4
  84. pulumi_gcp/networksecurity/firewall_endpoint.py +48 -0
  85. pulumi_gcp/networkservices/_inputs.py +6 -6
  86. pulumi_gcp/networkservices/outputs.py +6 -6
  87. pulumi_gcp/orgpolicy/policy.py +2 -2
  88. pulumi_gcp/provider.py +20 -0
  89. pulumi_gcp/pubsub/_inputs.py +108 -0
  90. pulumi_gcp/pubsub/get_topic.py +11 -1
  91. pulumi_gcp/pubsub/outputs.py +213 -0
  92. pulumi_gcp/pubsub/subscription.py +4 -4
  93. pulumi_gcp/pubsub/topic.py +92 -0
  94. pulumi_gcp/serviceusage/consumer_quota_override.py +7 -7
  95. pulumi_gcp/sql/_inputs.py +20 -2
  96. pulumi_gcp/sql/database_instance.py +2 -2
  97. pulumi_gcp/sql/outputs.py +20 -2
  98. pulumi_gcp/storage/_inputs.py +42 -2
  99. pulumi_gcp/storage/bucket.py +54 -0
  100. pulumi_gcp/storage/get_bucket.py +11 -1
  101. pulumi_gcp/storage/outputs.py +83 -2
  102. pulumi_gcp/vertex/__init__.py +1 -0
  103. pulumi_gcp/vertex/_inputs.py +175 -8
  104. pulumi_gcp/vertex/ai_deployment_resource_pool.py +477 -0
  105. pulumi_gcp/vertex/outputs.py +202 -10
  106. pulumi_gcp/vpcaccess/connector.py +77 -28
  107. pulumi_gcp/workstations/_inputs.py +113 -0
  108. pulumi_gcp/workstations/outputs.py +109 -1
  109. pulumi_gcp/workstations/workstation_config.py +106 -0
  110. {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/METADATA +1 -1
  111. {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/RECORD +113 -103
  112. {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/WHEEL +0 -0
  113. {pulumi_gcp-7.16.0a1711520590.dist-info → pulumi_gcp-7.17.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,131 @@
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
+
12
+ __all__ = [
13
+ 'SQuotaPreferenceQuotaConfigArgs',
14
+ ]
15
+
16
+ @pulumi.input_type
17
+ class SQuotaPreferenceQuotaConfigArgs:
18
+ def __init__(__self__, *,
19
+ preferred_value: pulumi.Input[str],
20
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
21
+ granted_value: Optional[pulumi.Input[str]] = None,
22
+ request_origin: Optional[pulumi.Input[str]] = None,
23
+ state_detail: Optional[pulumi.Input[str]] = None,
24
+ trace_id: Optional[pulumi.Input[str]] = None):
25
+ """
26
+ :param pulumi.Input[str] preferred_value: The preferred value. Must be greater than or equal to -1. If set to -1, it means the value is "unlimited".
27
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: The annotations map for clients to store small amounts of arbitrary data. Do not put PII or other sensitive information here. See https://google.aip.dev/128#annotations.
28
+ An object containing a list of "key: value" pairs. Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
29
+ :param pulumi.Input[str] granted_value: (Output)
30
+ Granted quota value.
31
+ :param pulumi.Input[str] request_origin: (Output)
32
+ The origin of the quota preference request.
33
+
34
+ - - -
35
+ :param pulumi.Input[str] state_detail: (Output)
36
+ Optional details about the state of this quota preference.
37
+ :param pulumi.Input[str] trace_id: (Output)
38
+ The trace id that the Google Cloud uses to provision the requested quota. This trace id may be used by the client to contact Cloud support to track the state of a quota preference request. The trace id is only produced for increase requests and is unique for each request. The quota decrease requests do not have a trace id.
39
+ """
40
+ pulumi.set(__self__, "preferred_value", preferred_value)
41
+ if annotations is not None:
42
+ pulumi.set(__self__, "annotations", annotations)
43
+ if granted_value is not None:
44
+ pulumi.set(__self__, "granted_value", granted_value)
45
+ if request_origin is not None:
46
+ pulumi.set(__self__, "request_origin", request_origin)
47
+ if state_detail is not None:
48
+ pulumi.set(__self__, "state_detail", state_detail)
49
+ if trace_id is not None:
50
+ pulumi.set(__self__, "trace_id", trace_id)
51
+
52
+ @property
53
+ @pulumi.getter(name="preferredValue")
54
+ def preferred_value(self) -> pulumi.Input[str]:
55
+ """
56
+ The preferred value. Must be greater than or equal to -1. If set to -1, it means the value is "unlimited".
57
+ """
58
+ return pulumi.get(self, "preferred_value")
59
+
60
+ @preferred_value.setter
61
+ def preferred_value(self, value: pulumi.Input[str]):
62
+ pulumi.set(self, "preferred_value", value)
63
+
64
+ @property
65
+ @pulumi.getter
66
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
67
+ """
68
+ The annotations map for clients to store small amounts of arbitrary data. Do not put PII or other sensitive information here. See https://google.aip.dev/128#annotations.
69
+ An object containing a list of "key: value" pairs. Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
70
+ """
71
+ return pulumi.get(self, "annotations")
72
+
73
+ @annotations.setter
74
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
75
+ pulumi.set(self, "annotations", value)
76
+
77
+ @property
78
+ @pulumi.getter(name="grantedValue")
79
+ def granted_value(self) -> Optional[pulumi.Input[str]]:
80
+ """
81
+ (Output)
82
+ Granted quota value.
83
+ """
84
+ return pulumi.get(self, "granted_value")
85
+
86
+ @granted_value.setter
87
+ def granted_value(self, value: Optional[pulumi.Input[str]]):
88
+ pulumi.set(self, "granted_value", value)
89
+
90
+ @property
91
+ @pulumi.getter(name="requestOrigin")
92
+ def request_origin(self) -> Optional[pulumi.Input[str]]:
93
+ """
94
+ (Output)
95
+ The origin of the quota preference request.
96
+
97
+ - - -
98
+ """
99
+ return pulumi.get(self, "request_origin")
100
+
101
+ @request_origin.setter
102
+ def request_origin(self, value: Optional[pulumi.Input[str]]):
103
+ pulumi.set(self, "request_origin", value)
104
+
105
+ @property
106
+ @pulumi.getter(name="stateDetail")
107
+ def state_detail(self) -> Optional[pulumi.Input[str]]:
108
+ """
109
+ (Output)
110
+ Optional details about the state of this quota preference.
111
+ """
112
+ return pulumi.get(self, "state_detail")
113
+
114
+ @state_detail.setter
115
+ def state_detail(self, value: Optional[pulumi.Input[str]]):
116
+ pulumi.set(self, "state_detail", value)
117
+
118
+ @property
119
+ @pulumi.getter(name="traceId")
120
+ def trace_id(self) -> Optional[pulumi.Input[str]]:
121
+ """
122
+ (Output)
123
+ The trace id that the Google Cloud uses to provision the requested quota. This trace id may be used by the client to contact Cloud support to track the state of a quota preference request. The trace id is only produced for increase requests and is unique for each request. The quota decrease requests do not have a trace id.
124
+ """
125
+ return pulumi.get(self, "trace_id")
126
+
127
+ @trace_id.setter
128
+ def trace_id(self, value: Optional[pulumi.Input[str]]):
129
+ pulumi.set(self, "trace_id", value)
130
+
131
+
@@ -0,0 +1,136 @@
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
+ 'GetSQuotaInfosResult',
15
+ 'AwaitableGetSQuotaInfosResult',
16
+ 'get_s_quota_infos',
17
+ 'get_s_quota_infos_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetSQuotaInfosResult:
22
+ """
23
+ A collection of values returned by getSQuotaInfos.
24
+ """
25
+ def __init__(__self__, id=None, parent=None, quota_infos=None, service=None):
26
+ if id and not isinstance(id, str):
27
+ raise TypeError("Expected argument 'id' to be a str")
28
+ pulumi.set(__self__, "id", id)
29
+ if parent and not isinstance(parent, str):
30
+ raise TypeError("Expected argument 'parent' to be a str")
31
+ pulumi.set(__self__, "parent", parent)
32
+ if quota_infos and not isinstance(quota_infos, list):
33
+ raise TypeError("Expected argument 'quota_infos' to be a list")
34
+ pulumi.set(__self__, "quota_infos", quota_infos)
35
+ if service and not isinstance(service, str):
36
+ raise TypeError("Expected argument 'service' to be a str")
37
+ pulumi.set(__self__, "service", service)
38
+
39
+ @property
40
+ @pulumi.getter
41
+ def id(self) -> str:
42
+ """
43
+ The provider-assigned unique ID for this managed resource.
44
+ """
45
+ return pulumi.get(self, "id")
46
+
47
+ @property
48
+ @pulumi.getter
49
+ def parent(self) -> str:
50
+ return pulumi.get(self, "parent")
51
+
52
+ @property
53
+ @pulumi.getter(name="quotaInfos")
54
+ def quota_infos(self) -> Sequence['outputs.GetSQuotaInfosQuotaInfoResult']:
55
+ """
56
+ (Output) The list of QuotaInfo.
57
+ """
58
+ return pulumi.get(self, "quota_infos")
59
+
60
+ @property
61
+ @pulumi.getter
62
+ def service(self) -> str:
63
+ return pulumi.get(self, "service")
64
+
65
+
66
+ class AwaitableGetSQuotaInfosResult(GetSQuotaInfosResult):
67
+ # pylint: disable=using-constant-test
68
+ def __await__(self):
69
+ if False:
70
+ yield self
71
+ return GetSQuotaInfosResult(
72
+ id=self.id,
73
+ parent=self.parent,
74
+ quota_infos=self.quota_infos,
75
+ service=self.service)
76
+
77
+
78
+ def get_s_quota_infos(parent: Optional[str] = None,
79
+ service: Optional[str] = None,
80
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSQuotaInfosResult:
81
+ """
82
+ Provides information about all quotas for a given project, folder or organization.
83
+
84
+ ## Example Usage
85
+
86
+ <!--Start PulumiCodeChooser -->
87
+ ```python
88
+ import pulumi
89
+ import pulumi_gcp as gcp
90
+
91
+ my_quota_infos = gcp.cloudquota.get_s_quota_infos(parent="projects/my-project",
92
+ service="compute.googleapis.com")
93
+ ```
94
+ <!--End PulumiCodeChooser -->
95
+
96
+
97
+ :param str parent: Parent value of QuotaInfo resources. Listing across different resource containers (such as 'projects/-') is not allowed. Allowed parents are "projects/[project-id / number]" or "folders/[folder-id / number]" or "organizations/[org-id / number].
98
+ :param str service: The name of the service in which the quotas are defined.
99
+ """
100
+ __args__ = dict()
101
+ __args__['parent'] = parent
102
+ __args__['service'] = service
103
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
104
+ __ret__ = pulumi.runtime.invoke('gcp:cloudquota/getSQuotaInfos:getSQuotaInfos', __args__, opts=opts, typ=GetSQuotaInfosResult).value
105
+
106
+ return AwaitableGetSQuotaInfosResult(
107
+ id=pulumi.get(__ret__, 'id'),
108
+ parent=pulumi.get(__ret__, 'parent'),
109
+ quota_infos=pulumi.get(__ret__, 'quota_infos'),
110
+ service=pulumi.get(__ret__, 'service'))
111
+
112
+
113
+ @_utilities.lift_output_func(get_s_quota_infos)
114
+ def get_s_quota_infos_output(parent: Optional[pulumi.Input[str]] = None,
115
+ service: Optional[pulumi.Input[str]] = None,
116
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSQuotaInfosResult]:
117
+ """
118
+ Provides information about all quotas for a given project, folder or organization.
119
+
120
+ ## Example Usage
121
+
122
+ <!--Start PulumiCodeChooser -->
123
+ ```python
124
+ import pulumi
125
+ import pulumi_gcp as gcp
126
+
127
+ my_quota_infos = gcp.cloudquota.get_s_quota_infos(parent="projects/my-project",
128
+ service="compute.googleapis.com")
129
+ ```
130
+ <!--End PulumiCodeChooser -->
131
+
132
+
133
+ :param str parent: Parent value of QuotaInfo resources. Listing across different resource containers (such as 'projects/-') is not allowed. Allowed parents are "projects/[project-id / number]" or "folders/[folder-id / number]" or "organizations/[org-id / number].
134
+ :param str service: The name of the service in which the quotas are defined.
135
+ """
136
+ ...
@@ -11,11 +11,133 @@ from .. import _utilities
11
11
  from . import outputs
12
12
 
13
13
  __all__ = [
14
+ 'SQuotaPreferenceQuotaConfig',
14
15
  'GetSQuotaInfoDimensionsInfoResult',
15
16
  'GetSQuotaInfoDimensionsInfoDetailResult',
16
17
  'GetSQuotaInfoQuotaIncreaseEligibilityResult',
18
+ 'GetSQuotaInfosQuotaInfoResult',
19
+ 'GetSQuotaInfosQuotaInfoDimensionsInfoResult',
20
+ 'GetSQuotaInfosQuotaInfoDimensionsInfoDetailResult',
21
+ 'GetSQuotaInfosQuotaInfoQuotaIncreaseEligibilityResult',
17
22
  ]
18
23
 
24
+ @pulumi.output_type
25
+ class SQuotaPreferenceQuotaConfig(dict):
26
+ @staticmethod
27
+ def __key_warning(key: str):
28
+ suggest = None
29
+ if key == "preferredValue":
30
+ suggest = "preferred_value"
31
+ elif key == "grantedValue":
32
+ suggest = "granted_value"
33
+ elif key == "requestOrigin":
34
+ suggest = "request_origin"
35
+ elif key == "stateDetail":
36
+ suggest = "state_detail"
37
+ elif key == "traceId":
38
+ suggest = "trace_id"
39
+
40
+ if suggest:
41
+ pulumi.log.warn(f"Key '{key}' not found in SQuotaPreferenceQuotaConfig. Access the value via the '{suggest}' property getter instead.")
42
+
43
+ def __getitem__(self, key: str) -> Any:
44
+ SQuotaPreferenceQuotaConfig.__key_warning(key)
45
+ return super().__getitem__(key)
46
+
47
+ def get(self, key: str, default = None) -> Any:
48
+ SQuotaPreferenceQuotaConfig.__key_warning(key)
49
+ return super().get(key, default)
50
+
51
+ def __init__(__self__, *,
52
+ preferred_value: str,
53
+ annotations: Optional[Mapping[str, str]] = None,
54
+ granted_value: Optional[str] = None,
55
+ request_origin: Optional[str] = None,
56
+ state_detail: Optional[str] = None,
57
+ trace_id: Optional[str] = None):
58
+ """
59
+ :param str preferred_value: The preferred value. Must be greater than or equal to -1. If set to -1, it means the value is "unlimited".
60
+ :param Mapping[str, str] annotations: The annotations map for clients to store small amounts of arbitrary data. Do not put PII or other sensitive information here. See https://google.aip.dev/128#annotations.
61
+ An object containing a list of "key: value" pairs. Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
62
+ :param str granted_value: (Output)
63
+ Granted quota value.
64
+ :param str request_origin: (Output)
65
+ The origin of the quota preference request.
66
+
67
+ - - -
68
+ :param str state_detail: (Output)
69
+ Optional details about the state of this quota preference.
70
+ :param str trace_id: (Output)
71
+ The trace id that the Google Cloud uses to provision the requested quota. This trace id may be used by the client to contact Cloud support to track the state of a quota preference request. The trace id is only produced for increase requests and is unique for each request. The quota decrease requests do not have a trace id.
72
+ """
73
+ pulumi.set(__self__, "preferred_value", preferred_value)
74
+ if annotations is not None:
75
+ pulumi.set(__self__, "annotations", annotations)
76
+ if granted_value is not None:
77
+ pulumi.set(__self__, "granted_value", granted_value)
78
+ if request_origin is not None:
79
+ pulumi.set(__self__, "request_origin", request_origin)
80
+ if state_detail is not None:
81
+ pulumi.set(__self__, "state_detail", state_detail)
82
+ if trace_id is not None:
83
+ pulumi.set(__self__, "trace_id", trace_id)
84
+
85
+ @property
86
+ @pulumi.getter(name="preferredValue")
87
+ def preferred_value(self) -> str:
88
+ """
89
+ The preferred value. Must be greater than or equal to -1. If set to -1, it means the value is "unlimited".
90
+ """
91
+ return pulumi.get(self, "preferred_value")
92
+
93
+ @property
94
+ @pulumi.getter
95
+ def annotations(self) -> Optional[Mapping[str, str]]:
96
+ """
97
+ The annotations map for clients to store small amounts of arbitrary data. Do not put PII or other sensitive information here. See https://google.aip.dev/128#annotations.
98
+ An object containing a list of "key: value" pairs. Example: `{ "name": "wrench", "mass": "1.3kg", "count": "3" }`.
99
+ """
100
+ return pulumi.get(self, "annotations")
101
+
102
+ @property
103
+ @pulumi.getter(name="grantedValue")
104
+ def granted_value(self) -> Optional[str]:
105
+ """
106
+ (Output)
107
+ Granted quota value.
108
+ """
109
+ return pulumi.get(self, "granted_value")
110
+
111
+ @property
112
+ @pulumi.getter(name="requestOrigin")
113
+ def request_origin(self) -> Optional[str]:
114
+ """
115
+ (Output)
116
+ The origin of the quota preference request.
117
+
118
+ - - -
119
+ """
120
+ return pulumi.get(self, "request_origin")
121
+
122
+ @property
123
+ @pulumi.getter(name="stateDetail")
124
+ def state_detail(self) -> Optional[str]:
125
+ """
126
+ (Output)
127
+ Optional details about the state of this quota preference.
128
+ """
129
+ return pulumi.get(self, "state_detail")
130
+
131
+ @property
132
+ @pulumi.getter(name="traceId")
133
+ def trace_id(self) -> Optional[str]:
134
+ """
135
+ (Output)
136
+ The trace id that the Google Cloud uses to provision the requested quota. This trace id may be used by the client to contact Cloud support to track the state of a quota preference request. The trace id is only produced for increase requests and is unique for each request. The quota decrease requests do not have a trace id.
137
+ """
138
+ return pulumi.get(self, "trace_id")
139
+
140
+
19
141
  @pulumi.output_type
20
142
  class GetSQuotaInfoDimensionsInfoResult(dict):
21
143
  def __init__(__self__, *,
@@ -103,3 +225,269 @@ class GetSQuotaInfoQuotaIncreaseEligibilityResult(dict):
103
225
  return pulumi.get(self, "is_eligible")
104
226
 
105
227
 
228
+ @pulumi.output_type
229
+ class GetSQuotaInfosQuotaInfoResult(dict):
230
+ def __init__(__self__, *,
231
+ container_type: str,
232
+ dimensions: Sequence[str],
233
+ dimensions_infos: Sequence['outputs.GetSQuotaInfosQuotaInfoDimensionsInfoResult'],
234
+ is_concurrent: bool,
235
+ is_fixed: bool,
236
+ is_precise: bool,
237
+ metric: str,
238
+ metric_display_name: str,
239
+ metric_unit: str,
240
+ name: str,
241
+ quota_display_name: str,
242
+ quota_id: str,
243
+ quota_increase_eligibilities: Sequence['outputs.GetSQuotaInfosQuotaInfoQuotaIncreaseEligibilityResult'],
244
+ refresh_interval: str,
245
+ service: str,
246
+ service_request_quota_uri: str):
247
+ """
248
+ :param str container_type: (Output) The container type of the QuotaInfo.
249
+ :param Sequence[str] 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.
250
+ :param Sequence['GetSQuotaInfosQuotaInfoDimensionsInfoArgs'] dimensions_infos: (Output) The collection of dimensions info ordered by their dimensions from more specific ones to less specific ones.
251
+ :param bool is_concurrent: (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.
252
+ :param bool is_fixed: (Output) Whether the quota value is fixed or adjustable.
253
+ :param bool is_precise: (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.
254
+ :param str metric: (Output) The metric of the quota. It specifies the resources consumption the quota is defined for, for example: `compute.googleapis.com/cpus`.
255
+ :param str metric_display_name: (Output) The display name of the quota metric.
256
+ :param str metric_unit: (Output) The unit in which the metric value is reported, e.g., `MByte`.
257
+ :param str name: (Output) Resource name of this QuotaInfo, for example: `projects/123/locations/global/services/compute.googleapis.com/quotaInfos/CpusPerProjectPerRegion`.
258
+ :param str quota_display_name: (Output) The display name of the quota.
259
+ :param Sequence['GetSQuotaInfosQuotaInfoQuotaIncreaseEligibilityArgs'] quota_increase_eligibilities: (Output) Whether it is eligible to request a higher quota value for this quota.
260
+ :param str refresh_interval: (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.
261
+ :param str service: The name of the service in which the quotas are defined.
262
+ :param str service_request_quota_uri: (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`.
263
+ """
264
+ pulumi.set(__self__, "container_type", container_type)
265
+ pulumi.set(__self__, "dimensions", dimensions)
266
+ pulumi.set(__self__, "dimensions_infos", dimensions_infos)
267
+ pulumi.set(__self__, "is_concurrent", is_concurrent)
268
+ pulumi.set(__self__, "is_fixed", is_fixed)
269
+ pulumi.set(__self__, "is_precise", is_precise)
270
+ pulumi.set(__self__, "metric", metric)
271
+ pulumi.set(__self__, "metric_display_name", metric_display_name)
272
+ pulumi.set(__self__, "metric_unit", metric_unit)
273
+ pulumi.set(__self__, "name", name)
274
+ pulumi.set(__self__, "quota_display_name", quota_display_name)
275
+ pulumi.set(__self__, "quota_id", quota_id)
276
+ pulumi.set(__self__, "quota_increase_eligibilities", quota_increase_eligibilities)
277
+ pulumi.set(__self__, "refresh_interval", refresh_interval)
278
+ pulumi.set(__self__, "service", service)
279
+ pulumi.set(__self__, "service_request_quota_uri", service_request_quota_uri)
280
+
281
+ @property
282
+ @pulumi.getter(name="containerType")
283
+ def container_type(self) -> str:
284
+ """
285
+ (Output) The container type of the QuotaInfo.
286
+ """
287
+ return pulumi.get(self, "container_type")
288
+
289
+ @property
290
+ @pulumi.getter
291
+ def dimensions(self) -> Sequence[str]:
292
+ """
293
+ 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.
294
+ """
295
+ return pulumi.get(self, "dimensions")
296
+
297
+ @property
298
+ @pulumi.getter(name="dimensionsInfos")
299
+ def dimensions_infos(self) -> Sequence['outputs.GetSQuotaInfosQuotaInfoDimensionsInfoResult']:
300
+ """
301
+ (Output) The collection of dimensions info ordered by their dimensions from more specific ones to less specific ones.
302
+ """
303
+ return pulumi.get(self, "dimensions_infos")
304
+
305
+ @property
306
+ @pulumi.getter(name="isConcurrent")
307
+ def is_concurrent(self) -> bool:
308
+ """
309
+ (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.
310
+ """
311
+ return pulumi.get(self, "is_concurrent")
312
+
313
+ @property
314
+ @pulumi.getter(name="isFixed")
315
+ def is_fixed(self) -> bool:
316
+ """
317
+ (Output) Whether the quota value is fixed or adjustable.
318
+ """
319
+ return pulumi.get(self, "is_fixed")
320
+
321
+ @property
322
+ @pulumi.getter(name="isPrecise")
323
+ def is_precise(self) -> bool:
324
+ """
325
+ (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.
326
+ """
327
+ return pulumi.get(self, "is_precise")
328
+
329
+ @property
330
+ @pulumi.getter
331
+ def metric(self) -> str:
332
+ """
333
+ (Output) The metric of the quota. It specifies the resources consumption the quota is defined for, for example: `compute.googleapis.com/cpus`.
334
+ """
335
+ return pulumi.get(self, "metric")
336
+
337
+ @property
338
+ @pulumi.getter(name="metricDisplayName")
339
+ def metric_display_name(self) -> str:
340
+ """
341
+ (Output) The display name of the quota metric.
342
+ """
343
+ return pulumi.get(self, "metric_display_name")
344
+
345
+ @property
346
+ @pulumi.getter(name="metricUnit")
347
+ def metric_unit(self) -> str:
348
+ """
349
+ (Output) The unit in which the metric value is reported, e.g., `MByte`.
350
+ """
351
+ return pulumi.get(self, "metric_unit")
352
+
353
+ @property
354
+ @pulumi.getter
355
+ def name(self) -> str:
356
+ """
357
+ (Output) Resource name of this QuotaInfo, for example: `projects/123/locations/global/services/compute.googleapis.com/quotaInfos/CpusPerProjectPerRegion`.
358
+ """
359
+ return pulumi.get(self, "name")
360
+
361
+ @property
362
+ @pulumi.getter(name="quotaDisplayName")
363
+ def quota_display_name(self) -> str:
364
+ """
365
+ (Output) The display name of the quota.
366
+ """
367
+ return pulumi.get(self, "quota_display_name")
368
+
369
+ @property
370
+ @pulumi.getter(name="quotaId")
371
+ def quota_id(self) -> str:
372
+ return pulumi.get(self, "quota_id")
373
+
374
+ @property
375
+ @pulumi.getter(name="quotaIncreaseEligibilities")
376
+ def quota_increase_eligibilities(self) -> Sequence['outputs.GetSQuotaInfosQuotaInfoQuotaIncreaseEligibilityResult']:
377
+ """
378
+ (Output) Whether it is eligible to request a higher quota value for this quota.
379
+ """
380
+ return pulumi.get(self, "quota_increase_eligibilities")
381
+
382
+ @property
383
+ @pulumi.getter(name="refreshInterval")
384
+ def refresh_interval(self) -> str:
385
+ """
386
+ (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.
387
+ """
388
+ return pulumi.get(self, "refresh_interval")
389
+
390
+ @property
391
+ @pulumi.getter
392
+ def service(self) -> str:
393
+ """
394
+ The name of the service in which the quotas are defined.
395
+ """
396
+ return pulumi.get(self, "service")
397
+
398
+ @property
399
+ @pulumi.getter(name="serviceRequestQuotaUri")
400
+ def service_request_quota_uri(self) -> str:
401
+ """
402
+ (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`.
403
+ """
404
+ return pulumi.get(self, "service_request_quota_uri")
405
+
406
+
407
+ @pulumi.output_type
408
+ class GetSQuotaInfosQuotaInfoDimensionsInfoResult(dict):
409
+ def __init__(__self__, *,
410
+ applicable_locations: Sequence[str],
411
+ details: Sequence['outputs.GetSQuotaInfosQuotaInfoDimensionsInfoDetailResult'],
412
+ dimensions: Mapping[str, Any]):
413
+ """
414
+ :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.
415
+ :param Sequence['GetSQuotaInfosQuotaInfoDimensionsInfoDetailArgs'] details: The quota details for a map of dimensions.
416
+ :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.
417
+ """
418
+ pulumi.set(__self__, "applicable_locations", applicable_locations)
419
+ pulumi.set(__self__, "details", details)
420
+ pulumi.set(__self__, "dimensions", dimensions)
421
+
422
+ @property
423
+ @pulumi.getter(name="applicableLocations")
424
+ def applicable_locations(self) -> Sequence[str]:
425
+ """
426
+ 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.
427
+ """
428
+ return pulumi.get(self, "applicable_locations")
429
+
430
+ @property
431
+ @pulumi.getter
432
+ def details(self) -> Sequence['outputs.GetSQuotaInfosQuotaInfoDimensionsInfoDetailResult']:
433
+ """
434
+ The quota details for a map of dimensions.
435
+ """
436
+ return pulumi.get(self, "details")
437
+
438
+ @property
439
+ @pulumi.getter
440
+ def dimensions(self) -> Mapping[str, Any]:
441
+ """
442
+ 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.
443
+ """
444
+ return pulumi.get(self, "dimensions")
445
+
446
+
447
+ @pulumi.output_type
448
+ class GetSQuotaInfosQuotaInfoDimensionsInfoDetailResult(dict):
449
+ def __init__(__self__, *,
450
+ value: str):
451
+ """
452
+ :param str value: The value currently in effect and being enforced.
453
+ """
454
+ pulumi.set(__self__, "value", value)
455
+
456
+ @property
457
+ @pulumi.getter
458
+ def value(self) -> str:
459
+ """
460
+ The value currently in effect and being enforced.
461
+ """
462
+ return pulumi.get(self, "value")
463
+
464
+
465
+ @pulumi.output_type
466
+ class GetSQuotaInfosQuotaInfoQuotaIncreaseEligibilityResult(dict):
467
+ def __init__(__self__, *,
468
+ ineligibility_reason: str,
469
+ is_eligible: bool):
470
+ """
471
+ :param str ineligibility_reason: The enumeration of reasons when it is ineligible to request increase adjustment.
472
+ :param bool is_eligible: Whether a higher quota value can be requested for the quota.
473
+ """
474
+ pulumi.set(__self__, "ineligibility_reason", ineligibility_reason)
475
+ pulumi.set(__self__, "is_eligible", is_eligible)
476
+
477
+ @property
478
+ @pulumi.getter(name="ineligibilityReason")
479
+ def ineligibility_reason(self) -> str:
480
+ """
481
+ The enumeration of reasons when it is ineligible to request increase adjustment.
482
+ """
483
+ return pulumi.get(self, "ineligibility_reason")
484
+
485
+ @property
486
+ @pulumi.getter(name="isEligible")
487
+ def is_eligible(self) -> bool:
488
+ """
489
+ Whether a higher quota value can be requested for the quota.
490
+ """
491
+ return pulumi.get(self, "is_eligible")
492
+
493
+