pulumi-gcp 8.28.0a1745598508__py3-none-any.whl → 8.29.0a1746076904__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.
- pulumi_gcp/__init__.py +88 -0
- pulumi_gcp/accesscontextmanager/_inputs.py +399 -0
- pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +54 -0
- pulumi_gcp/accesscontextmanager/outputs.py +369 -0
- pulumi_gcp/alloydb/_inputs.py +47 -1
- pulumi_gcp/alloydb/outputs.py +61 -3
- pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +8 -2
- pulumi_gcp/applicationintegration/client.py +34 -12
- pulumi_gcp/artifactregistry/outputs.py +2 -2
- pulumi_gcp/certificateauthority/_inputs.py +32 -0
- pulumi_gcp/certificateauthority/ca_pool.py +2 -0
- pulumi_gcp/certificateauthority/outputs.py +22 -0
- pulumi_gcp/clouddeploy/_inputs.py +0 -6
- pulumi_gcp/clouddeploy/delivery_pipeline.py +84 -77
- pulumi_gcp/clouddeploy/outputs.py +0 -4
- pulumi_gcp/cloudrunv2/_inputs.py +3 -3
- pulumi_gcp/cloudrunv2/outputs.py +4 -4
- pulumi_gcp/colab/runtime_template.py +3 -3
- pulumi_gcp/compute/__init__.py +7 -0
- pulumi_gcp/compute/_inputs.py +809 -1
- pulumi_gcp/compute/backend_service.py +89 -0
- pulumi_gcp/compute/firewall_policy_with_rules.py +2 -2
- pulumi_gcp/compute/get_backend_service.py +12 -1
- pulumi_gcp/compute/get_storage_pool_iam_policy.py +183 -0
- pulumi_gcp/compute/get_storage_pool_types.py +268 -0
- pulumi_gcp/compute/outputs.py +743 -3
- pulumi_gcp/compute/resource_policy_attachment.py +476 -0
- pulumi_gcp/compute/storage_pool.py +1045 -0
- pulumi_gcp/compute/storage_pool_iam_binding.py +1088 -0
- pulumi_gcp/compute/storage_pool_iam_member.py +1088 -0
- pulumi_gcp/compute/storage_pool_iam_policy.py +907 -0
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +63 -3
- pulumi_gcp/container/outputs.py +70 -6
- pulumi_gcp/dataproc/get_metastore_service.py +12 -1
- pulumi_gcp/dataproc/metastore_service.py +61 -0
- pulumi_gcp/datastream/connection_profile.py +40 -0
- pulumi_gcp/discoveryengine/_inputs.py +38 -0
- pulumi_gcp/discoveryengine/chat_engine.py +6 -4
- pulumi_gcp/discoveryengine/outputs.py +26 -0
- pulumi_gcp/firebaserules/_inputs.py +6 -6
- pulumi_gcp/firebaserules/outputs.py +4 -4
- pulumi_gcp/gkebackup/__init__.py +2 -0
- pulumi_gcp/gkebackup/backup_channel.py +737 -0
- pulumi_gcp/gkebackup/restore_channel.py +737 -0
- pulumi_gcp/gkehub/_inputs.py +208 -0
- pulumi_gcp/gkehub/outputs.py +171 -1
- pulumi_gcp/healthcare/pipeline_job.py +2 -2
- pulumi_gcp/iap/__init__.py +4 -0
- pulumi_gcp/iap/_inputs.py +130 -0
- pulumi_gcp/iap/get_web_cloud_run_service_iam_policy.py +183 -0
- pulumi_gcp/iap/outputs.py +76 -0
- pulumi_gcp/iap/web_cloud_run_service_iam_binding.py +1089 -0
- pulumi_gcp/iap/web_cloud_run_service_iam_member.py +1089 -0
- pulumi_gcp/iap/web_cloud_run_service_iam_policy.py +908 -0
- pulumi_gcp/kms/key_ring_import_job.py +7 -7
- pulumi_gcp/managedkafka/connect_cluster.py +8 -4
- pulumi_gcp/managedkafka/connector.py +8 -4
- pulumi_gcp/monitoring/uptime_check_config.py +49 -0
- pulumi_gcp/networkconnectivity/internal_range.py +82 -0
- pulumi_gcp/projects/_inputs.py +0 -6
- pulumi_gcp/projects/api_key.py +28 -0
- pulumi_gcp/projects/outputs.py +0 -4
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/get_instance.py +12 -1
- pulumi_gcp/redis/instance.py +61 -0
- pulumi_gcp/sql/_inputs.py +86 -6
- pulumi_gcp/sql/outputs.py +156 -12
- pulumi_gcp/storage/__init__.py +1 -0
- pulumi_gcp/storage/_inputs.py +457 -0
- pulumi_gcp/storage/batch_operations_job.py +776 -0
- pulumi_gcp/storage/outputs.py +403 -0
- {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/RECORD +78 -64
- {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.28.0a1745598508.dist-info → pulumi_gcp-8.29.0a1746076904.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,737 @@
|
|
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 builtins
|
6
|
+
import copy
|
7
|
+
import warnings
|
8
|
+
import sys
|
9
|
+
import pulumi
|
10
|
+
import pulumi.runtime
|
11
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
12
|
+
if sys.version_info >= (3, 11):
|
13
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
14
|
+
else:
|
15
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
16
|
+
from .. import _utilities
|
17
|
+
|
18
|
+
__all__ = ['BackupChannelArgs', 'BackupChannel']
|
19
|
+
|
20
|
+
@pulumi.input_type
|
21
|
+
class BackupChannelArgs:
|
22
|
+
def __init__(__self__, *,
|
23
|
+
destination_project: pulumi.Input[builtins.str],
|
24
|
+
location: pulumi.Input[builtins.str],
|
25
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
26
|
+
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
27
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
28
|
+
project: Optional[pulumi.Input[builtins.str]] = None):
|
29
|
+
"""
|
30
|
+
The set of arguments for constructing a BackupChannel resource.
|
31
|
+
:param pulumi.Input[builtins.str] destination_project: The project where Backups are allowed to be stored.
|
32
|
+
The format is `projects/{project}`.
|
33
|
+
{project} can only be a project number.
|
34
|
+
:param pulumi.Input[builtins.str] location: The region of the Backup Channel.
|
35
|
+
|
36
|
+
|
37
|
+
- - -
|
38
|
+
:param pulumi.Input[builtins.str] description: User specified descriptive string for this BackupChannel.
|
39
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Description: A set of custom labels supplied by the user.
|
40
|
+
A list of key->value pairs.
|
41
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
42
|
+
|
43
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
44
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
45
|
+
:param pulumi.Input[builtins.str] name: The full name of the BackupChannel Resource.
|
46
|
+
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
47
|
+
If it is not provided, the provider project is used.
|
48
|
+
"""
|
49
|
+
pulumi.set(__self__, "destination_project", destination_project)
|
50
|
+
pulumi.set(__self__, "location", location)
|
51
|
+
if description is not None:
|
52
|
+
pulumi.set(__self__, "description", description)
|
53
|
+
if labels is not None:
|
54
|
+
pulumi.set(__self__, "labels", labels)
|
55
|
+
if name is not None:
|
56
|
+
pulumi.set(__self__, "name", name)
|
57
|
+
if project is not None:
|
58
|
+
pulumi.set(__self__, "project", project)
|
59
|
+
|
60
|
+
@property
|
61
|
+
@pulumi.getter(name="destinationProject")
|
62
|
+
def destination_project(self) -> pulumi.Input[builtins.str]:
|
63
|
+
"""
|
64
|
+
The project where Backups are allowed to be stored.
|
65
|
+
The format is `projects/{project}`.
|
66
|
+
{project} can only be a project number.
|
67
|
+
"""
|
68
|
+
return pulumi.get(self, "destination_project")
|
69
|
+
|
70
|
+
@destination_project.setter
|
71
|
+
def destination_project(self, value: pulumi.Input[builtins.str]):
|
72
|
+
pulumi.set(self, "destination_project", value)
|
73
|
+
|
74
|
+
@property
|
75
|
+
@pulumi.getter
|
76
|
+
def location(self) -> pulumi.Input[builtins.str]:
|
77
|
+
"""
|
78
|
+
The region of the Backup Channel.
|
79
|
+
|
80
|
+
|
81
|
+
- - -
|
82
|
+
"""
|
83
|
+
return pulumi.get(self, "location")
|
84
|
+
|
85
|
+
@location.setter
|
86
|
+
def location(self, value: pulumi.Input[builtins.str]):
|
87
|
+
pulumi.set(self, "location", value)
|
88
|
+
|
89
|
+
@property
|
90
|
+
@pulumi.getter
|
91
|
+
def description(self) -> Optional[pulumi.Input[builtins.str]]:
|
92
|
+
"""
|
93
|
+
User specified descriptive string for this BackupChannel.
|
94
|
+
"""
|
95
|
+
return pulumi.get(self, "description")
|
96
|
+
|
97
|
+
@description.setter
|
98
|
+
def description(self, value: Optional[pulumi.Input[builtins.str]]):
|
99
|
+
pulumi.set(self, "description", value)
|
100
|
+
|
101
|
+
@property
|
102
|
+
@pulumi.getter
|
103
|
+
def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
104
|
+
"""
|
105
|
+
Description: A set of custom labels supplied by the user.
|
106
|
+
A list of key->value pairs.
|
107
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
108
|
+
|
109
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
110
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
111
|
+
"""
|
112
|
+
return pulumi.get(self, "labels")
|
113
|
+
|
114
|
+
@labels.setter
|
115
|
+
def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
116
|
+
pulumi.set(self, "labels", value)
|
117
|
+
|
118
|
+
@property
|
119
|
+
@pulumi.getter
|
120
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
121
|
+
"""
|
122
|
+
The full name of the BackupChannel Resource.
|
123
|
+
"""
|
124
|
+
return pulumi.get(self, "name")
|
125
|
+
|
126
|
+
@name.setter
|
127
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
128
|
+
pulumi.set(self, "name", value)
|
129
|
+
|
130
|
+
@property
|
131
|
+
@pulumi.getter
|
132
|
+
def project(self) -> Optional[pulumi.Input[builtins.str]]:
|
133
|
+
"""
|
134
|
+
The ID of the project in which the resource belongs.
|
135
|
+
If it is not provided, the provider project is used.
|
136
|
+
"""
|
137
|
+
return pulumi.get(self, "project")
|
138
|
+
|
139
|
+
@project.setter
|
140
|
+
def project(self, value: Optional[pulumi.Input[builtins.str]]):
|
141
|
+
pulumi.set(self, "project", value)
|
142
|
+
|
143
|
+
|
144
|
+
@pulumi.input_type
|
145
|
+
class _BackupChannelState:
|
146
|
+
def __init__(__self__, *,
|
147
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
148
|
+
destination_project: Optional[pulumi.Input[builtins.str]] = None,
|
149
|
+
destination_project_id: Optional[pulumi.Input[builtins.str]] = None,
|
150
|
+
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
151
|
+
etag: Optional[pulumi.Input[builtins.str]] = None,
|
152
|
+
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
153
|
+
location: Optional[pulumi.Input[builtins.str]] = None,
|
154
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
155
|
+
project: Optional[pulumi.Input[builtins.str]] = None,
|
156
|
+
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
157
|
+
uid: Optional[pulumi.Input[builtins.str]] = None):
|
158
|
+
"""
|
159
|
+
Input properties used for looking up and filtering BackupChannel resources.
|
160
|
+
:param pulumi.Input[builtins.str] description: User specified descriptive string for this BackupChannel.
|
161
|
+
:param pulumi.Input[builtins.str] destination_project: The project where Backups are allowed to be stored.
|
162
|
+
The format is `projects/{project}`.
|
163
|
+
{project} can only be a project number.
|
164
|
+
:param pulumi.Input[builtins.str] destination_project_id: The project_id where Backups are allowed to be stored.
|
165
|
+
Example Project ID: "my-project-id".
|
166
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
167
|
+
:param pulumi.Input[builtins.str] etag: etag is used for optimistic concurrency control as a way to help prevent simultaneous
|
168
|
+
updates of a backup channel from overwriting each other. It is strongly suggested that
|
169
|
+
systems make use of the 'etag' in the read-modify-write cycle to perform BackupChannel updates
|
170
|
+
in order to avoid race conditions: An etag is returned in the response to backupChannels.get,
|
171
|
+
and systems are expected to put that etag in the request to backupChannels.patch or
|
172
|
+
backupChannels.delete to ensure that their change will be applied to the same version of the resource.
|
173
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Description: A set of custom labels supplied by the user.
|
174
|
+
A list of key->value pairs.
|
175
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
176
|
+
|
177
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
178
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
179
|
+
:param pulumi.Input[builtins.str] location: The region of the Backup Channel.
|
180
|
+
|
181
|
+
|
182
|
+
- - -
|
183
|
+
:param pulumi.Input[builtins.str] name: The full name of the BackupChannel Resource.
|
184
|
+
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
185
|
+
If it is not provided, the provider project is used.
|
186
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] pulumi_labels: The combination of labels configured directly on the resource
|
187
|
+
and default labels configured on the provider.
|
188
|
+
:param pulumi.Input[builtins.str] uid: Server generated, unique identifier of UUID format.
|
189
|
+
"""
|
190
|
+
if description is not None:
|
191
|
+
pulumi.set(__self__, "description", description)
|
192
|
+
if destination_project is not None:
|
193
|
+
pulumi.set(__self__, "destination_project", destination_project)
|
194
|
+
if destination_project_id is not None:
|
195
|
+
pulumi.set(__self__, "destination_project_id", destination_project_id)
|
196
|
+
if effective_labels is not None:
|
197
|
+
pulumi.set(__self__, "effective_labels", effective_labels)
|
198
|
+
if etag is not None:
|
199
|
+
pulumi.set(__self__, "etag", etag)
|
200
|
+
if labels is not None:
|
201
|
+
pulumi.set(__self__, "labels", labels)
|
202
|
+
if location is not None:
|
203
|
+
pulumi.set(__self__, "location", location)
|
204
|
+
if name is not None:
|
205
|
+
pulumi.set(__self__, "name", name)
|
206
|
+
if project is not None:
|
207
|
+
pulumi.set(__self__, "project", project)
|
208
|
+
if pulumi_labels is not None:
|
209
|
+
pulumi.set(__self__, "pulumi_labels", pulumi_labels)
|
210
|
+
if uid is not None:
|
211
|
+
pulumi.set(__self__, "uid", uid)
|
212
|
+
|
213
|
+
@property
|
214
|
+
@pulumi.getter
|
215
|
+
def description(self) -> Optional[pulumi.Input[builtins.str]]:
|
216
|
+
"""
|
217
|
+
User specified descriptive string for this BackupChannel.
|
218
|
+
"""
|
219
|
+
return pulumi.get(self, "description")
|
220
|
+
|
221
|
+
@description.setter
|
222
|
+
def description(self, value: Optional[pulumi.Input[builtins.str]]):
|
223
|
+
pulumi.set(self, "description", value)
|
224
|
+
|
225
|
+
@property
|
226
|
+
@pulumi.getter(name="destinationProject")
|
227
|
+
def destination_project(self) -> Optional[pulumi.Input[builtins.str]]:
|
228
|
+
"""
|
229
|
+
The project where Backups are allowed to be stored.
|
230
|
+
The format is `projects/{project}`.
|
231
|
+
{project} can only be a project number.
|
232
|
+
"""
|
233
|
+
return pulumi.get(self, "destination_project")
|
234
|
+
|
235
|
+
@destination_project.setter
|
236
|
+
def destination_project(self, value: Optional[pulumi.Input[builtins.str]]):
|
237
|
+
pulumi.set(self, "destination_project", value)
|
238
|
+
|
239
|
+
@property
|
240
|
+
@pulumi.getter(name="destinationProjectId")
|
241
|
+
def destination_project_id(self) -> Optional[pulumi.Input[builtins.str]]:
|
242
|
+
"""
|
243
|
+
The project_id where Backups are allowed to be stored.
|
244
|
+
Example Project ID: "my-project-id".
|
245
|
+
"""
|
246
|
+
return pulumi.get(self, "destination_project_id")
|
247
|
+
|
248
|
+
@destination_project_id.setter
|
249
|
+
def destination_project_id(self, value: Optional[pulumi.Input[builtins.str]]):
|
250
|
+
pulumi.set(self, "destination_project_id", value)
|
251
|
+
|
252
|
+
@property
|
253
|
+
@pulumi.getter(name="effectiveLabels")
|
254
|
+
def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
255
|
+
"""
|
256
|
+
All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
257
|
+
"""
|
258
|
+
return pulumi.get(self, "effective_labels")
|
259
|
+
|
260
|
+
@effective_labels.setter
|
261
|
+
def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
262
|
+
pulumi.set(self, "effective_labels", value)
|
263
|
+
|
264
|
+
@property
|
265
|
+
@pulumi.getter
|
266
|
+
def etag(self) -> Optional[pulumi.Input[builtins.str]]:
|
267
|
+
"""
|
268
|
+
etag is used for optimistic concurrency control as a way to help prevent simultaneous
|
269
|
+
updates of a backup channel from overwriting each other. It is strongly suggested that
|
270
|
+
systems make use of the 'etag' in the read-modify-write cycle to perform BackupChannel updates
|
271
|
+
in order to avoid race conditions: An etag is returned in the response to backupChannels.get,
|
272
|
+
and systems are expected to put that etag in the request to backupChannels.patch or
|
273
|
+
backupChannels.delete to ensure that their change will be applied to the same version of the resource.
|
274
|
+
"""
|
275
|
+
return pulumi.get(self, "etag")
|
276
|
+
|
277
|
+
@etag.setter
|
278
|
+
def etag(self, value: Optional[pulumi.Input[builtins.str]]):
|
279
|
+
pulumi.set(self, "etag", value)
|
280
|
+
|
281
|
+
@property
|
282
|
+
@pulumi.getter
|
283
|
+
def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
284
|
+
"""
|
285
|
+
Description: A set of custom labels supplied by the user.
|
286
|
+
A list of key->value pairs.
|
287
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
288
|
+
|
289
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
290
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
291
|
+
"""
|
292
|
+
return pulumi.get(self, "labels")
|
293
|
+
|
294
|
+
@labels.setter
|
295
|
+
def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
296
|
+
pulumi.set(self, "labels", value)
|
297
|
+
|
298
|
+
@property
|
299
|
+
@pulumi.getter
|
300
|
+
def location(self) -> Optional[pulumi.Input[builtins.str]]:
|
301
|
+
"""
|
302
|
+
The region of the Backup Channel.
|
303
|
+
|
304
|
+
|
305
|
+
- - -
|
306
|
+
"""
|
307
|
+
return pulumi.get(self, "location")
|
308
|
+
|
309
|
+
@location.setter
|
310
|
+
def location(self, value: Optional[pulumi.Input[builtins.str]]):
|
311
|
+
pulumi.set(self, "location", value)
|
312
|
+
|
313
|
+
@property
|
314
|
+
@pulumi.getter
|
315
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
316
|
+
"""
|
317
|
+
The full name of the BackupChannel Resource.
|
318
|
+
"""
|
319
|
+
return pulumi.get(self, "name")
|
320
|
+
|
321
|
+
@name.setter
|
322
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
323
|
+
pulumi.set(self, "name", value)
|
324
|
+
|
325
|
+
@property
|
326
|
+
@pulumi.getter
|
327
|
+
def project(self) -> Optional[pulumi.Input[builtins.str]]:
|
328
|
+
"""
|
329
|
+
The ID of the project in which the resource belongs.
|
330
|
+
If it is not provided, the provider project is used.
|
331
|
+
"""
|
332
|
+
return pulumi.get(self, "project")
|
333
|
+
|
334
|
+
@project.setter
|
335
|
+
def project(self, value: Optional[pulumi.Input[builtins.str]]):
|
336
|
+
pulumi.set(self, "project", value)
|
337
|
+
|
338
|
+
@property
|
339
|
+
@pulumi.getter(name="pulumiLabels")
|
340
|
+
def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
341
|
+
"""
|
342
|
+
The combination of labels configured directly on the resource
|
343
|
+
and default labels configured on the provider.
|
344
|
+
"""
|
345
|
+
return pulumi.get(self, "pulumi_labels")
|
346
|
+
|
347
|
+
@pulumi_labels.setter
|
348
|
+
def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
349
|
+
pulumi.set(self, "pulumi_labels", value)
|
350
|
+
|
351
|
+
@property
|
352
|
+
@pulumi.getter
|
353
|
+
def uid(self) -> Optional[pulumi.Input[builtins.str]]:
|
354
|
+
"""
|
355
|
+
Server generated, unique identifier of UUID format.
|
356
|
+
"""
|
357
|
+
return pulumi.get(self, "uid")
|
358
|
+
|
359
|
+
@uid.setter
|
360
|
+
def uid(self, value: Optional[pulumi.Input[builtins.str]]):
|
361
|
+
pulumi.set(self, "uid", value)
|
362
|
+
|
363
|
+
|
364
|
+
class BackupChannel(pulumi.CustomResource):
|
365
|
+
@overload
|
366
|
+
def __init__(__self__,
|
367
|
+
resource_name: str,
|
368
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
369
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
370
|
+
destination_project: Optional[pulumi.Input[builtins.str]] = None,
|
371
|
+
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
372
|
+
location: Optional[pulumi.Input[builtins.str]] = None,
|
373
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
374
|
+
project: Optional[pulumi.Input[builtins.str]] = None,
|
375
|
+
__props__=None):
|
376
|
+
"""
|
377
|
+
A BackupChannel imposes constraints on where clusters can be backed up.
|
378
|
+
The BackupChannel should be in the same project and region
|
379
|
+
as the cluster being backed up.
|
380
|
+
The backup can be created only in destination_project.
|
381
|
+
|
382
|
+
To get more information about BackupChannel, see:
|
383
|
+
|
384
|
+
* [API documentation](https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke/reference/rest/v1/projects.locations.backupChannels)
|
385
|
+
* How-to Guides
|
386
|
+
* [Official Documentation](https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke)
|
387
|
+
|
388
|
+
## Example Usage
|
389
|
+
|
390
|
+
### Gkebackup Backupchannel Basic
|
391
|
+
|
392
|
+
```python
|
393
|
+
import pulumi
|
394
|
+
import pulumi_gcp as gcp
|
395
|
+
|
396
|
+
basic = gcp.gkebackup.BackupChannel("basic",
|
397
|
+
name="basic-channel",
|
398
|
+
location="us-central1",
|
399
|
+
description="",
|
400
|
+
destination_project="projects/24240755850",
|
401
|
+
labels={
|
402
|
+
"key": "some-value",
|
403
|
+
})
|
404
|
+
```
|
405
|
+
|
406
|
+
## Import
|
407
|
+
|
408
|
+
BackupChannel can be imported using any of these accepted formats:
|
409
|
+
|
410
|
+
* `projects/{{project}}/locations/{{location}}/backupChannels/{{name}}`
|
411
|
+
|
412
|
+
* `{{project}}/{{location}}/{{name}}`
|
413
|
+
|
414
|
+
* `{{location}}/{{name}}`
|
415
|
+
|
416
|
+
When using the `pulumi import` command, BackupChannel can be imported using one of the formats above. For example:
|
417
|
+
|
418
|
+
```sh
|
419
|
+
$ pulumi import gcp:gkebackup/backupChannel:BackupChannel default projects/{{project}}/locations/{{location}}/backupChannels/{{name}}
|
420
|
+
```
|
421
|
+
|
422
|
+
```sh
|
423
|
+
$ pulumi import gcp:gkebackup/backupChannel:BackupChannel default {{project}}/{{location}}/{{name}}
|
424
|
+
```
|
425
|
+
|
426
|
+
```sh
|
427
|
+
$ pulumi import gcp:gkebackup/backupChannel:BackupChannel default {{location}}/{{name}}
|
428
|
+
```
|
429
|
+
|
430
|
+
:param str resource_name: The name of the resource.
|
431
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
432
|
+
:param pulumi.Input[builtins.str] description: User specified descriptive string for this BackupChannel.
|
433
|
+
:param pulumi.Input[builtins.str] destination_project: The project where Backups are allowed to be stored.
|
434
|
+
The format is `projects/{project}`.
|
435
|
+
{project} can only be a project number.
|
436
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Description: A set of custom labels supplied by the user.
|
437
|
+
A list of key->value pairs.
|
438
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
439
|
+
|
440
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
441
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
442
|
+
:param pulumi.Input[builtins.str] location: The region of the Backup Channel.
|
443
|
+
|
444
|
+
|
445
|
+
- - -
|
446
|
+
:param pulumi.Input[builtins.str] name: The full name of the BackupChannel Resource.
|
447
|
+
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
448
|
+
If it is not provided, the provider project is used.
|
449
|
+
"""
|
450
|
+
...
|
451
|
+
@overload
|
452
|
+
def __init__(__self__,
|
453
|
+
resource_name: str,
|
454
|
+
args: BackupChannelArgs,
|
455
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
456
|
+
"""
|
457
|
+
A BackupChannel imposes constraints on where clusters can be backed up.
|
458
|
+
The BackupChannel should be in the same project and region
|
459
|
+
as the cluster being backed up.
|
460
|
+
The backup can be created only in destination_project.
|
461
|
+
|
462
|
+
To get more information about BackupChannel, see:
|
463
|
+
|
464
|
+
* [API documentation](https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke/reference/rest/v1/projects.locations.backupChannels)
|
465
|
+
* How-to Guides
|
466
|
+
* [Official Documentation](https://cloud.google.com/kubernetes-engine/docs/add-on/backup-for-gke)
|
467
|
+
|
468
|
+
## Example Usage
|
469
|
+
|
470
|
+
### Gkebackup Backupchannel Basic
|
471
|
+
|
472
|
+
```python
|
473
|
+
import pulumi
|
474
|
+
import pulumi_gcp as gcp
|
475
|
+
|
476
|
+
basic = gcp.gkebackup.BackupChannel("basic",
|
477
|
+
name="basic-channel",
|
478
|
+
location="us-central1",
|
479
|
+
description="",
|
480
|
+
destination_project="projects/24240755850",
|
481
|
+
labels={
|
482
|
+
"key": "some-value",
|
483
|
+
})
|
484
|
+
```
|
485
|
+
|
486
|
+
## Import
|
487
|
+
|
488
|
+
BackupChannel can be imported using any of these accepted formats:
|
489
|
+
|
490
|
+
* `projects/{{project}}/locations/{{location}}/backupChannels/{{name}}`
|
491
|
+
|
492
|
+
* `{{project}}/{{location}}/{{name}}`
|
493
|
+
|
494
|
+
* `{{location}}/{{name}}`
|
495
|
+
|
496
|
+
When using the `pulumi import` command, BackupChannel can be imported using one of the formats above. For example:
|
497
|
+
|
498
|
+
```sh
|
499
|
+
$ pulumi import gcp:gkebackup/backupChannel:BackupChannel default projects/{{project}}/locations/{{location}}/backupChannels/{{name}}
|
500
|
+
```
|
501
|
+
|
502
|
+
```sh
|
503
|
+
$ pulumi import gcp:gkebackup/backupChannel:BackupChannel default {{project}}/{{location}}/{{name}}
|
504
|
+
```
|
505
|
+
|
506
|
+
```sh
|
507
|
+
$ pulumi import gcp:gkebackup/backupChannel:BackupChannel default {{location}}/{{name}}
|
508
|
+
```
|
509
|
+
|
510
|
+
:param str resource_name: The name of the resource.
|
511
|
+
:param BackupChannelArgs args: The arguments to use to populate this resource's properties.
|
512
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
513
|
+
"""
|
514
|
+
...
|
515
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
516
|
+
resource_args, opts = _utilities.get_resource_args_opts(BackupChannelArgs, pulumi.ResourceOptions, *args, **kwargs)
|
517
|
+
if resource_args is not None:
|
518
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
519
|
+
else:
|
520
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
521
|
+
|
522
|
+
def _internal_init(__self__,
|
523
|
+
resource_name: str,
|
524
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
525
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
526
|
+
destination_project: Optional[pulumi.Input[builtins.str]] = None,
|
527
|
+
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
528
|
+
location: Optional[pulumi.Input[builtins.str]] = None,
|
529
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
530
|
+
project: Optional[pulumi.Input[builtins.str]] = None,
|
531
|
+
__props__=None):
|
532
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
533
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
534
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
535
|
+
if opts.id is None:
|
536
|
+
if __props__ is not None:
|
537
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
538
|
+
__props__ = BackupChannelArgs.__new__(BackupChannelArgs)
|
539
|
+
|
540
|
+
__props__.__dict__["description"] = description
|
541
|
+
if destination_project is None and not opts.urn:
|
542
|
+
raise TypeError("Missing required property 'destination_project'")
|
543
|
+
__props__.__dict__["destination_project"] = destination_project
|
544
|
+
__props__.__dict__["labels"] = labels
|
545
|
+
if location is None and not opts.urn:
|
546
|
+
raise TypeError("Missing required property 'location'")
|
547
|
+
__props__.__dict__["location"] = location
|
548
|
+
__props__.__dict__["name"] = name
|
549
|
+
__props__.__dict__["project"] = project
|
550
|
+
__props__.__dict__["destination_project_id"] = None
|
551
|
+
__props__.__dict__["effective_labels"] = None
|
552
|
+
__props__.__dict__["etag"] = None
|
553
|
+
__props__.__dict__["pulumi_labels"] = None
|
554
|
+
__props__.__dict__["uid"] = None
|
555
|
+
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
|
556
|
+
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
557
|
+
super(BackupChannel, __self__).__init__(
|
558
|
+
'gcp:gkebackup/backupChannel:BackupChannel',
|
559
|
+
resource_name,
|
560
|
+
__props__,
|
561
|
+
opts)
|
562
|
+
|
563
|
+
@staticmethod
|
564
|
+
def get(resource_name: str,
|
565
|
+
id: pulumi.Input[str],
|
566
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
567
|
+
description: Optional[pulumi.Input[builtins.str]] = None,
|
568
|
+
destination_project: Optional[pulumi.Input[builtins.str]] = None,
|
569
|
+
destination_project_id: Optional[pulumi.Input[builtins.str]] = None,
|
570
|
+
effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
571
|
+
etag: Optional[pulumi.Input[builtins.str]] = None,
|
572
|
+
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
573
|
+
location: Optional[pulumi.Input[builtins.str]] = None,
|
574
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
575
|
+
project: Optional[pulumi.Input[builtins.str]] = None,
|
576
|
+
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
577
|
+
uid: Optional[pulumi.Input[builtins.str]] = None) -> 'BackupChannel':
|
578
|
+
"""
|
579
|
+
Get an existing BackupChannel resource's state with the given name, id, and optional extra
|
580
|
+
properties used to qualify the lookup.
|
581
|
+
|
582
|
+
:param str resource_name: The unique name of the resulting resource.
|
583
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
584
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
585
|
+
:param pulumi.Input[builtins.str] description: User specified descriptive string for this BackupChannel.
|
586
|
+
:param pulumi.Input[builtins.str] destination_project: The project where Backups are allowed to be stored.
|
587
|
+
The format is `projects/{project}`.
|
588
|
+
{project} can only be a project number.
|
589
|
+
:param pulumi.Input[builtins.str] destination_project_id: The project_id where Backups are allowed to be stored.
|
590
|
+
Example Project ID: "my-project-id".
|
591
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
592
|
+
:param pulumi.Input[builtins.str] etag: etag is used for optimistic concurrency control as a way to help prevent simultaneous
|
593
|
+
updates of a backup channel from overwriting each other. It is strongly suggested that
|
594
|
+
systems make use of the 'etag' in the read-modify-write cycle to perform BackupChannel updates
|
595
|
+
in order to avoid race conditions: An etag is returned in the response to backupChannels.get,
|
596
|
+
and systems are expected to put that etag in the request to backupChannels.patch or
|
597
|
+
backupChannels.delete to ensure that their change will be applied to the same version of the resource.
|
598
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Description: A set of custom labels supplied by the user.
|
599
|
+
A list of key->value pairs.
|
600
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
601
|
+
|
602
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
603
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
604
|
+
:param pulumi.Input[builtins.str] location: The region of the Backup Channel.
|
605
|
+
|
606
|
+
|
607
|
+
- - -
|
608
|
+
:param pulumi.Input[builtins.str] name: The full name of the BackupChannel Resource.
|
609
|
+
:param pulumi.Input[builtins.str] project: The ID of the project in which the resource belongs.
|
610
|
+
If it is not provided, the provider project is used.
|
611
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] pulumi_labels: The combination of labels configured directly on the resource
|
612
|
+
and default labels configured on the provider.
|
613
|
+
:param pulumi.Input[builtins.str] uid: Server generated, unique identifier of UUID format.
|
614
|
+
"""
|
615
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
616
|
+
|
617
|
+
__props__ = _BackupChannelState.__new__(_BackupChannelState)
|
618
|
+
|
619
|
+
__props__.__dict__["description"] = description
|
620
|
+
__props__.__dict__["destination_project"] = destination_project
|
621
|
+
__props__.__dict__["destination_project_id"] = destination_project_id
|
622
|
+
__props__.__dict__["effective_labels"] = effective_labels
|
623
|
+
__props__.__dict__["etag"] = etag
|
624
|
+
__props__.__dict__["labels"] = labels
|
625
|
+
__props__.__dict__["location"] = location
|
626
|
+
__props__.__dict__["name"] = name
|
627
|
+
__props__.__dict__["project"] = project
|
628
|
+
__props__.__dict__["pulumi_labels"] = pulumi_labels
|
629
|
+
__props__.__dict__["uid"] = uid
|
630
|
+
return BackupChannel(resource_name, opts=opts, __props__=__props__)
|
631
|
+
|
632
|
+
@property
|
633
|
+
@pulumi.getter
|
634
|
+
def description(self) -> pulumi.Output[Optional[builtins.str]]:
|
635
|
+
"""
|
636
|
+
User specified descriptive string for this BackupChannel.
|
637
|
+
"""
|
638
|
+
return pulumi.get(self, "description")
|
639
|
+
|
640
|
+
@property
|
641
|
+
@pulumi.getter(name="destinationProject")
|
642
|
+
def destination_project(self) -> pulumi.Output[builtins.str]:
|
643
|
+
"""
|
644
|
+
The project where Backups are allowed to be stored.
|
645
|
+
The format is `projects/{project}`.
|
646
|
+
{project} can only be a project number.
|
647
|
+
"""
|
648
|
+
return pulumi.get(self, "destination_project")
|
649
|
+
|
650
|
+
@property
|
651
|
+
@pulumi.getter(name="destinationProjectId")
|
652
|
+
def destination_project_id(self) -> pulumi.Output[builtins.str]:
|
653
|
+
"""
|
654
|
+
The project_id where Backups are allowed to be stored.
|
655
|
+
Example Project ID: "my-project-id".
|
656
|
+
"""
|
657
|
+
return pulumi.get(self, "destination_project_id")
|
658
|
+
|
659
|
+
@property
|
660
|
+
@pulumi.getter(name="effectiveLabels")
|
661
|
+
def effective_labels(self) -> pulumi.Output[Mapping[str, builtins.str]]:
|
662
|
+
"""
|
663
|
+
All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
664
|
+
"""
|
665
|
+
return pulumi.get(self, "effective_labels")
|
666
|
+
|
667
|
+
@property
|
668
|
+
@pulumi.getter
|
669
|
+
def etag(self) -> pulumi.Output[builtins.str]:
|
670
|
+
"""
|
671
|
+
etag is used for optimistic concurrency control as a way to help prevent simultaneous
|
672
|
+
updates of a backup channel from overwriting each other. It is strongly suggested that
|
673
|
+
systems make use of the 'etag' in the read-modify-write cycle to perform BackupChannel updates
|
674
|
+
in order to avoid race conditions: An etag is returned in the response to backupChannels.get,
|
675
|
+
and systems are expected to put that etag in the request to backupChannels.patch or
|
676
|
+
backupChannels.delete to ensure that their change will be applied to the same version of the resource.
|
677
|
+
"""
|
678
|
+
return pulumi.get(self, "etag")
|
679
|
+
|
680
|
+
@property
|
681
|
+
@pulumi.getter
|
682
|
+
def labels(self) -> pulumi.Output[Optional[Mapping[str, builtins.str]]]:
|
683
|
+
"""
|
684
|
+
Description: A set of custom labels supplied by the user.
|
685
|
+
A list of key->value pairs.
|
686
|
+
Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
|
687
|
+
|
688
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
689
|
+
Please refer to the field `effective_labels` for all of the labels present on the resource.
|
690
|
+
"""
|
691
|
+
return pulumi.get(self, "labels")
|
692
|
+
|
693
|
+
@property
|
694
|
+
@pulumi.getter
|
695
|
+
def location(self) -> pulumi.Output[builtins.str]:
|
696
|
+
"""
|
697
|
+
The region of the Backup Channel.
|
698
|
+
|
699
|
+
|
700
|
+
- - -
|
701
|
+
"""
|
702
|
+
return pulumi.get(self, "location")
|
703
|
+
|
704
|
+
@property
|
705
|
+
@pulumi.getter
|
706
|
+
def name(self) -> pulumi.Output[builtins.str]:
|
707
|
+
"""
|
708
|
+
The full name of the BackupChannel Resource.
|
709
|
+
"""
|
710
|
+
return pulumi.get(self, "name")
|
711
|
+
|
712
|
+
@property
|
713
|
+
@pulumi.getter
|
714
|
+
def project(self) -> pulumi.Output[builtins.str]:
|
715
|
+
"""
|
716
|
+
The ID of the project in which the resource belongs.
|
717
|
+
If it is not provided, the provider project is used.
|
718
|
+
"""
|
719
|
+
return pulumi.get(self, "project")
|
720
|
+
|
721
|
+
@property
|
722
|
+
@pulumi.getter(name="pulumiLabels")
|
723
|
+
def pulumi_labels(self) -> pulumi.Output[Mapping[str, builtins.str]]:
|
724
|
+
"""
|
725
|
+
The combination of labels configured directly on the resource
|
726
|
+
and default labels configured on the provider.
|
727
|
+
"""
|
728
|
+
return pulumi.get(self, "pulumi_labels")
|
729
|
+
|
730
|
+
@property
|
731
|
+
@pulumi.getter
|
732
|
+
def uid(self) -> pulumi.Output[builtins.str]:
|
733
|
+
"""
|
734
|
+
Server generated, unique identifier of UUID format.
|
735
|
+
"""
|
736
|
+
return pulumi.get(self, "uid")
|
737
|
+
|