pulumi-gcp 8.9.0a1731221331__py3-none-any.whl → 8.9.0a1731432418__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.0a1731221331.dist-info → pulumi_gcp-8.9.0a1731432418.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.9.0a1731221331.dist-info → pulumi_gcp-8.9.0a1731432418.dist-info}/RECORD +114 -103
- {pulumi_gcp-8.9.0a1731221331.dist-info → pulumi_gcp-8.9.0a1731432418.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.9.0a1731221331.dist-info → pulumi_gcp-8.9.0a1731432418.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,653 @@
|
|
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__ = ['BackupPlanArgs', 'BackupPlan']
|
20
|
+
|
21
|
+
@pulumi.input_type
|
22
|
+
class BackupPlanArgs:
|
23
|
+
def __init__(__self__, *,
|
24
|
+
backup_plan_id: pulumi.Input[str],
|
25
|
+
backup_rules: pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]],
|
26
|
+
backup_vault: pulumi.Input[str],
|
27
|
+
location: pulumi.Input[str],
|
28
|
+
resource_type: pulumi.Input[str],
|
29
|
+
description: Optional[pulumi.Input[str]] = None,
|
30
|
+
project: Optional[pulumi.Input[str]] = None):
|
31
|
+
"""
|
32
|
+
The set of arguments for constructing a BackupPlan resource.
|
33
|
+
:param pulumi.Input[str] backup_plan_id: The ID of the backup plan
|
34
|
+
:param pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]] backup_rules: The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
35
|
+
Structure is documented below.
|
36
|
+
:param pulumi.Input[str] backup_vault: Backup vault where the backups gets stored using this Backup plan.
|
37
|
+
:param pulumi.Input[str] location: The location for the backup plan
|
38
|
+
:param pulumi.Input[str] resource_type: The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
39
|
+
:param pulumi.Input[str] description: The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
40
|
+
"""
|
41
|
+
pulumi.set(__self__, "backup_plan_id", backup_plan_id)
|
42
|
+
pulumi.set(__self__, "backup_rules", backup_rules)
|
43
|
+
pulumi.set(__self__, "backup_vault", backup_vault)
|
44
|
+
pulumi.set(__self__, "location", location)
|
45
|
+
pulumi.set(__self__, "resource_type", resource_type)
|
46
|
+
if description is not None:
|
47
|
+
pulumi.set(__self__, "description", description)
|
48
|
+
if project is not None:
|
49
|
+
pulumi.set(__self__, "project", project)
|
50
|
+
|
51
|
+
@property
|
52
|
+
@pulumi.getter(name="backupPlanId")
|
53
|
+
def backup_plan_id(self) -> pulumi.Input[str]:
|
54
|
+
"""
|
55
|
+
The ID of the backup plan
|
56
|
+
"""
|
57
|
+
return pulumi.get(self, "backup_plan_id")
|
58
|
+
|
59
|
+
@backup_plan_id.setter
|
60
|
+
def backup_plan_id(self, value: pulumi.Input[str]):
|
61
|
+
pulumi.set(self, "backup_plan_id", value)
|
62
|
+
|
63
|
+
@property
|
64
|
+
@pulumi.getter(name="backupRules")
|
65
|
+
def backup_rules(self) -> pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]]:
|
66
|
+
"""
|
67
|
+
The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
68
|
+
Structure is documented below.
|
69
|
+
"""
|
70
|
+
return pulumi.get(self, "backup_rules")
|
71
|
+
|
72
|
+
@backup_rules.setter
|
73
|
+
def backup_rules(self, value: pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]]):
|
74
|
+
pulumi.set(self, "backup_rules", value)
|
75
|
+
|
76
|
+
@property
|
77
|
+
@pulumi.getter(name="backupVault")
|
78
|
+
def backup_vault(self) -> pulumi.Input[str]:
|
79
|
+
"""
|
80
|
+
Backup vault where the backups gets stored using this Backup plan.
|
81
|
+
"""
|
82
|
+
return pulumi.get(self, "backup_vault")
|
83
|
+
|
84
|
+
@backup_vault.setter
|
85
|
+
def backup_vault(self, value: pulumi.Input[str]):
|
86
|
+
pulumi.set(self, "backup_vault", value)
|
87
|
+
|
88
|
+
@property
|
89
|
+
@pulumi.getter
|
90
|
+
def location(self) -> pulumi.Input[str]:
|
91
|
+
"""
|
92
|
+
The location for the backup plan
|
93
|
+
"""
|
94
|
+
return pulumi.get(self, "location")
|
95
|
+
|
96
|
+
@location.setter
|
97
|
+
def location(self, value: pulumi.Input[str]):
|
98
|
+
pulumi.set(self, "location", value)
|
99
|
+
|
100
|
+
@property
|
101
|
+
@pulumi.getter(name="resourceType")
|
102
|
+
def resource_type(self) -> pulumi.Input[str]:
|
103
|
+
"""
|
104
|
+
The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
105
|
+
"""
|
106
|
+
return pulumi.get(self, "resource_type")
|
107
|
+
|
108
|
+
@resource_type.setter
|
109
|
+
def resource_type(self, value: pulumi.Input[str]):
|
110
|
+
pulumi.set(self, "resource_type", value)
|
111
|
+
|
112
|
+
@property
|
113
|
+
@pulumi.getter
|
114
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
115
|
+
"""
|
116
|
+
The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
117
|
+
"""
|
118
|
+
return pulumi.get(self, "description")
|
119
|
+
|
120
|
+
@description.setter
|
121
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
122
|
+
pulumi.set(self, "description", value)
|
123
|
+
|
124
|
+
@property
|
125
|
+
@pulumi.getter
|
126
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
127
|
+
return pulumi.get(self, "project")
|
128
|
+
|
129
|
+
@project.setter
|
130
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
131
|
+
pulumi.set(self, "project", value)
|
132
|
+
|
133
|
+
|
134
|
+
@pulumi.input_type
|
135
|
+
class _BackupPlanState:
|
136
|
+
def __init__(__self__, *,
|
137
|
+
backup_plan_id: Optional[pulumi.Input[str]] = None,
|
138
|
+
backup_rules: Optional[pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]]] = None,
|
139
|
+
backup_vault: Optional[pulumi.Input[str]] = None,
|
140
|
+
backup_vault_service_account: Optional[pulumi.Input[str]] = None,
|
141
|
+
create_time: Optional[pulumi.Input[str]] = None,
|
142
|
+
description: Optional[pulumi.Input[str]] = None,
|
143
|
+
location: Optional[pulumi.Input[str]] = None,
|
144
|
+
name: Optional[pulumi.Input[str]] = None,
|
145
|
+
project: Optional[pulumi.Input[str]] = None,
|
146
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
147
|
+
update_time: Optional[pulumi.Input[str]] = None):
|
148
|
+
"""
|
149
|
+
Input properties used for looking up and filtering BackupPlan resources.
|
150
|
+
:param pulumi.Input[str] backup_plan_id: The ID of the backup plan
|
151
|
+
:param pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]] backup_rules: The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
152
|
+
Structure is documented below.
|
153
|
+
:param pulumi.Input[str] backup_vault: Backup vault where the backups gets stored using this Backup plan.
|
154
|
+
:param pulumi.Input[str] backup_vault_service_account: The Google Cloud Platform Service Account to be used by the BackupVault for taking backups.
|
155
|
+
:param pulumi.Input[str] create_time: When the `BackupPlan` was created.
|
156
|
+
:param pulumi.Input[str] description: The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
157
|
+
:param pulumi.Input[str] location: The location for the backup plan
|
158
|
+
:param pulumi.Input[str] name: The name of backup plan resource created
|
159
|
+
:param pulumi.Input[str] resource_type: The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
160
|
+
:param pulumi.Input[str] update_time: When the `BackupPlan` was last updated.
|
161
|
+
"""
|
162
|
+
if backup_plan_id is not None:
|
163
|
+
pulumi.set(__self__, "backup_plan_id", backup_plan_id)
|
164
|
+
if backup_rules is not None:
|
165
|
+
pulumi.set(__self__, "backup_rules", backup_rules)
|
166
|
+
if backup_vault is not None:
|
167
|
+
pulumi.set(__self__, "backup_vault", backup_vault)
|
168
|
+
if backup_vault_service_account is not None:
|
169
|
+
pulumi.set(__self__, "backup_vault_service_account", backup_vault_service_account)
|
170
|
+
if create_time is not None:
|
171
|
+
pulumi.set(__self__, "create_time", create_time)
|
172
|
+
if description is not None:
|
173
|
+
pulumi.set(__self__, "description", description)
|
174
|
+
if location is not None:
|
175
|
+
pulumi.set(__self__, "location", location)
|
176
|
+
if name is not None:
|
177
|
+
pulumi.set(__self__, "name", name)
|
178
|
+
if project is not None:
|
179
|
+
pulumi.set(__self__, "project", project)
|
180
|
+
if resource_type is not None:
|
181
|
+
pulumi.set(__self__, "resource_type", resource_type)
|
182
|
+
if update_time is not None:
|
183
|
+
pulumi.set(__self__, "update_time", update_time)
|
184
|
+
|
185
|
+
@property
|
186
|
+
@pulumi.getter(name="backupPlanId")
|
187
|
+
def backup_plan_id(self) -> Optional[pulumi.Input[str]]:
|
188
|
+
"""
|
189
|
+
The ID of the backup plan
|
190
|
+
"""
|
191
|
+
return pulumi.get(self, "backup_plan_id")
|
192
|
+
|
193
|
+
@backup_plan_id.setter
|
194
|
+
def backup_plan_id(self, value: Optional[pulumi.Input[str]]):
|
195
|
+
pulumi.set(self, "backup_plan_id", value)
|
196
|
+
|
197
|
+
@property
|
198
|
+
@pulumi.getter(name="backupRules")
|
199
|
+
def backup_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]]]:
|
200
|
+
"""
|
201
|
+
The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
202
|
+
Structure is documented below.
|
203
|
+
"""
|
204
|
+
return pulumi.get(self, "backup_rules")
|
205
|
+
|
206
|
+
@backup_rules.setter
|
207
|
+
def backup_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['BackupPlanBackupRuleArgs']]]]):
|
208
|
+
pulumi.set(self, "backup_rules", value)
|
209
|
+
|
210
|
+
@property
|
211
|
+
@pulumi.getter(name="backupVault")
|
212
|
+
def backup_vault(self) -> Optional[pulumi.Input[str]]:
|
213
|
+
"""
|
214
|
+
Backup vault where the backups gets stored using this Backup plan.
|
215
|
+
"""
|
216
|
+
return pulumi.get(self, "backup_vault")
|
217
|
+
|
218
|
+
@backup_vault.setter
|
219
|
+
def backup_vault(self, value: Optional[pulumi.Input[str]]):
|
220
|
+
pulumi.set(self, "backup_vault", value)
|
221
|
+
|
222
|
+
@property
|
223
|
+
@pulumi.getter(name="backupVaultServiceAccount")
|
224
|
+
def backup_vault_service_account(self) -> Optional[pulumi.Input[str]]:
|
225
|
+
"""
|
226
|
+
The Google Cloud Platform Service Account to be used by the BackupVault for taking backups.
|
227
|
+
"""
|
228
|
+
return pulumi.get(self, "backup_vault_service_account")
|
229
|
+
|
230
|
+
@backup_vault_service_account.setter
|
231
|
+
def backup_vault_service_account(self, value: Optional[pulumi.Input[str]]):
|
232
|
+
pulumi.set(self, "backup_vault_service_account", value)
|
233
|
+
|
234
|
+
@property
|
235
|
+
@pulumi.getter(name="createTime")
|
236
|
+
def create_time(self) -> Optional[pulumi.Input[str]]:
|
237
|
+
"""
|
238
|
+
When the `BackupPlan` was created.
|
239
|
+
"""
|
240
|
+
return pulumi.get(self, "create_time")
|
241
|
+
|
242
|
+
@create_time.setter
|
243
|
+
def create_time(self, value: Optional[pulumi.Input[str]]):
|
244
|
+
pulumi.set(self, "create_time", value)
|
245
|
+
|
246
|
+
@property
|
247
|
+
@pulumi.getter
|
248
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
249
|
+
"""
|
250
|
+
The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
251
|
+
"""
|
252
|
+
return pulumi.get(self, "description")
|
253
|
+
|
254
|
+
@description.setter
|
255
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
256
|
+
pulumi.set(self, "description", value)
|
257
|
+
|
258
|
+
@property
|
259
|
+
@pulumi.getter
|
260
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
261
|
+
"""
|
262
|
+
The location for the backup plan
|
263
|
+
"""
|
264
|
+
return pulumi.get(self, "location")
|
265
|
+
|
266
|
+
@location.setter
|
267
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
268
|
+
pulumi.set(self, "location", value)
|
269
|
+
|
270
|
+
@property
|
271
|
+
@pulumi.getter
|
272
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
273
|
+
"""
|
274
|
+
The name of backup plan resource created
|
275
|
+
"""
|
276
|
+
return pulumi.get(self, "name")
|
277
|
+
|
278
|
+
@name.setter
|
279
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
280
|
+
pulumi.set(self, "name", value)
|
281
|
+
|
282
|
+
@property
|
283
|
+
@pulumi.getter
|
284
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
285
|
+
return pulumi.get(self, "project")
|
286
|
+
|
287
|
+
@project.setter
|
288
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
289
|
+
pulumi.set(self, "project", value)
|
290
|
+
|
291
|
+
@property
|
292
|
+
@pulumi.getter(name="resourceType")
|
293
|
+
def resource_type(self) -> Optional[pulumi.Input[str]]:
|
294
|
+
"""
|
295
|
+
The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
296
|
+
"""
|
297
|
+
return pulumi.get(self, "resource_type")
|
298
|
+
|
299
|
+
@resource_type.setter
|
300
|
+
def resource_type(self, value: Optional[pulumi.Input[str]]):
|
301
|
+
pulumi.set(self, "resource_type", value)
|
302
|
+
|
303
|
+
@property
|
304
|
+
@pulumi.getter(name="updateTime")
|
305
|
+
def update_time(self) -> Optional[pulumi.Input[str]]:
|
306
|
+
"""
|
307
|
+
When the `BackupPlan` was last updated.
|
308
|
+
"""
|
309
|
+
return pulumi.get(self, "update_time")
|
310
|
+
|
311
|
+
@update_time.setter
|
312
|
+
def update_time(self, value: Optional[pulumi.Input[str]]):
|
313
|
+
pulumi.set(self, "update_time", value)
|
314
|
+
|
315
|
+
|
316
|
+
class BackupPlan(pulumi.CustomResource):
|
317
|
+
@overload
|
318
|
+
def __init__(__self__,
|
319
|
+
resource_name: str,
|
320
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
321
|
+
backup_plan_id: Optional[pulumi.Input[str]] = None,
|
322
|
+
backup_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanBackupRuleArgs', 'BackupPlanBackupRuleArgsDict']]]]] = None,
|
323
|
+
backup_vault: Optional[pulumi.Input[str]] = None,
|
324
|
+
description: Optional[pulumi.Input[str]] = None,
|
325
|
+
location: Optional[pulumi.Input[str]] = None,
|
326
|
+
project: Optional[pulumi.Input[str]] = None,
|
327
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
328
|
+
__props__=None):
|
329
|
+
"""
|
330
|
+
## Example Usage
|
331
|
+
|
332
|
+
### Backup Dr Backup Plan Simple
|
333
|
+
|
334
|
+
```python
|
335
|
+
import pulumi
|
336
|
+
import pulumi_gcp as gcp
|
337
|
+
|
338
|
+
my_backup_vault = gcp.backupdisasterrecovery.BackupVault("my_backup_vault",
|
339
|
+
location="us-central1",
|
340
|
+
backup_vault_id="bv-bp-test",
|
341
|
+
backup_minimum_enforced_retention_duration="100000s")
|
342
|
+
my_backup_plan_1 = gcp.backupdisasterrecovery.BackupPlan("my-backup-plan-1",
|
343
|
+
location="us-central1",
|
344
|
+
backup_plan_id="backup-plan-simple-test",
|
345
|
+
resource_type="compute.googleapis.com/Instance",
|
346
|
+
backup_vault=my_backup_vault.id,
|
347
|
+
backup_rules=[{
|
348
|
+
"rule_id": "rule-1",
|
349
|
+
"backup_retention_days": 5,
|
350
|
+
"standard_schedule": {
|
351
|
+
"recurrence_type": "HOURLY",
|
352
|
+
"hourly_frequency": 6,
|
353
|
+
"time_zone": "UTC",
|
354
|
+
"backup_window": {
|
355
|
+
"start_hour_of_day": 0,
|
356
|
+
"end_hour_of_day": 24,
|
357
|
+
},
|
358
|
+
},
|
359
|
+
}])
|
360
|
+
```
|
361
|
+
|
362
|
+
## Import
|
363
|
+
|
364
|
+
BackupPlan can be imported using any of these accepted formats:
|
365
|
+
|
366
|
+
* `projects/{{project}}/locations/{{location}}/backupPlans/{{backup_plan_id}}`
|
367
|
+
|
368
|
+
* `{{project}}/{{location}}/{{backup_plan_id}}`
|
369
|
+
|
370
|
+
* `{{location}}/{{backup_plan_id}}`
|
371
|
+
|
372
|
+
When using the `pulumi import` command, BackupPlan can be imported using one of the formats above. For example:
|
373
|
+
|
374
|
+
```sh
|
375
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlan:BackupPlan default projects/{{project}}/locations/{{location}}/backupPlans/{{backup_plan_id}}
|
376
|
+
```
|
377
|
+
|
378
|
+
```sh
|
379
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlan:BackupPlan default {{project}}/{{location}}/{{backup_plan_id}}
|
380
|
+
```
|
381
|
+
|
382
|
+
```sh
|
383
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlan:BackupPlan default {{location}}/{{backup_plan_id}}
|
384
|
+
```
|
385
|
+
|
386
|
+
:param str resource_name: The name of the resource.
|
387
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
388
|
+
:param pulumi.Input[str] backup_plan_id: The ID of the backup plan
|
389
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanBackupRuleArgs', 'BackupPlanBackupRuleArgsDict']]]] backup_rules: The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
390
|
+
Structure is documented below.
|
391
|
+
:param pulumi.Input[str] backup_vault: Backup vault where the backups gets stored using this Backup plan.
|
392
|
+
:param pulumi.Input[str] description: The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
393
|
+
:param pulumi.Input[str] location: The location for the backup plan
|
394
|
+
:param pulumi.Input[str] resource_type: The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
395
|
+
"""
|
396
|
+
...
|
397
|
+
@overload
|
398
|
+
def __init__(__self__,
|
399
|
+
resource_name: str,
|
400
|
+
args: BackupPlanArgs,
|
401
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
402
|
+
"""
|
403
|
+
## Example Usage
|
404
|
+
|
405
|
+
### Backup Dr Backup Plan Simple
|
406
|
+
|
407
|
+
```python
|
408
|
+
import pulumi
|
409
|
+
import pulumi_gcp as gcp
|
410
|
+
|
411
|
+
my_backup_vault = gcp.backupdisasterrecovery.BackupVault("my_backup_vault",
|
412
|
+
location="us-central1",
|
413
|
+
backup_vault_id="bv-bp-test",
|
414
|
+
backup_minimum_enforced_retention_duration="100000s")
|
415
|
+
my_backup_plan_1 = gcp.backupdisasterrecovery.BackupPlan("my-backup-plan-1",
|
416
|
+
location="us-central1",
|
417
|
+
backup_plan_id="backup-plan-simple-test",
|
418
|
+
resource_type="compute.googleapis.com/Instance",
|
419
|
+
backup_vault=my_backup_vault.id,
|
420
|
+
backup_rules=[{
|
421
|
+
"rule_id": "rule-1",
|
422
|
+
"backup_retention_days": 5,
|
423
|
+
"standard_schedule": {
|
424
|
+
"recurrence_type": "HOURLY",
|
425
|
+
"hourly_frequency": 6,
|
426
|
+
"time_zone": "UTC",
|
427
|
+
"backup_window": {
|
428
|
+
"start_hour_of_day": 0,
|
429
|
+
"end_hour_of_day": 24,
|
430
|
+
},
|
431
|
+
},
|
432
|
+
}])
|
433
|
+
```
|
434
|
+
|
435
|
+
## Import
|
436
|
+
|
437
|
+
BackupPlan can be imported using any of these accepted formats:
|
438
|
+
|
439
|
+
* `projects/{{project}}/locations/{{location}}/backupPlans/{{backup_plan_id}}`
|
440
|
+
|
441
|
+
* `{{project}}/{{location}}/{{backup_plan_id}}`
|
442
|
+
|
443
|
+
* `{{location}}/{{backup_plan_id}}`
|
444
|
+
|
445
|
+
When using the `pulumi import` command, BackupPlan can be imported using one of the formats above. For example:
|
446
|
+
|
447
|
+
```sh
|
448
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlan:BackupPlan default projects/{{project}}/locations/{{location}}/backupPlans/{{backup_plan_id}}
|
449
|
+
```
|
450
|
+
|
451
|
+
```sh
|
452
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlan:BackupPlan default {{project}}/{{location}}/{{backup_plan_id}}
|
453
|
+
```
|
454
|
+
|
455
|
+
```sh
|
456
|
+
$ pulumi import gcp:backupdisasterrecovery/backupPlan:BackupPlan default {{location}}/{{backup_plan_id}}
|
457
|
+
```
|
458
|
+
|
459
|
+
:param str resource_name: The name of the resource.
|
460
|
+
:param BackupPlanArgs args: The arguments to use to populate this resource's properties.
|
461
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
462
|
+
"""
|
463
|
+
...
|
464
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
465
|
+
resource_args, opts = _utilities.get_resource_args_opts(BackupPlanArgs, pulumi.ResourceOptions, *args, **kwargs)
|
466
|
+
if resource_args is not None:
|
467
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
468
|
+
else:
|
469
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
470
|
+
|
471
|
+
def _internal_init(__self__,
|
472
|
+
resource_name: str,
|
473
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
474
|
+
backup_plan_id: Optional[pulumi.Input[str]] = None,
|
475
|
+
backup_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanBackupRuleArgs', 'BackupPlanBackupRuleArgsDict']]]]] = None,
|
476
|
+
backup_vault: Optional[pulumi.Input[str]] = None,
|
477
|
+
description: Optional[pulumi.Input[str]] = None,
|
478
|
+
location: Optional[pulumi.Input[str]] = None,
|
479
|
+
project: Optional[pulumi.Input[str]] = None,
|
480
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
481
|
+
__props__=None):
|
482
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
483
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
484
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
485
|
+
if opts.id is None:
|
486
|
+
if __props__ is not None:
|
487
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
488
|
+
__props__ = BackupPlanArgs.__new__(BackupPlanArgs)
|
489
|
+
|
490
|
+
if backup_plan_id is None and not opts.urn:
|
491
|
+
raise TypeError("Missing required property 'backup_plan_id'")
|
492
|
+
__props__.__dict__["backup_plan_id"] = backup_plan_id
|
493
|
+
if backup_rules is None and not opts.urn:
|
494
|
+
raise TypeError("Missing required property 'backup_rules'")
|
495
|
+
__props__.__dict__["backup_rules"] = backup_rules
|
496
|
+
if backup_vault is None and not opts.urn:
|
497
|
+
raise TypeError("Missing required property 'backup_vault'")
|
498
|
+
__props__.__dict__["backup_vault"] = backup_vault
|
499
|
+
__props__.__dict__["description"] = description
|
500
|
+
if location is None and not opts.urn:
|
501
|
+
raise TypeError("Missing required property 'location'")
|
502
|
+
__props__.__dict__["location"] = location
|
503
|
+
__props__.__dict__["project"] = project
|
504
|
+
if resource_type is None and not opts.urn:
|
505
|
+
raise TypeError("Missing required property 'resource_type'")
|
506
|
+
__props__.__dict__["resource_type"] = resource_type
|
507
|
+
__props__.__dict__["backup_vault_service_account"] = None
|
508
|
+
__props__.__dict__["create_time"] = None
|
509
|
+
__props__.__dict__["name"] = None
|
510
|
+
__props__.__dict__["update_time"] = None
|
511
|
+
super(BackupPlan, __self__).__init__(
|
512
|
+
'gcp:backupdisasterrecovery/backupPlan:BackupPlan',
|
513
|
+
resource_name,
|
514
|
+
__props__,
|
515
|
+
opts)
|
516
|
+
|
517
|
+
@staticmethod
|
518
|
+
def get(resource_name: str,
|
519
|
+
id: pulumi.Input[str],
|
520
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
521
|
+
backup_plan_id: Optional[pulumi.Input[str]] = None,
|
522
|
+
backup_rules: Optional[pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanBackupRuleArgs', 'BackupPlanBackupRuleArgsDict']]]]] = None,
|
523
|
+
backup_vault: Optional[pulumi.Input[str]] = None,
|
524
|
+
backup_vault_service_account: Optional[pulumi.Input[str]] = None,
|
525
|
+
create_time: Optional[pulumi.Input[str]] = None,
|
526
|
+
description: Optional[pulumi.Input[str]] = None,
|
527
|
+
location: Optional[pulumi.Input[str]] = None,
|
528
|
+
name: Optional[pulumi.Input[str]] = None,
|
529
|
+
project: Optional[pulumi.Input[str]] = None,
|
530
|
+
resource_type: Optional[pulumi.Input[str]] = None,
|
531
|
+
update_time: Optional[pulumi.Input[str]] = None) -> 'BackupPlan':
|
532
|
+
"""
|
533
|
+
Get an existing BackupPlan resource's state with the given name, id, and optional extra
|
534
|
+
properties used to qualify the lookup.
|
535
|
+
|
536
|
+
:param str resource_name: The unique name of the resulting resource.
|
537
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
538
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
539
|
+
:param pulumi.Input[str] backup_plan_id: The ID of the backup plan
|
540
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['BackupPlanBackupRuleArgs', 'BackupPlanBackupRuleArgsDict']]]] backup_rules: The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
541
|
+
Structure is documented below.
|
542
|
+
:param pulumi.Input[str] backup_vault: Backup vault where the backups gets stored using this Backup plan.
|
543
|
+
:param pulumi.Input[str] backup_vault_service_account: The Google Cloud Platform Service Account to be used by the BackupVault for taking backups.
|
544
|
+
:param pulumi.Input[str] create_time: When the `BackupPlan` was created.
|
545
|
+
:param pulumi.Input[str] description: The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
546
|
+
:param pulumi.Input[str] location: The location for the backup plan
|
547
|
+
:param pulumi.Input[str] name: The name of backup plan resource created
|
548
|
+
:param pulumi.Input[str] resource_type: The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
549
|
+
:param pulumi.Input[str] update_time: When the `BackupPlan` was last updated.
|
550
|
+
"""
|
551
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
552
|
+
|
553
|
+
__props__ = _BackupPlanState.__new__(_BackupPlanState)
|
554
|
+
|
555
|
+
__props__.__dict__["backup_plan_id"] = backup_plan_id
|
556
|
+
__props__.__dict__["backup_rules"] = backup_rules
|
557
|
+
__props__.__dict__["backup_vault"] = backup_vault
|
558
|
+
__props__.__dict__["backup_vault_service_account"] = backup_vault_service_account
|
559
|
+
__props__.__dict__["create_time"] = create_time
|
560
|
+
__props__.__dict__["description"] = description
|
561
|
+
__props__.__dict__["location"] = location
|
562
|
+
__props__.__dict__["name"] = name
|
563
|
+
__props__.__dict__["project"] = project
|
564
|
+
__props__.__dict__["resource_type"] = resource_type
|
565
|
+
__props__.__dict__["update_time"] = update_time
|
566
|
+
return BackupPlan(resource_name, opts=opts, __props__=__props__)
|
567
|
+
|
568
|
+
@property
|
569
|
+
@pulumi.getter(name="backupPlanId")
|
570
|
+
def backup_plan_id(self) -> pulumi.Output[str]:
|
571
|
+
"""
|
572
|
+
The ID of the backup plan
|
573
|
+
"""
|
574
|
+
return pulumi.get(self, "backup_plan_id")
|
575
|
+
|
576
|
+
@property
|
577
|
+
@pulumi.getter(name="backupRules")
|
578
|
+
def backup_rules(self) -> pulumi.Output[Sequence['outputs.BackupPlanBackupRule']]:
|
579
|
+
"""
|
580
|
+
The backup rules for this `BackupPlan`. There must be at least one `BackupRule` message.
|
581
|
+
Structure is documented below.
|
582
|
+
"""
|
583
|
+
return pulumi.get(self, "backup_rules")
|
584
|
+
|
585
|
+
@property
|
586
|
+
@pulumi.getter(name="backupVault")
|
587
|
+
def backup_vault(self) -> pulumi.Output[str]:
|
588
|
+
"""
|
589
|
+
Backup vault where the backups gets stored using this Backup plan.
|
590
|
+
"""
|
591
|
+
return pulumi.get(self, "backup_vault")
|
592
|
+
|
593
|
+
@property
|
594
|
+
@pulumi.getter(name="backupVaultServiceAccount")
|
595
|
+
def backup_vault_service_account(self) -> pulumi.Output[str]:
|
596
|
+
"""
|
597
|
+
The Google Cloud Platform Service Account to be used by the BackupVault for taking backups.
|
598
|
+
"""
|
599
|
+
return pulumi.get(self, "backup_vault_service_account")
|
600
|
+
|
601
|
+
@property
|
602
|
+
@pulumi.getter(name="createTime")
|
603
|
+
def create_time(self) -> pulumi.Output[str]:
|
604
|
+
"""
|
605
|
+
When the `BackupPlan` was created.
|
606
|
+
"""
|
607
|
+
return pulumi.get(self, "create_time")
|
608
|
+
|
609
|
+
@property
|
610
|
+
@pulumi.getter
|
611
|
+
def description(self) -> pulumi.Output[Optional[str]]:
|
612
|
+
"""
|
613
|
+
The description allows for additional details about 'BackupPlan' and its use cases to be provided.
|
614
|
+
"""
|
615
|
+
return pulumi.get(self, "description")
|
616
|
+
|
617
|
+
@property
|
618
|
+
@pulumi.getter
|
619
|
+
def location(self) -> pulumi.Output[str]:
|
620
|
+
"""
|
621
|
+
The location for the backup plan
|
622
|
+
"""
|
623
|
+
return pulumi.get(self, "location")
|
624
|
+
|
625
|
+
@property
|
626
|
+
@pulumi.getter
|
627
|
+
def name(self) -> pulumi.Output[str]:
|
628
|
+
"""
|
629
|
+
The name of backup plan resource created
|
630
|
+
"""
|
631
|
+
return pulumi.get(self, "name")
|
632
|
+
|
633
|
+
@property
|
634
|
+
@pulumi.getter
|
635
|
+
def project(self) -> pulumi.Output[str]:
|
636
|
+
return pulumi.get(self, "project")
|
637
|
+
|
638
|
+
@property
|
639
|
+
@pulumi.getter(name="resourceType")
|
640
|
+
def resource_type(self) -> pulumi.Output[str]:
|
641
|
+
"""
|
642
|
+
The resource type to which the `BackupPlan` will be applied. Examples include, "compute.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
|
643
|
+
"""
|
644
|
+
return pulumi.get(self, "resource_type")
|
645
|
+
|
646
|
+
@property
|
647
|
+
@pulumi.getter(name="updateTime")
|
648
|
+
def update_time(self) -> pulumi.Output[str]:
|
649
|
+
"""
|
650
|
+
When the `BackupPlan` was last updated.
|
651
|
+
"""
|
652
|
+
return pulumi.get(self, "update_time")
|
653
|
+
|