pulumi-gcp 8.9.0a1731366299__py3-none-any.whl → 8.9.0a1731480835__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 +64 -0
- pulumi_gcp/activedirectory/domain.py +24 -0
- pulumi_gcp/apigee/__init__.py +1 -0
- pulumi_gcp/apigee/_inputs.py +74 -0
- pulumi_gcp/apigee/api.py +456 -0
- pulumi_gcp/apigee/outputs.py +65 -0
- pulumi_gcp/applicationintegration/auth_config.py +24 -0
- pulumi_gcp/backupdisasterrecovery/__init__.py +4 -0
- pulumi_gcp/backupdisasterrecovery/_inputs.py +533 -0
- pulumi_gcp/backupdisasterrecovery/backup_plan.py +653 -0
- pulumi_gcp/backupdisasterrecovery/backup_plan_association.py +766 -0
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +146 -6
- pulumi_gcp/backupdisasterrecovery/get_backup_plan.py +204 -0
- pulumi_gcp/backupdisasterrecovery/get_backup_plan_association.py +243 -0
- pulumi_gcp/backupdisasterrecovery/outputs.py +702 -0
- pulumi_gcp/bigquery/data_transfer_config.py +24 -0
- pulumi_gcp/cloudrunv2/_inputs.py +46 -0
- pulumi_gcp/cloudrunv2/job.py +0 -2
- pulumi_gcp/cloudrunv2/outputs.py +60 -2
- pulumi_gcp/cloudrunv2/service.py +0 -2
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +2163 -256
- pulumi_gcp/compute/disk.py +7 -7
- pulumi_gcp/compute/firewall_policy_rule.py +108 -54
- pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
- pulumi_gcp/compute/health_check.py +42 -42
- pulumi_gcp/compute/network_firewall_policy_rule.py +4 -4
- pulumi_gcp/compute/network_firewall_policy_with_rules.py +10 -10
- pulumi_gcp/compute/node_template.py +95 -0
- pulumi_gcp/compute/outputs.py +1639 -213
- pulumi_gcp/compute/region_disk.py +7 -7
- pulumi_gcp/compute/region_health_check.py +42 -42
- pulumi_gcp/compute/region_instance_group_manager.py +54 -14
- pulumi_gcp/compute/region_network_firewall_policy_rule.py +4 -4
- pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +10 -10
- pulumi_gcp/compute/region_resize_request.py +772 -0
- pulumi_gcp/compute/region_security_policy.py +120 -0
- pulumi_gcp/compute/region_security_policy_rule.py +6 -6
- pulumi_gcp/compute/router_peer.py +56 -35
- pulumi_gcp/compute/security_scan_config.py +8 -8
- pulumi_gcp/config/__init__.pyi +4 -0
- pulumi_gcp/config/vars.py +8 -0
- pulumi_gcp/container/_inputs.py +345 -10
- pulumi_gcp/container/cluster.py +101 -0
- pulumi_gcp/container/get_cluster.py +23 -1
- pulumi_gcp/container/outputs.py +456 -8
- pulumi_gcp/dataloss/prevention_discovery_config.py +7 -7
- pulumi_gcp/dataproc/__init__.py +2 -0
- pulumi_gcp/dataproc/_inputs.py +101 -0
- pulumi_gcp/dataproc/gdc_application_environment.py +931 -0
- pulumi_gcp/dataproc/gdc_service_instance.py +1022 -0
- pulumi_gcp/dataproc/outputs.py +94 -0
- pulumi_gcp/edgecontainer/vpn_connection.py +4 -4
- pulumi_gcp/firebase/android_app.py +2 -2
- pulumi_gcp/firebase/apple_app.py +2 -2
- pulumi_gcp/firebase/web_app.py +2 -2
- pulumi_gcp/firestore/index.py +44 -0
- pulumi_gcp/gkeonprem/_inputs.py +15 -15
- pulumi_gcp/gkeonprem/outputs.py +10 -10
- pulumi_gcp/healthcare/dataset.py +7 -7
- pulumi_gcp/healthcare/dicom_store.py +7 -7
- pulumi_gcp/healthcare/fhir_store.py +7 -7
- pulumi_gcp/healthcare/hl7_store.py +14 -14
- pulumi_gcp/iam/__init__.py +1 -0
- pulumi_gcp/iam/_inputs.py +161 -0
- pulumi_gcp/iam/outputs.py +114 -0
- pulumi_gcp/iam/principal_access_boundary_policy.py +679 -0
- pulumi_gcp/logging/metric.py +2 -2
- pulumi_gcp/looker/_inputs.py +6 -0
- pulumi_gcp/looker/instance.py +169 -321
- pulumi_gcp/looker/outputs.py +4 -0
- pulumi_gcp/memorystore/instance.py +4 -0
- pulumi_gcp/monitoring/alert_policy.py +24 -0
- pulumi_gcp/monitoring/custom_service.py +24 -0
- pulumi_gcp/monitoring/group.py +24 -0
- pulumi_gcp/monitoring/metric_descriptor.py +24 -0
- pulumi_gcp/monitoring/slo.py +24 -0
- pulumi_gcp/monitoring/uptime_check_config.py +24 -0
- pulumi_gcp/networkmanagement/__init__.py +1 -0
- pulumi_gcp/networkmanagement/vpc_flow_logs_config.py +1358 -0
- pulumi_gcp/osconfig/patch_deployment.py +8 -8
- pulumi_gcp/provider.py +40 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/_inputs.py +3 -3
- pulumi_gcp/redis/outputs.py +2 -2
- pulumi_gcp/securitycenter/notification_config.py +4 -16
- pulumi_gcp/securitycenter/project_notification_config.py +0 -24
- pulumi_gcp/securitycenter/v2_organization_notification_config.py +4 -16
- pulumi_gcp/spanner/__init__.py +1 -0
- pulumi_gcp/spanner/_inputs.py +9 -9
- pulumi_gcp/spanner/get_database.py +229 -0
- pulumi_gcp/spanner/get_instance.py +12 -1
- pulumi_gcp/spanner/instance.py +70 -0
- pulumi_gcp/spanner/outputs.py +46 -12
- pulumi_gcp/sql/_inputs.py +26 -0
- pulumi_gcp/sql/database_instance.py +124 -11
- pulumi_gcp/sql/get_database_instance.py +12 -1
- pulumi_gcp/sql/outputs.py +51 -0
- pulumi_gcp/storage/_inputs.py +3 -3
- pulumi_gcp/storage/outputs.py +2 -2
- pulumi_gcp/tags/tag_binding.py +4 -4
- pulumi_gcp/tags/tag_value.py +2 -2
- pulumi_gcp/transcoder/job.py +24 -0
- pulumi_gcp/vertex/_inputs.py +184 -0
- pulumi_gcp/vertex/ai_endpoint.py +394 -8
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- pulumi_gcp/vertex/outputs.py +166 -0
- pulumi_gcp/workbench/instance.py +21 -7
- pulumi_gcp/workflows/workflow.py +36 -0
- pulumi_gcp/workstations/workstation_config.py +8 -8
- {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/RECORD +114 -103
- {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.9.0a1731366299.dist-info → pulumi_gcp-8.9.0a1731480835.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,766 @@
|
|
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 sys
|
8
|
+
import pulumi
|
9
|
+
import pulumi.runtime
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
11
|
+
if sys.version_info >= (3, 11):
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
13
|
+
else:
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
15
|
+
from .. import _utilities
|
16
|
+
from . import outputs
|
17
|
+
from ._inputs import *
|
18
|
+
|
19
|
+
__all__ = ['BackupPlanAssociationArgs', 'BackupPlanAssociation']
|
20
|
+
|
21
|
+
@pulumi.input_type
|
22
|
+
class BackupPlanAssociationArgs:
|
23
|
+
def __init__(__self__, *,
|
24
|
+
backup_plan: pulumi.Input[str],
|
25
|
+
backup_plan_association_id: pulumi.Input[str],
|
26
|
+
location: pulumi.Input[str],
|
27
|
+
resource: pulumi.Input[str],
|
28
|
+
resource_type: pulumi.Input[str],
|
29
|
+
project: Optional[pulumi.Input[str]] = None):
|
30
|
+
"""
|
31
|
+
The set of arguments for constructing a BackupPlanAssociation resource.
|
32
|
+
:param pulumi.Input[str] backup_plan: The BP with which resource needs to be created
|
33
|
+
:param pulumi.Input[str] backup_plan_association_id: The id of backupplan association
|
34
|
+
|
35
|
+
|
36
|
+
- - -
|
37
|
+
:param pulumi.Input[str] location: The location for the backupplan association
|
38
|
+
:param pulumi.Input[str] resource: The resource for which BPA needs to be created
|
39
|
+
:param pulumi.Input[str] resource_type: The resource type of workload on which backupplan is applied
|
40
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
41
|
+
If it is not provided, the provider project is used.
|
42
|
+
"""
|
43
|
+
pulumi.set(__self__, "backup_plan", backup_plan)
|
44
|
+
pulumi.set(__self__, "backup_plan_association_id", backup_plan_association_id)
|
45
|
+
pulumi.set(__self__, "location", location)
|
46
|
+
pulumi.set(__self__, "resource", resource)
|
47
|
+
pulumi.set(__self__, "resource_type", resource_type)
|
48
|
+
if project is not None:
|
49
|
+
pulumi.set(__self__, "project", project)
|
50
|
+
|
51
|
+
@property
|
52
|
+
@pulumi.getter(name="backupPlan")
|
53
|
+
def backup_plan(self) -> pulumi.Input[str]:
|
54
|
+
"""
|
55
|
+
The BP with which resource needs to be created
|
56
|
+
"""
|
57
|
+
return pulumi.get(self, "backup_plan")
|
58
|
+
|
59
|
+
@backup_plan.setter
|
60
|
+
def backup_plan(self, value: pulumi.Input[str]):
|
61
|
+
pulumi.set(self, "backup_plan", value)
|
62
|
+
|
63
|
+
@property
|
64
|
+
@pulumi.getter(name="backupPlanAssociationId")
|
65
|
+
def backup_plan_association_id(self) -> pulumi.Input[str]:
|
66
|
+
"""
|
67
|
+
The id of backupplan association
|
68
|
+
|
69
|
+
|
70
|
+
- - -
|
71
|
+
"""
|
72
|
+
return pulumi.get(self, "backup_plan_association_id")
|
73
|
+
|
74
|
+
@backup_plan_association_id.setter
|
75
|
+
def backup_plan_association_id(self, value: pulumi.Input[str]):
|
76
|
+
pulumi.set(self, "backup_plan_association_id", value)
|
77
|
+
|
78
|
+
@property
|
79
|
+
@pulumi.getter
|
80
|
+
def location(self) -> pulumi.Input[str]:
|
81
|
+
"""
|
82
|
+
The location for the backupplan association
|
83
|
+
"""
|
84
|
+
return pulumi.get(self, "location")
|
85
|
+
|
86
|
+
@location.setter
|
87
|
+
def location(self, value: pulumi.Input[str]):
|
88
|
+
pulumi.set(self, "location", value)
|
89
|
+
|
90
|
+
@property
|
91
|
+
@pulumi.getter
|
92
|
+
def resource(self) -> pulumi.Input[str]:
|
93
|
+
"""
|
94
|
+
The resource for which BPA needs to be created
|
95
|
+
"""
|
96
|
+
return pulumi.get(self, "resource")
|
97
|
+
|
98
|
+
@resource.setter
|
99
|
+
def resource(self, value: pulumi.Input[str]):
|
100
|
+
pulumi.set(self, "resource", value)
|
101
|
+
|
102
|
+
@property
|
103
|
+
@pulumi.getter(name="resourceType")
|
104
|
+
def resource_type(self) -> pulumi.Input[str]:
|
105
|
+
"""
|
106
|
+
The resource type of workload on which backupplan is applied
|
107
|
+
"""
|
108
|
+
return pulumi.get(self, "resource_type")
|
109
|
+
|
110
|
+
@resource_type.setter
|
111
|
+
def resource_type(self, value: pulumi.Input[str]):
|
112
|
+
pulumi.set(self, "resource_type", value)
|
113
|
+
|
114
|
+
@property
|
115
|
+
@pulumi.getter
|
116
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
117
|
+
"""
|
118
|
+
The ID of the project in which the resource belongs.
|
119
|
+
If it is not provided, the provider project is used.
|
120
|
+
"""
|
121
|
+
return pulumi.get(self, "project")
|
122
|
+
|
123
|
+
@project.setter
|
124
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
125
|
+
pulumi.set(self, "project", value)
|
126
|
+
|
127
|
+
|
128
|
+
@pulumi.input_type
|
129
|
+
class _BackupPlanAssociationState:
|
130
|
+
def __init__(__self__, *,
|
131
|
+
backup_plan: Optional[pulumi.Input[str]] = None,
|
132
|
+
backup_plan_association_id: Optional[pulumi.Input[str]] = None,
|
133
|
+
create_time: Optional[pulumi.Input[str]] = None,
|
134
|
+
data_source: Optional[pulumi.Input[str]] = None,
|
135
|
+
last_successful_backup_consistency_time: Optional[pulumi.Input[str]] = None,
|
136
|
+
location: Optional[pulumi.Input[str]] = None,
|
137
|
+
name: Optional[pulumi.Input[str]] = None,
|
138
|
+
project: Optional[pulumi.Input[str]] = None,
|
139
|
+
resource: Optional[pulumi.Input[str]] = None,
|
140
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
141
|
+
rules_config_infos: Optional[pulumi.Input[Sequence[pulumi.Input['BackupPlanAssociationRulesConfigInfoArgs']]]] = None,
|
142
|
+
update_time: Optional[pulumi.Input[str]] = None):
|
143
|
+
"""
|
144
|
+
Input properties used for looking up and filtering BackupPlanAssociation resources.
|
145
|
+
:param pulumi.Input[str] backup_plan: The BP with which resource needs to be created
|
146
|
+
:param pulumi.Input[str] backup_plan_association_id: The id of backupplan association
|
147
|
+
|
148
|
+
|
149
|
+
- - -
|
150
|
+
:param pulumi.Input[str] create_time: The time when the instance was created
|
151
|
+
:param pulumi.Input[str] data_source: Resource name of data source which will be used as storage location for backups taken
|
152
|
+
:param pulumi.Input[str] last_successful_backup_consistency_time: The point in time when the last successful backup was captured from the source
|
153
|
+
:param pulumi.Input[str] location: The location for the backupplan association
|
154
|
+
:param pulumi.Input[str] name: The name of backup plan association resource created
|
155
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
156
|
+
If it is not provided, the provider project is used.
|
157
|
+
:param pulumi.Input[str] resource: The resource for which BPA needs to be created
|
158
|
+
:param pulumi.Input[str] resource_type: The resource type of workload on which backupplan is applied
|
159
|
+
:param pulumi.Input[Sequence[pulumi.Input['BackupPlanAssociationRulesConfigInfoArgs']]] rules_config_infos: Message for rules config info
|
160
|
+
Structure is documented below.
|
161
|
+
:param pulumi.Input[str] update_time: The time when the instance was updated.
|
162
|
+
"""
|
163
|
+
if backup_plan is not None:
|
164
|
+
pulumi.set(__self__, "backup_plan", backup_plan)
|
165
|
+
if backup_plan_association_id is not None:
|
166
|
+
pulumi.set(__self__, "backup_plan_association_id", backup_plan_association_id)
|
167
|
+
if create_time is not None:
|
168
|
+
pulumi.set(__self__, "create_time", create_time)
|
169
|
+
if data_source is not None:
|
170
|
+
pulumi.set(__self__, "data_source", data_source)
|
171
|
+
if last_successful_backup_consistency_time is not None:
|
172
|
+
pulumi.set(__self__, "last_successful_backup_consistency_time", last_successful_backup_consistency_time)
|
173
|
+
if location is not None:
|
174
|
+
pulumi.set(__self__, "location", location)
|
175
|
+
if name is not None:
|
176
|
+
pulumi.set(__self__, "name", name)
|
177
|
+
if project is not None:
|
178
|
+
pulumi.set(__self__, "project", project)
|
179
|
+
if resource is not None:
|
180
|
+
pulumi.set(__self__, "resource", resource)
|
181
|
+
if resource_type is not None:
|
182
|
+
pulumi.set(__self__, "resource_type", resource_type)
|
183
|
+
if rules_config_infos is not None:
|
184
|
+
pulumi.set(__self__, "rules_config_infos", rules_config_infos)
|
185
|
+
if update_time is not None:
|
186
|
+
pulumi.set(__self__, "update_time", update_time)
|
187
|
+
|
188
|
+
@property
|
189
|
+
@pulumi.getter(name="backupPlan")
|
190
|
+
def backup_plan(self) -> Optional[pulumi.Input[str]]:
|
191
|
+
"""
|
192
|
+
The BP with which resource needs to be created
|
193
|
+
"""
|
194
|
+
return pulumi.get(self, "backup_plan")
|
195
|
+
|
196
|
+
@backup_plan.setter
|
197
|
+
def backup_plan(self, value: Optional[pulumi.Input[str]]):
|
198
|
+
pulumi.set(self, "backup_plan", value)
|
199
|
+
|
200
|
+
@property
|
201
|
+
@pulumi.getter(name="backupPlanAssociationId")
|
202
|
+
def backup_plan_association_id(self) -> Optional[pulumi.Input[str]]:
|
203
|
+
"""
|
204
|
+
The id of backupplan association
|
205
|
+
|
206
|
+
|
207
|
+
- - -
|
208
|
+
"""
|
209
|
+
return pulumi.get(self, "backup_plan_association_id")
|
210
|
+
|
211
|
+
@backup_plan_association_id.setter
|
212
|
+
def backup_plan_association_id(self, value: Optional[pulumi.Input[str]]):
|
213
|
+
pulumi.set(self, "backup_plan_association_id", value)
|
214
|
+
|
215
|
+
@property
|
216
|
+
@pulumi.getter(name="createTime")
|
217
|
+
def create_time(self) -> Optional[pulumi.Input[str]]:
|
218
|
+
"""
|
219
|
+
The time when the instance was created
|
220
|
+
"""
|
221
|
+
return pulumi.get(self, "create_time")
|
222
|
+
|
223
|
+
@create_time.setter
|
224
|
+
def create_time(self, value: Optional[pulumi.Input[str]]):
|
225
|
+
pulumi.set(self, "create_time", value)
|
226
|
+
|
227
|
+
@property
|
228
|
+
@pulumi.getter(name="dataSource")
|
229
|
+
def data_source(self) -> Optional[pulumi.Input[str]]:
|
230
|
+
"""
|
231
|
+
Resource name of data source which will be used as storage location for backups taken
|
232
|
+
"""
|
233
|
+
return pulumi.get(self, "data_source")
|
234
|
+
|
235
|
+
@data_source.setter
|
236
|
+
def data_source(self, value: Optional[pulumi.Input[str]]):
|
237
|
+
pulumi.set(self, "data_source", value)
|
238
|
+
|
239
|
+
@property
|
240
|
+
@pulumi.getter(name="lastSuccessfulBackupConsistencyTime")
|
241
|
+
def last_successful_backup_consistency_time(self) -> Optional[pulumi.Input[str]]:
|
242
|
+
"""
|
243
|
+
The point in time when the last successful backup was captured from the source
|
244
|
+
"""
|
245
|
+
return pulumi.get(self, "last_successful_backup_consistency_time")
|
246
|
+
|
247
|
+
@last_successful_backup_consistency_time.setter
|
248
|
+
def last_successful_backup_consistency_time(self, value: Optional[pulumi.Input[str]]):
|
249
|
+
pulumi.set(self, "last_successful_backup_consistency_time", value)
|
250
|
+
|
251
|
+
@property
|
252
|
+
@pulumi.getter
|
253
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
254
|
+
"""
|
255
|
+
The location for the backupplan association
|
256
|
+
"""
|
257
|
+
return pulumi.get(self, "location")
|
258
|
+
|
259
|
+
@location.setter
|
260
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
261
|
+
pulumi.set(self, "location", value)
|
262
|
+
|
263
|
+
@property
|
264
|
+
@pulumi.getter
|
265
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
266
|
+
"""
|
267
|
+
The name of backup plan association resource created
|
268
|
+
"""
|
269
|
+
return pulumi.get(self, "name")
|
270
|
+
|
271
|
+
@name.setter
|
272
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
273
|
+
pulumi.set(self, "name", value)
|
274
|
+
|
275
|
+
@property
|
276
|
+
@pulumi.getter
|
277
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
278
|
+
"""
|
279
|
+
The ID of the project in which the resource belongs.
|
280
|
+
If it is not provided, the provider project is used.
|
281
|
+
"""
|
282
|
+
return pulumi.get(self, "project")
|
283
|
+
|
284
|
+
@project.setter
|
285
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
286
|
+
pulumi.set(self, "project", value)
|
287
|
+
|
288
|
+
@property
|
289
|
+
@pulumi.getter
|
290
|
+
def resource(self) -> Optional[pulumi.Input[str]]:
|
291
|
+
"""
|
292
|
+
The resource for which BPA needs to be created
|
293
|
+
"""
|
294
|
+
return pulumi.get(self, "resource")
|
295
|
+
|
296
|
+
@resource.setter
|
297
|
+
def resource(self, value: Optional[pulumi.Input[str]]):
|
298
|
+
pulumi.set(self, "resource", value)
|
299
|
+
|
300
|
+
@property
|
301
|
+
@pulumi.getter(name="resourceType")
|
302
|
+
def resource_type(self) -> Optional[pulumi.Input[str]]:
|
303
|
+
"""
|
304
|
+
The resource type of workload on which backupplan is applied
|
305
|
+
"""
|
306
|
+
return pulumi.get(self, "resource_type")
|
307
|
+
|
308
|
+
@resource_type.setter
|
309
|
+
def resource_type(self, value: Optional[pulumi.Input[str]]):
|
310
|
+
pulumi.set(self, "resource_type", value)
|
311
|
+
|
312
|
+
@property
|
313
|
+
@pulumi.getter(name="rulesConfigInfos")
|
314
|
+
def rules_config_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BackupPlanAssociationRulesConfigInfoArgs']]]]:
|
315
|
+
"""
|
316
|
+
Message for rules config info
|
317
|
+
Structure is documented below.
|
318
|
+
"""
|
319
|
+
return pulumi.get(self, "rules_config_infos")
|
320
|
+
|
321
|
+
@rules_config_infos.setter
|
322
|
+
def rules_config_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['BackupPlanAssociationRulesConfigInfoArgs']]]]):
|
323
|
+
pulumi.set(self, "rules_config_infos", value)
|
324
|
+
|
325
|
+
@property
|
326
|
+
@pulumi.getter(name="updateTime")
|
327
|
+
def update_time(self) -> Optional[pulumi.Input[str]]:
|
328
|
+
"""
|
329
|
+
The time when the instance was updated.
|
330
|
+
"""
|
331
|
+
return pulumi.get(self, "update_time")
|
332
|
+
|
333
|
+
@update_time.setter
|
334
|
+
def update_time(self, value: Optional[pulumi.Input[str]]):
|
335
|
+
pulumi.set(self, "update_time", value)
|
336
|
+
|
337
|
+
|
338
|
+
class BackupPlanAssociation(pulumi.CustomResource):
|
339
|
+
@overload
|
340
|
+
def __init__(__self__,
|
341
|
+
resource_name: str,
|
342
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
343
|
+
backup_plan: Optional[pulumi.Input[str]] = None,
|
344
|
+
backup_plan_association_id: Optional[pulumi.Input[str]] = None,
|
345
|
+
location: Optional[pulumi.Input[str]] = None,
|
346
|
+
project: Optional[pulumi.Input[str]] = None,
|
347
|
+
resource: Optional[pulumi.Input[str]] = None,
|
348
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
349
|
+
__props__=None):
|
350
|
+
"""
|
351
|
+
## Example Usage
|
352
|
+
|
353
|
+
### Backup Dr Bpa
|
354
|
+
|
355
|
+
```python
|
356
|
+
import pulumi
|
357
|
+
import pulumi_gcp as gcp
|
358
|
+
|
359
|
+
my_sa = gcp.serviceaccount.Account("mySA",
|
360
|
+
account_id="my-custom",
|
361
|
+
display_name="Custom SA for VM Instance")
|
362
|
+
myinstance = gcp.compute.Instance("myinstance",
|
363
|
+
network_interfaces=[{
|
364
|
+
"access_configs": [{}],
|
365
|
+
"network": "default",
|
366
|
+
}],
|
367
|
+
name="test-instance",
|
368
|
+
machine_type="n2-standard-2",
|
369
|
+
zone="us-central1-a",
|
370
|
+
boot_disk={
|
371
|
+
"initialize_params": {
|
372
|
+
"image": "debian-cloud/debian-11",
|
373
|
+
"labels": {
|
374
|
+
"my_label": "value",
|
375
|
+
},
|
376
|
+
},
|
377
|
+
},
|
378
|
+
scratch_disks=[{
|
379
|
+
"interface": "NVME",
|
380
|
+
}],
|
381
|
+
service_account={
|
382
|
+
"email": my_sa.email,
|
383
|
+
"scopes": ["cloud-platform"],
|
384
|
+
})
|
385
|
+
bv1 = gcp.backupdisasterrecovery.BackupVault("bv1",
|
386
|
+
location="us-central1",
|
387
|
+
backup_vault_id="bv-bpa",
|
388
|
+
backup_minimum_enforced_retention_duration="100000s",
|
389
|
+
force_delete=True)
|
390
|
+
bp1 = gcp.backupdisasterrecovery.BackupPlan("bp1",
|
391
|
+
location="us-central1",
|
392
|
+
backup_plan_id="bp-bpa-test",
|
393
|
+
resource_type="compute.googleapis.com/Instance",
|
394
|
+
backup_vault=bv1.id,
|
395
|
+
backup_rules=[{
|
396
|
+
"rule_id": "rule-1",
|
397
|
+
"backup_retention_days": 2,
|
398
|
+
"standard_schedule": {
|
399
|
+
"recurrence_type": "HOURLY",
|
400
|
+
"hourly_frequency": 6,
|
401
|
+
"time_zone": "UTC",
|
402
|
+
"backup_window": {
|
403
|
+
"start_hour_of_day": 12,
|
404
|
+
"end_hour_of_day": 18,
|
405
|
+
},
|
406
|
+
},
|
407
|
+
}])
|
408
|
+
my_backup_plan_association = gcp.backupdisasterrecovery.BackupPlanAssociation("my-backup-plan-association",
|
409
|
+
location="us-central1",
|
410
|
+
resource_type="compute.googleapis.com/Instance",
|
411
|
+
backup_plan_association_id="my-bpa",
|
412
|
+
resource=myinstance.id,
|
413
|
+
backup_plan=bp1.name)
|
414
|
+
```
|
415
|
+
|
416
|
+
## Import
|
417
|
+
|
418
|
+
BackupPlanAssociation can be imported using any of these accepted formats:
|
419
|
+
|
420
|
+
* `projects/{{project}}/locations/{{location}}/backupPlanAssociations/{{backup_plan_association_id}}`
|
421
|
+
|
422
|
+
* `{{project}}/{{location}}/{{backup_plan_association_id}}`
|
423
|
+
|
424
|
+
* `{{location}}/{{backup_plan_association_id}}`
|
425
|
+
|
426
|
+
When using the `pulumi import` command, BackupPlanAssociation can be imported using one of the formats above. For example:
|
427
|
+
|
428
|
+
```sh
|
429
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation default projects/{{project}}/locations/{{location}}/backupPlanAssociations/{{backup_plan_association_id}}
|
430
|
+
```
|
431
|
+
|
432
|
+
```sh
|
433
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation default {{project}}/{{location}}/{{backup_plan_association_id}}
|
434
|
+
```
|
435
|
+
|
436
|
+
```sh
|
437
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation default {{location}}/{{backup_plan_association_id}}
|
438
|
+
```
|
439
|
+
|
440
|
+
:param str resource_name: The name of the resource.
|
441
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
442
|
+
:param pulumi.Input[str] backup_plan: The BP with which resource needs to be created
|
443
|
+
:param pulumi.Input[str] backup_plan_association_id: The id of backupplan association
|
444
|
+
|
445
|
+
|
446
|
+
- - -
|
447
|
+
:param pulumi.Input[str] location: The location for the backupplan association
|
448
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
449
|
+
If it is not provided, the provider project is used.
|
450
|
+
:param pulumi.Input[str] resource: The resource for which BPA needs to be created
|
451
|
+
:param pulumi.Input[str] resource_type: The resource type of workload on which backupplan is applied
|
452
|
+
"""
|
453
|
+
...
|
454
|
+
@overload
|
455
|
+
def __init__(__self__,
|
456
|
+
resource_name: str,
|
457
|
+
args: BackupPlanAssociationArgs,
|
458
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
459
|
+
"""
|
460
|
+
## Example Usage
|
461
|
+
|
462
|
+
### Backup Dr Bpa
|
463
|
+
|
464
|
+
```python
|
465
|
+
import pulumi
|
466
|
+
import pulumi_gcp as gcp
|
467
|
+
|
468
|
+
my_sa = gcp.serviceaccount.Account("mySA",
|
469
|
+
account_id="my-custom",
|
470
|
+
display_name="Custom SA for VM Instance")
|
471
|
+
myinstance = gcp.compute.Instance("myinstance",
|
472
|
+
network_interfaces=[{
|
473
|
+
"access_configs": [{}],
|
474
|
+
"network": "default",
|
475
|
+
}],
|
476
|
+
name="test-instance",
|
477
|
+
machine_type="n2-standard-2",
|
478
|
+
zone="us-central1-a",
|
479
|
+
boot_disk={
|
480
|
+
"initialize_params": {
|
481
|
+
"image": "debian-cloud/debian-11",
|
482
|
+
"labels": {
|
483
|
+
"my_label": "value",
|
484
|
+
},
|
485
|
+
},
|
486
|
+
},
|
487
|
+
scratch_disks=[{
|
488
|
+
"interface": "NVME",
|
489
|
+
}],
|
490
|
+
service_account={
|
491
|
+
"email": my_sa.email,
|
492
|
+
"scopes": ["cloud-platform"],
|
493
|
+
})
|
494
|
+
bv1 = gcp.backupdisasterrecovery.BackupVault("bv1",
|
495
|
+
location="us-central1",
|
496
|
+
backup_vault_id="bv-bpa",
|
497
|
+
backup_minimum_enforced_retention_duration="100000s",
|
498
|
+
force_delete=True)
|
499
|
+
bp1 = gcp.backupdisasterrecovery.BackupPlan("bp1",
|
500
|
+
location="us-central1",
|
501
|
+
backup_plan_id="bp-bpa-test",
|
502
|
+
resource_type="compute.googleapis.com/Instance",
|
503
|
+
backup_vault=bv1.id,
|
504
|
+
backup_rules=[{
|
505
|
+
"rule_id": "rule-1",
|
506
|
+
"backup_retention_days": 2,
|
507
|
+
"standard_schedule": {
|
508
|
+
"recurrence_type": "HOURLY",
|
509
|
+
"hourly_frequency": 6,
|
510
|
+
"time_zone": "UTC",
|
511
|
+
"backup_window": {
|
512
|
+
"start_hour_of_day": 12,
|
513
|
+
"end_hour_of_day": 18,
|
514
|
+
},
|
515
|
+
},
|
516
|
+
}])
|
517
|
+
my_backup_plan_association = gcp.backupdisasterrecovery.BackupPlanAssociation("my-backup-plan-association",
|
518
|
+
location="us-central1",
|
519
|
+
resource_type="compute.googleapis.com/Instance",
|
520
|
+
backup_plan_association_id="my-bpa",
|
521
|
+
resource=myinstance.id,
|
522
|
+
backup_plan=bp1.name)
|
523
|
+
```
|
524
|
+
|
525
|
+
## Import
|
526
|
+
|
527
|
+
BackupPlanAssociation can be imported using any of these accepted formats:
|
528
|
+
|
529
|
+
* `projects/{{project}}/locations/{{location}}/backupPlanAssociations/{{backup_plan_association_id}}`
|
530
|
+
|
531
|
+
* `{{project}}/{{location}}/{{backup_plan_association_id}}`
|
532
|
+
|
533
|
+
* `{{location}}/{{backup_plan_association_id}}`
|
534
|
+
|
535
|
+
When using the `pulumi import` command, BackupPlanAssociation can be imported using one of the formats above. For example:
|
536
|
+
|
537
|
+
```sh
|
538
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation default projects/{{project}}/locations/{{location}}/backupPlanAssociations/{{backup_plan_association_id}}
|
539
|
+
```
|
540
|
+
|
541
|
+
```sh
|
542
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation default {{project}}/{{location}}/{{backup_plan_association_id}}
|
543
|
+
```
|
544
|
+
|
545
|
+
```sh
|
546
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation default {{location}}/{{backup_plan_association_id}}
|
547
|
+
```
|
548
|
+
|
549
|
+
:param str resource_name: The name of the resource.
|
550
|
+
:param BackupPlanAssociationArgs args: The arguments to use to populate this resource's properties.
|
551
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
552
|
+
"""
|
553
|
+
...
|
554
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
555
|
+
resource_args, opts = _utilities.get_resource_args_opts(BackupPlanAssociationArgs, pulumi.ResourceOptions, *args, **kwargs)
|
556
|
+
if resource_args is not None:
|
557
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
558
|
+
else:
|
559
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
560
|
+
|
561
|
+
def _internal_init(__self__,
|
562
|
+
resource_name: str,
|
563
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
564
|
+
backup_plan: Optional[pulumi.Input[str]] = None,
|
565
|
+
backup_plan_association_id: Optional[pulumi.Input[str]] = None,
|
566
|
+
location: Optional[pulumi.Input[str]] = None,
|
567
|
+
project: Optional[pulumi.Input[str]] = None,
|
568
|
+
resource: Optional[pulumi.Input[str]] = None,
|
569
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
570
|
+
__props__=None):
|
571
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
572
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
573
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
574
|
+
if opts.id is None:
|
575
|
+
if __props__ is not None:
|
576
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
577
|
+
__props__ = BackupPlanAssociationArgs.__new__(BackupPlanAssociationArgs)
|
578
|
+
|
579
|
+
if backup_plan is None and not opts.urn:
|
580
|
+
raise TypeError("Missing required property 'backup_plan'")
|
581
|
+
__props__.__dict__["backup_plan"] = backup_plan
|
582
|
+
if backup_plan_association_id is None and not opts.urn:
|
583
|
+
raise TypeError("Missing required property 'backup_plan_association_id'")
|
584
|
+
__props__.__dict__["backup_plan_association_id"] = backup_plan_association_id
|
585
|
+
if location is None and not opts.urn:
|
586
|
+
raise TypeError("Missing required property 'location'")
|
587
|
+
__props__.__dict__["location"] = location
|
588
|
+
__props__.__dict__["project"] = project
|
589
|
+
if resource is None and not opts.urn:
|
590
|
+
raise TypeError("Missing required property 'resource'")
|
591
|
+
__props__.__dict__["resource"] = resource
|
592
|
+
if resource_type is None and not opts.urn:
|
593
|
+
raise TypeError("Missing required property 'resource_type'")
|
594
|
+
__props__.__dict__["resource_type"] = resource_type
|
595
|
+
__props__.__dict__["create_time"] = None
|
596
|
+
__props__.__dict__["data_source"] = None
|
597
|
+
__props__.__dict__["last_successful_backup_consistency_time"] = None
|
598
|
+
__props__.__dict__["name"] = None
|
599
|
+
__props__.__dict__["rules_config_infos"] = None
|
600
|
+
__props__.__dict__["update_time"] = None
|
601
|
+
super(BackupPlanAssociation, __self__).__init__(
|
602
|
+
'gcp:backupdisasterrecovery/backupPlanAssociation:BackupPlanAssociation',
|
603
|
+
resource_name,
|
604
|
+
__props__,
|
605
|
+
opts)
|
606
|
+
|
607
|
+
@staticmethod
|
608
|
+
def get(resource_name: str,
|
609
|
+
id: pulumi.Input[str],
|
610
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
611
|
+
backup_plan: Optional[pulumi.Input[str]] = None,
|
612
|
+
backup_plan_association_id: Optional[pulumi.Input[str]] = None,
|
613
|
+
create_time: Optional[pulumi.Input[str]] = None,
|
614
|
+
data_source: Optional[pulumi.Input[str]] = None,
|
615
|
+
last_successful_backup_consistency_time: Optional[pulumi.Input[str]] = None,
|
616
|
+
location: Optional[pulumi.Input[str]] = None,
|
617
|
+
name: Optional[pulumi.Input[str]] = None,
|
618
|
+
project: Optional[pulumi.Input[str]] = None,
|
619
|
+
resource: Optional[pulumi.Input[str]] = None,
|
620
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
621
|
+
rules_config_infos: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanAssociationRulesConfigInfoArgs', 'BackupPlanAssociationRulesConfigInfoArgsDict']]]]] = None,
|
622
|
+
update_time: Optional[pulumi.Input[str]] = None) -> 'BackupPlanAssociation':
|
623
|
+
"""
|
624
|
+
Get an existing BackupPlanAssociation resource's state with the given name, id, and optional extra
|
625
|
+
properties used to qualify the lookup.
|
626
|
+
|
627
|
+
:param str resource_name: The unique name of the resulting resource.
|
628
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
629
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
630
|
+
:param pulumi.Input[str] backup_plan: The BP with which resource needs to be created
|
631
|
+
:param pulumi.Input[str] backup_plan_association_id: The id of backupplan association
|
632
|
+
|
633
|
+
|
634
|
+
- - -
|
635
|
+
:param pulumi.Input[str] create_time: The time when the instance was created
|
636
|
+
:param pulumi.Input[str] data_source: Resource name of data source which will be used as storage location for backups taken
|
637
|
+
:param pulumi.Input[str] last_successful_backup_consistency_time: The point in time when the last successful backup was captured from the source
|
638
|
+
:param pulumi.Input[str] location: The location for the backupplan association
|
639
|
+
:param pulumi.Input[str] name: The name of backup plan association resource created
|
640
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
641
|
+
If it is not provided, the provider project is used.
|
642
|
+
:param pulumi.Input[str] resource: The resource for which BPA needs to be created
|
643
|
+
:param pulumi.Input[str] resource_type: The resource type of workload on which backupplan is applied
|
644
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanAssociationRulesConfigInfoArgs', 'BackupPlanAssociationRulesConfigInfoArgsDict']]]] rules_config_infos: Message for rules config info
|
645
|
+
Structure is documented below.
|
646
|
+
:param pulumi.Input[str] update_time: The time when the instance was updated.
|
647
|
+
"""
|
648
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
649
|
+
|
650
|
+
__props__ = _BackupPlanAssociationState.__new__(_BackupPlanAssociationState)
|
651
|
+
|
652
|
+
__props__.__dict__["backup_plan"] = backup_plan
|
653
|
+
__props__.__dict__["backup_plan_association_id"] = backup_plan_association_id
|
654
|
+
__props__.__dict__["create_time"] = create_time
|
655
|
+
__props__.__dict__["data_source"] = data_source
|
656
|
+
__props__.__dict__["last_successful_backup_consistency_time"] = last_successful_backup_consistency_time
|
657
|
+
__props__.__dict__["location"] = location
|
658
|
+
__props__.__dict__["name"] = name
|
659
|
+
__props__.__dict__["project"] = project
|
660
|
+
__props__.__dict__["resource"] = resource
|
661
|
+
__props__.__dict__["resource_type"] = resource_type
|
662
|
+
__props__.__dict__["rules_config_infos"] = rules_config_infos
|
663
|
+
__props__.__dict__["update_time"] = update_time
|
664
|
+
return BackupPlanAssociation(resource_name, opts=opts, __props__=__props__)
|
665
|
+
|
666
|
+
@property
|
667
|
+
@pulumi.getter(name="backupPlan")
|
668
|
+
def backup_plan(self) -> pulumi.Output[str]:
|
669
|
+
"""
|
670
|
+
The BP with which resource needs to be created
|
671
|
+
"""
|
672
|
+
return pulumi.get(self, "backup_plan")
|
673
|
+
|
674
|
+
@property
|
675
|
+
@pulumi.getter(name="backupPlanAssociationId")
|
676
|
+
def backup_plan_association_id(self) -> pulumi.Output[str]:
|
677
|
+
"""
|
678
|
+
The id of backupplan association
|
679
|
+
|
680
|
+
|
681
|
+
- - -
|
682
|
+
"""
|
683
|
+
return pulumi.get(self, "backup_plan_association_id")
|
684
|
+
|
685
|
+
@property
|
686
|
+
@pulumi.getter(name="createTime")
|
687
|
+
def create_time(self) -> pulumi.Output[str]:
|
688
|
+
"""
|
689
|
+
The time when the instance was created
|
690
|
+
"""
|
691
|
+
return pulumi.get(self, "create_time")
|
692
|
+
|
693
|
+
@property
|
694
|
+
@pulumi.getter(name="dataSource")
|
695
|
+
def data_source(self) -> pulumi.Output[str]:
|
696
|
+
"""
|
697
|
+
Resource name of data source which will be used as storage location for backups taken
|
698
|
+
"""
|
699
|
+
return pulumi.get(self, "data_source")
|
700
|
+
|
701
|
+
@property
|
702
|
+
@pulumi.getter(name="lastSuccessfulBackupConsistencyTime")
|
703
|
+
def last_successful_backup_consistency_time(self) -> pulumi.Output[str]:
|
704
|
+
"""
|
705
|
+
The point in time when the last successful backup was captured from the source
|
706
|
+
"""
|
707
|
+
return pulumi.get(self, "last_successful_backup_consistency_time")
|
708
|
+
|
709
|
+
@property
|
710
|
+
@pulumi.getter
|
711
|
+
def location(self) -> pulumi.Output[str]:
|
712
|
+
"""
|
713
|
+
The location for the backupplan association
|
714
|
+
"""
|
715
|
+
return pulumi.get(self, "location")
|
716
|
+
|
717
|
+
@property
|
718
|
+
@pulumi.getter
|
719
|
+
def name(self) -> pulumi.Output[str]:
|
720
|
+
"""
|
721
|
+
The name of backup plan association resource created
|
722
|
+
"""
|
723
|
+
return pulumi.get(self, "name")
|
724
|
+
|
725
|
+
@property
|
726
|
+
@pulumi.getter
|
727
|
+
def project(self) -> pulumi.Output[str]:
|
728
|
+
"""
|
729
|
+
The ID of the project in which the resource belongs.
|
730
|
+
If it is not provided, the provider project is used.
|
731
|
+
"""
|
732
|
+
return pulumi.get(self, "project")
|
733
|
+
|
734
|
+
@property
|
735
|
+
@pulumi.getter
|
736
|
+
def resource(self) -> pulumi.Output[str]:
|
737
|
+
"""
|
738
|
+
The resource for which BPA needs to be created
|
739
|
+
"""
|
740
|
+
return pulumi.get(self, "resource")
|
741
|
+
|
742
|
+
@property
|
743
|
+
@pulumi.getter(name="resourceType")
|
744
|
+
def resource_type(self) -> pulumi.Output[str]:
|
745
|
+
"""
|
746
|
+
The resource type of workload on which backupplan is applied
|
747
|
+
"""
|
748
|
+
return pulumi.get(self, "resource_type")
|
749
|
+
|
750
|
+
@property
|
751
|
+
@pulumi.getter(name="rulesConfigInfos")
|
752
|
+
def rules_config_infos(self) -> pulumi.Output[Sequence['outputs.BackupPlanAssociationRulesConfigInfo']]:
|
753
|
+
"""
|
754
|
+
Message for rules config info
|
755
|
+
Structure is documented below.
|
756
|
+
"""
|
757
|
+
return pulumi.get(self, "rules_config_infos")
|
758
|
+
|
759
|
+
@property
|
760
|
+
@pulumi.getter(name="updateTime")
|
761
|
+
def update_time(self) -> pulumi.Output[str]:
|
762
|
+
"""
|
763
|
+
The time when the instance was updated.
|
764
|
+
"""
|
765
|
+
return pulumi.get(self, "update_time")
|
766
|
+
|