pulumi-gcp 8.41.0a1755408441__py3-none-any.whl → 8.41.0a1755714744__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. pulumi_gcp/__init__.py +16 -0
  2. pulumi_gcp/artifactregistry/__init__.py +3 -0
  3. pulumi_gcp/artifactregistry/get_package.py +220 -0
  4. pulumi_gcp/artifactregistry/get_repositories.py +160 -0
  5. pulumi_gcp/artifactregistry/get_version.py +261 -0
  6. pulumi_gcp/artifactregistry/outputs.py +100 -0
  7. pulumi_gcp/backupdisasterrecovery/backup_plan.py +114 -7
  8. pulumi_gcp/backupdisasterrecovery/get_backup_plan.py +12 -1
  9. pulumi_gcp/bigquery/dataset.py +2 -2
  10. pulumi_gcp/composer/user_workloads_config_map.py +26 -2
  11. pulumi_gcp/compute/_inputs.py +355 -0
  12. pulumi_gcp/compute/get_region_backend_service.py +12 -1
  13. pulumi_gcp/compute/outputs.py +404 -0
  14. pulumi_gcp/compute/region_backend_service.py +257 -0
  15. pulumi_gcp/compute/region_security_policy.py +54 -0
  16. pulumi_gcp/compute/service_attachment.py +126 -0
  17. pulumi_gcp/container/_inputs.py +435 -15
  18. pulumi_gcp/container/outputs.py +494 -13
  19. pulumi_gcp/diagflow/__init__.py +1 -0
  20. pulumi_gcp/diagflow/_inputs.py +168 -0
  21. pulumi_gcp/diagflow/cx_playbook.py +967 -0
  22. pulumi_gcp/diagflow/outputs.py +117 -0
  23. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +24 -3
  24. pulumi_gcp/memorystore/get_instance.py +12 -1
  25. pulumi_gcp/memorystore/instance.py +70 -0
  26. pulumi_gcp/pubsub/subscription.py +84 -0
  27. pulumi_gcp/pubsub/topic.py +80 -0
  28. pulumi_gcp/pulumi-plugin.json +1 -1
  29. pulumi_gcp/sql/_inputs.py +82 -4
  30. pulumi_gcp/sql/database_instance.py +108 -7
  31. pulumi_gcp/sql/get_database_instance.py +12 -1
  32. pulumi_gcp/sql/outputs.py +154 -7
  33. pulumi_gcp/storage/_inputs.py +104 -12
  34. pulumi_gcp/storage/outputs.py +84 -7
  35. pulumi_gcp/vertex/__init__.py +1 -0
  36. pulumi_gcp/vertex/_inputs.py +122 -0
  37. pulumi_gcp/vertex/ai_rag_engine_config.py +354 -0
  38. pulumi_gcp/vertex/outputs.py +69 -0
  39. {pulumi_gcp-8.41.0a1755408441.dist-info → pulumi_gcp-8.41.0a1755714744.dist-info}/METADATA +1 -1
  40. {pulumi_gcp-8.41.0a1755408441.dist-info → pulumi_gcp-8.41.0a1755714744.dist-info}/RECORD +42 -37
  41. {pulumi_gcp-8.41.0a1755408441.dist-info → pulumi_gcp-8.41.0a1755714744.dist-info}/WHEEL +0 -0
  42. {pulumi_gcp-8.41.0a1755408441.dist-info → pulumi_gcp-8.41.0a1755714744.dist-info}/top_level.txt +0 -0
@@ -43,6 +43,7 @@ __all__ = [
43
43
  'RepositoryVirtualRepositoryConfigUpstreamPolicy',
44
44
  'RepositoryVulnerabilityScanningConfig',
45
45
  'GetDockerImagesDockerImageResult',
46
+ 'GetRepositoriesRepositoryResult',
46
47
  'GetRepositoryCleanupPolicyResult',
47
48
  'GetRepositoryCleanupPolicyConditionResult',
48
49
  'GetRepositoryCleanupPolicyMostRecentVersionResult',
@@ -67,6 +68,7 @@ __all__ = [
67
68
  'GetRepositoryVirtualRepositoryConfigResult',
68
69
  'GetRepositoryVirtualRepositoryConfigUpstreamPolicyResult',
69
70
  'GetRepositoryVulnerabilityScanningConfigResult',
71
+ 'GetVersionRelatedTagResult',
70
72
  ]
71
73
 
72
74
  @pulumi.output_type
@@ -1483,6 +1485,79 @@ class GetDockerImagesDockerImageResult(dict):
1483
1485
  return pulumi.get(self, "upload_time")
1484
1486
 
1485
1487
 
1488
+ @pulumi.output_type
1489
+ class GetRepositoriesRepositoryResult(dict):
1490
+ def __init__(__self__, *,
1491
+ create_time: _builtins.str,
1492
+ description: _builtins.str,
1493
+ format: _builtins.str,
1494
+ id: _builtins.str,
1495
+ repository_id: _builtins.str,
1496
+ update_time: _builtins.str):
1497
+ """
1498
+ :param _builtins.str create_time: The time when the repository was created.
1499
+ :param _builtins.str description: The user-provided description of the repository.
1500
+ :param _builtins.str format: The format of packages that are stored in the repository. Supported formats can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
1501
+ :param _builtins.str id: An identifier for the resource with format `projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}`
1502
+ :param _builtins.str repository_id: The last part of the repository name, for example: `"repo1"`
1503
+ :param _builtins.str update_time: The time when the repository was last updated.
1504
+ """
1505
+ pulumi.set(__self__, "create_time", create_time)
1506
+ pulumi.set(__self__, "description", description)
1507
+ pulumi.set(__self__, "format", format)
1508
+ pulumi.set(__self__, "id", id)
1509
+ pulumi.set(__self__, "repository_id", repository_id)
1510
+ pulumi.set(__self__, "update_time", update_time)
1511
+
1512
+ @_builtins.property
1513
+ @pulumi.getter(name="createTime")
1514
+ def create_time(self) -> _builtins.str:
1515
+ """
1516
+ The time when the repository was created.
1517
+ """
1518
+ return pulumi.get(self, "create_time")
1519
+
1520
+ @_builtins.property
1521
+ @pulumi.getter
1522
+ def description(self) -> _builtins.str:
1523
+ """
1524
+ The user-provided description of the repository.
1525
+ """
1526
+ return pulumi.get(self, "description")
1527
+
1528
+ @_builtins.property
1529
+ @pulumi.getter
1530
+ def format(self) -> _builtins.str:
1531
+ """
1532
+ The format of packages that are stored in the repository. Supported formats can be found [here](https://cloud.google.com/artifact-registry/docs/supported-formats).
1533
+ """
1534
+ return pulumi.get(self, "format")
1535
+
1536
+ @_builtins.property
1537
+ @pulumi.getter
1538
+ def id(self) -> _builtins.str:
1539
+ """
1540
+ An identifier for the resource with format `projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}`
1541
+ """
1542
+ return pulumi.get(self, "id")
1543
+
1544
+ @_builtins.property
1545
+ @pulumi.getter(name="repositoryId")
1546
+ def repository_id(self) -> _builtins.str:
1547
+ """
1548
+ The last part of the repository name, for example: `"repo1"`
1549
+ """
1550
+ return pulumi.get(self, "repository_id")
1551
+
1552
+ @_builtins.property
1553
+ @pulumi.getter(name="updateTime")
1554
+ def update_time(self) -> _builtins.str:
1555
+ """
1556
+ The time when the repository was last updated.
1557
+ """
1558
+ return pulumi.get(self, "update_time")
1559
+
1560
+
1486
1561
  @pulumi.output_type
1487
1562
  class GetRepositoryCleanupPolicyResult(dict):
1488
1563
  def __init__(__self__, *,
@@ -2261,3 +2336,28 @@ class GetRepositoryVulnerabilityScanningConfigResult(dict):
2261
2336
  return pulumi.get(self, "enablement_state_reason")
2262
2337
 
2263
2338
 
2339
+ @pulumi.output_type
2340
+ class GetVersionRelatedTagResult(dict):
2341
+ def __init__(__self__, *,
2342
+ name: _builtins.str,
2343
+ version: _builtins.str):
2344
+ """
2345
+ :param _builtins.str name: The name of the version, for example: `projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/version1`. If the package part contains slashes, the slashes are escaped.
2346
+ """
2347
+ pulumi.set(__self__, "name", name)
2348
+ pulumi.set(__self__, "version", version)
2349
+
2350
+ @_builtins.property
2351
+ @pulumi.getter
2352
+ def name(self) -> _builtins.str:
2353
+ """
2354
+ The name of the version, for example: `projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/version1`. If the package part contains slashes, the slashes are escaped.
2355
+ """
2356
+ return pulumi.get(self, "name")
2357
+
2358
+ @_builtins.property
2359
+ @pulumi.getter
2360
+ def version(self) -> _builtins.str:
2361
+ return pulumi.get(self, "version")
2362
+
2363
+
@@ -27,6 +27,7 @@ class BackupPlanArgs:
27
27
  location: pulumi.Input[_builtins.str],
28
28
  resource_type: pulumi.Input[_builtins.str],
29
29
  description: Optional[pulumi.Input[_builtins.str]] = None,
30
+ log_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
30
31
  project: Optional[pulumi.Input[_builtins.str]] = None):
31
32
  """
32
33
  The set of arguments for constructing a BackupPlan resource.
@@ -36,8 +37,9 @@ class BackupPlanArgs:
36
37
  :param pulumi.Input[_builtins.str] backup_vault: Backup vault where the backups gets stored using this Backup plan.
37
38
  :param pulumi.Input[_builtins.str] location: The location for the backup plan
38
39
  :param pulumi.Input[_builtins.str] resource_type: The resource type to which the `BackupPlan` will be applied.
39
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
40
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
40
41
  :param pulumi.Input[_builtins.str] description: The description allows for additional details about `BackupPlan` and its use cases to be provided.
42
+ :param pulumi.Input[_builtins.int] log_retention_days: This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
41
43
  :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
42
44
  If it is not provided, the provider project is used.
43
45
  """
@@ -48,6 +50,8 @@ class BackupPlanArgs:
48
50
  pulumi.set(__self__, "resource_type", resource_type)
49
51
  if description is not None:
50
52
  pulumi.set(__self__, "description", description)
53
+ if log_retention_days is not None:
54
+ pulumi.set(__self__, "log_retention_days", log_retention_days)
51
55
  if project is not None:
52
56
  pulumi.set(__self__, "project", project)
53
57
 
@@ -105,7 +109,7 @@ class BackupPlanArgs:
105
109
  def resource_type(self) -> pulumi.Input[_builtins.str]:
106
110
  """
107
111
  The resource type to which the `BackupPlan` will be applied.
108
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
112
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
109
113
  """
110
114
  return pulumi.get(self, "resource_type")
111
115
 
@@ -125,6 +129,18 @@ class BackupPlanArgs:
125
129
  def description(self, value: Optional[pulumi.Input[_builtins.str]]):
126
130
  pulumi.set(self, "description", value)
127
131
 
132
+ @_builtins.property
133
+ @pulumi.getter(name="logRetentionDays")
134
+ def log_retention_days(self) -> Optional[pulumi.Input[_builtins.int]]:
135
+ """
136
+ This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
137
+ """
138
+ return pulumi.get(self, "log_retention_days")
139
+
140
+ @log_retention_days.setter
141
+ def log_retention_days(self, value: Optional[pulumi.Input[_builtins.int]]):
142
+ pulumi.set(self, "log_retention_days", value)
143
+
128
144
  @_builtins.property
129
145
  @pulumi.getter
130
146
  def project(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -149,6 +165,7 @@ class _BackupPlanState:
149
165
  create_time: Optional[pulumi.Input[_builtins.str]] = None,
150
166
  description: Optional[pulumi.Input[_builtins.str]] = None,
151
167
  location: Optional[pulumi.Input[_builtins.str]] = None,
168
+ log_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
152
169
  name: Optional[pulumi.Input[_builtins.str]] = None,
153
170
  project: Optional[pulumi.Input[_builtins.str]] = None,
154
171
  resource_type: Optional[pulumi.Input[_builtins.str]] = None,
@@ -164,11 +181,12 @@ class _BackupPlanState:
164
181
  :param pulumi.Input[_builtins.str] create_time: When the `BackupPlan` was created.
165
182
  :param pulumi.Input[_builtins.str] description: The description allows for additional details about `BackupPlan` and its use cases to be provided.
166
183
  :param pulumi.Input[_builtins.str] location: The location for the backup plan
184
+ :param pulumi.Input[_builtins.int] log_retention_days: This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
167
185
  :param pulumi.Input[_builtins.str] name: The name of backup plan resource created
168
186
  :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
169
187
  If it is not provided, the provider project is used.
170
188
  :param pulumi.Input[_builtins.str] resource_type: The resource type to which the `BackupPlan` will be applied.
171
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
189
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
172
190
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] supported_resource_types: The list of all resource types to which the 'BackupPlan' can be applied.
173
191
  :param pulumi.Input[_builtins.str] update_time: When the `BackupPlan` was last updated.
174
192
  """
@@ -186,6 +204,8 @@ class _BackupPlanState:
186
204
  pulumi.set(__self__, "description", description)
187
205
  if location is not None:
188
206
  pulumi.set(__self__, "location", location)
207
+ if log_retention_days is not None:
208
+ pulumi.set(__self__, "log_retention_days", log_retention_days)
189
209
  if name is not None:
190
210
  pulumi.set(__self__, "name", name)
191
211
  if project is not None:
@@ -282,6 +302,18 @@ class _BackupPlanState:
282
302
  def location(self, value: Optional[pulumi.Input[_builtins.str]]):
283
303
  pulumi.set(self, "location", value)
284
304
 
305
+ @_builtins.property
306
+ @pulumi.getter(name="logRetentionDays")
307
+ def log_retention_days(self) -> Optional[pulumi.Input[_builtins.int]]:
308
+ """
309
+ This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
310
+ """
311
+ return pulumi.get(self, "log_retention_days")
312
+
313
+ @log_retention_days.setter
314
+ def log_retention_days(self, value: Optional[pulumi.Input[_builtins.int]]):
315
+ pulumi.set(self, "log_retention_days", value)
316
+
285
317
  @_builtins.property
286
318
  @pulumi.getter
287
319
  def name(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -312,7 +344,7 @@ class _BackupPlanState:
312
344
  def resource_type(self) -> Optional[pulumi.Input[_builtins.str]]:
313
345
  """
314
346
  The resource type to which the `BackupPlan` will be applied.
315
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
347
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
316
348
  """
317
349
  return pulumi.get(self, "resource_type")
318
350
 
@@ -356,6 +388,7 @@ class BackupPlan(pulumi.CustomResource):
356
388
  backup_vault: Optional[pulumi.Input[_builtins.str]] = None,
357
389
  description: Optional[pulumi.Input[_builtins.str]] = None,
358
390
  location: Optional[pulumi.Input[_builtins.str]] = None,
391
+ log_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
359
392
  project: Optional[pulumi.Input[_builtins.str]] = None,
360
393
  resource_type: Optional[pulumi.Input[_builtins.str]] = None,
361
394
  __props__=None):
@@ -428,6 +461,36 @@ class BackupPlan(pulumi.CustomResource):
428
461
  },
429
462
  }])
430
463
  ```
464
+ ### Backup Dr Backup Plan For Csql Resource
465
+
466
+ ```python
467
+ import pulumi
468
+ import pulumi_gcp as gcp
469
+
470
+ my_backup_vault = gcp.backupdisasterrecovery.BackupVault("my_backup_vault",
471
+ location="us-central1",
472
+ backup_vault_id="backup-vault-csql-test",
473
+ backup_minimum_enforced_retention_duration="100000s")
474
+ my_csql_backup_plan_1 = gcp.backupdisasterrecovery.BackupPlan("my-csql-backup-plan-1",
475
+ location="us-central1",
476
+ backup_plan_id="backup-plan-csql-test",
477
+ resource_type="sqladmin.googleapis.com/Instance",
478
+ backup_vault=my_backup_vault.id,
479
+ backup_rules=[{
480
+ "rule_id": "rule-1",
481
+ "backup_retention_days": 5,
482
+ "standard_schedule": {
483
+ "recurrence_type": "HOURLY",
484
+ "hourly_frequency": 6,
485
+ "time_zone": "UTC",
486
+ "backup_window": {
487
+ "start_hour_of_day": 0,
488
+ "end_hour_of_day": 6,
489
+ },
490
+ },
491
+ }],
492
+ log_retention_days=4)
493
+ ```
431
494
 
432
495
  ## Import
433
496
 
@@ -461,10 +524,11 @@ class BackupPlan(pulumi.CustomResource):
461
524
  :param pulumi.Input[_builtins.str] backup_vault: Backup vault where the backups gets stored using this Backup plan.
462
525
  :param pulumi.Input[_builtins.str] description: The description allows for additional details about `BackupPlan` and its use cases to be provided.
463
526
  :param pulumi.Input[_builtins.str] location: The location for the backup plan
527
+ :param pulumi.Input[_builtins.int] log_retention_days: This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
464
528
  :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
465
529
  If it is not provided, the provider project is used.
466
530
  :param pulumi.Input[_builtins.str] resource_type: The resource type to which the `BackupPlan` will be applied.
467
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
531
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
468
532
  """
469
533
  ...
470
534
  @overload
@@ -541,6 +605,36 @@ class BackupPlan(pulumi.CustomResource):
541
605
  },
542
606
  }])
543
607
  ```
608
+ ### Backup Dr Backup Plan For Csql Resource
609
+
610
+ ```python
611
+ import pulumi
612
+ import pulumi_gcp as gcp
613
+
614
+ my_backup_vault = gcp.backupdisasterrecovery.BackupVault("my_backup_vault",
615
+ location="us-central1",
616
+ backup_vault_id="backup-vault-csql-test",
617
+ backup_minimum_enforced_retention_duration="100000s")
618
+ my_csql_backup_plan_1 = gcp.backupdisasterrecovery.BackupPlan("my-csql-backup-plan-1",
619
+ location="us-central1",
620
+ backup_plan_id="backup-plan-csql-test",
621
+ resource_type="sqladmin.googleapis.com/Instance",
622
+ backup_vault=my_backup_vault.id,
623
+ backup_rules=[{
624
+ "rule_id": "rule-1",
625
+ "backup_retention_days": 5,
626
+ "standard_schedule": {
627
+ "recurrence_type": "HOURLY",
628
+ "hourly_frequency": 6,
629
+ "time_zone": "UTC",
630
+ "backup_window": {
631
+ "start_hour_of_day": 0,
632
+ "end_hour_of_day": 6,
633
+ },
634
+ },
635
+ }],
636
+ log_retention_days=4)
637
+ ```
544
638
 
545
639
  ## Import
546
640
 
@@ -586,6 +680,7 @@ class BackupPlan(pulumi.CustomResource):
586
680
  backup_vault: Optional[pulumi.Input[_builtins.str]] = None,
587
681
  description: Optional[pulumi.Input[_builtins.str]] = None,
588
682
  location: Optional[pulumi.Input[_builtins.str]] = None,
683
+ log_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
589
684
  project: Optional[pulumi.Input[_builtins.str]] = None,
590
685
  resource_type: Optional[pulumi.Input[_builtins.str]] = None,
591
686
  __props__=None):
@@ -610,6 +705,7 @@ class BackupPlan(pulumi.CustomResource):
610
705
  if location is None and not opts.urn:
611
706
  raise TypeError("Missing required property 'location'")
612
707
  __props__.__dict__["location"] = location
708
+ __props__.__dict__["log_retention_days"] = log_retention_days
613
709
  __props__.__dict__["project"] = project
614
710
  if resource_type is None and not opts.urn:
615
711
  raise TypeError("Missing required property 'resource_type'")
@@ -636,6 +732,7 @@ class BackupPlan(pulumi.CustomResource):
636
732
  create_time: Optional[pulumi.Input[_builtins.str]] = None,
637
733
  description: Optional[pulumi.Input[_builtins.str]] = None,
638
734
  location: Optional[pulumi.Input[_builtins.str]] = None,
735
+ log_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
639
736
  name: Optional[pulumi.Input[_builtins.str]] = None,
640
737
  project: Optional[pulumi.Input[_builtins.str]] = None,
641
738
  resource_type: Optional[pulumi.Input[_builtins.str]] = None,
@@ -656,11 +753,12 @@ class BackupPlan(pulumi.CustomResource):
656
753
  :param pulumi.Input[_builtins.str] create_time: When the `BackupPlan` was created.
657
754
  :param pulumi.Input[_builtins.str] description: The description allows for additional details about `BackupPlan` and its use cases to be provided.
658
755
  :param pulumi.Input[_builtins.str] location: The location for the backup plan
756
+ :param pulumi.Input[_builtins.int] log_retention_days: This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
659
757
  :param pulumi.Input[_builtins.str] name: The name of backup plan resource created
660
758
  :param pulumi.Input[_builtins.str] project: The ID of the project in which the resource belongs.
661
759
  If it is not provided, the provider project is used.
662
760
  :param pulumi.Input[_builtins.str] resource_type: The resource type to which the `BackupPlan` will be applied.
663
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
761
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
664
762
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] supported_resource_types: The list of all resource types to which the 'BackupPlan' can be applied.
665
763
  :param pulumi.Input[_builtins.str] update_time: When the `BackupPlan` was last updated.
666
764
  """
@@ -675,6 +773,7 @@ class BackupPlan(pulumi.CustomResource):
675
773
  __props__.__dict__["create_time"] = create_time
676
774
  __props__.__dict__["description"] = description
677
775
  __props__.__dict__["location"] = location
776
+ __props__.__dict__["log_retention_days"] = log_retention_days
678
777
  __props__.__dict__["name"] = name
679
778
  __props__.__dict__["project"] = project
680
779
  __props__.__dict__["resource_type"] = resource_type
@@ -739,6 +838,14 @@ class BackupPlan(pulumi.CustomResource):
739
838
  """
740
839
  return pulumi.get(self, "location")
741
840
 
841
+ @_builtins.property
842
+ @pulumi.getter(name="logRetentionDays")
843
+ def log_retention_days(self) -> pulumi.Output[Optional[_builtins.int]]:
844
+ """
845
+ This is only applicable for CloudSql resource. Days for which logs will be stored. This value should be greater than or equal to minimum enforced log retention duration of the backup vault.
846
+ """
847
+ return pulumi.get(self, "log_retention_days")
848
+
742
849
  @_builtins.property
743
850
  @pulumi.getter
744
851
  def name(self) -> pulumi.Output[_builtins.str]:
@@ -761,7 +868,7 @@ class BackupPlan(pulumi.CustomResource):
761
868
  def resource_type(self) -> pulumi.Output[_builtins.str]:
762
869
  """
763
870
  The resource type to which the `BackupPlan` will be applied.
764
- Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", and "storage.googleapis.com/Bucket".
871
+ Examples include, "compute.googleapis.com/Instance", "compute.googleapis.com/Disk", "sqladmin.googleapis.com/Instance" and "storage.googleapis.com/Bucket".
765
872
  """
766
873
  return pulumi.get(self, "resource_type")
767
874
 
@@ -27,7 +27,7 @@ class GetBackupPlanResult:
27
27
  """
28
28
  A collection of values returned by getBackupPlan.
29
29
  """
30
- def __init__(__self__, backup_plan_id=None, backup_rules=None, backup_vault=None, backup_vault_service_account=None, create_time=None, description=None, id=None, location=None, name=None, project=None, resource_type=None, supported_resource_types=None, update_time=None):
30
+ def __init__(__self__, backup_plan_id=None, backup_rules=None, backup_vault=None, backup_vault_service_account=None, create_time=None, description=None, id=None, location=None, log_retention_days=None, name=None, project=None, resource_type=None, supported_resource_types=None, update_time=None):
31
31
  if backup_plan_id and not isinstance(backup_plan_id, str):
32
32
  raise TypeError("Expected argument 'backup_plan_id' to be a str")
33
33
  pulumi.set(__self__, "backup_plan_id", backup_plan_id)
@@ -52,6 +52,9 @@ class GetBackupPlanResult:
52
52
  if location and not isinstance(location, str):
53
53
  raise TypeError("Expected argument 'location' to be a str")
54
54
  pulumi.set(__self__, "location", location)
55
+ if log_retention_days and not isinstance(log_retention_days, int):
56
+ raise TypeError("Expected argument 'log_retention_days' to be a int")
57
+ pulumi.set(__self__, "log_retention_days", log_retention_days)
55
58
  if name and not isinstance(name, str):
56
59
  raise TypeError("Expected argument 'name' to be a str")
57
60
  pulumi.set(__self__, "name", name)
@@ -111,6 +114,11 @@ class GetBackupPlanResult:
111
114
  def location(self) -> _builtins.str:
112
115
  return pulumi.get(self, "location")
113
116
 
117
+ @_builtins.property
118
+ @pulumi.getter(name="logRetentionDays")
119
+ def log_retention_days(self) -> _builtins.int:
120
+ return pulumi.get(self, "log_retention_days")
121
+
114
122
  @_builtins.property
115
123
  @pulumi.getter
116
124
  def name(self) -> _builtins.str:
@@ -151,6 +159,7 @@ class AwaitableGetBackupPlanResult(GetBackupPlanResult):
151
159
  description=self.description,
152
160
  id=self.id,
153
161
  location=self.location,
162
+ log_retention_days=self.log_retention_days,
154
163
  name=self.name,
155
164
  project=self.project,
156
165
  resource_type=self.resource_type,
@@ -181,6 +190,7 @@ def get_backup_plan(backup_plan_id: Optional[_builtins.str] = None,
181
190
  description=pulumi.get(__ret__, 'description'),
182
191
  id=pulumi.get(__ret__, 'id'),
183
192
  location=pulumi.get(__ret__, 'location'),
193
+ log_retention_days=pulumi.get(__ret__, 'log_retention_days'),
184
194
  name=pulumi.get(__ret__, 'name'),
185
195
  project=pulumi.get(__ret__, 'project'),
186
196
  resource_type=pulumi.get(__ret__, 'resource_type'),
@@ -208,6 +218,7 @@ def get_backup_plan_output(backup_plan_id: Optional[pulumi.Input[_builtins.str]]
208
218
  description=pulumi.get(__response__, 'description'),
209
219
  id=pulumi.get(__response__, 'id'),
210
220
  location=pulumi.get(__response__, 'location'),
221
+ log_retention_days=pulumi.get(__response__, 'log_retention_days'),
211
222
  name=pulumi.get(__response__, 'name'),
212
223
  project=pulumi.get(__response__, 'project'),
213
224
  resource_type=pulumi.get(__response__, 'resource_type'),
@@ -1005,7 +1005,7 @@ class Dataset(pulumi.CustomResource):
1005
1005
  },
1006
1006
  accesses=[
1007
1007
  {
1008
- "role": "OWNER",
1008
+ "role": "roles/bigquery.dataOwner",
1009
1009
  "user_by_email": bqowner.email,
1010
1010
  },
1011
1011
  {
@@ -1308,7 +1308,7 @@ class Dataset(pulumi.CustomResource):
1308
1308
  },
1309
1309
  accesses=[
1310
1310
  {
1311
- "role": "OWNER",
1311
+ "role": "roles/bigquery.dataOwner",
1312
1312
  "user_by_email": bqowner.email,
1313
1313
  },
1314
1314
  {
@@ -227,6 +227,14 @@ class UserWorkloadsConfigMap(pulumi.CustomResource):
227
227
  import pulumi
228
228
  import pulumi_gcp as gcp
229
229
 
230
+ project = gcp.organizations.get_project()
231
+ test = gcp.serviceaccount.Account("test",
232
+ account_id="test-sa",
233
+ display_name="Test Service Account for Composer Environment")
234
+ composer_worker = gcp.projects.IAMMember("composer-worker",
235
+ project=project.project_id,
236
+ role="roles/composer.worker",
237
+ member=test.email.apply(lambda email: f"serviceAccount:{email}"))
230
238
  environment = gcp.composer.Environment("environment",
231
239
  name="test-environment",
232
240
  region="us-central1",
@@ -234,7 +242,11 @@ class UserWorkloadsConfigMap(pulumi.CustomResource):
234
242
  "software_config": {
235
243
  "image_version": "composer-3-airflow-2",
236
244
  },
237
- })
245
+ "node_config": {
246
+ "service_account": test.name,
247
+ },
248
+ },
249
+ opts = pulumi.ResourceOptions(depends_on=[composer_worker]))
238
250
  config_map = gcp.composer.UserWorkloadsConfigMap("config_map",
239
251
  name="test-config-map",
240
252
  region="us-central1",
@@ -306,6 +318,14 @@ class UserWorkloadsConfigMap(pulumi.CustomResource):
306
318
  import pulumi
307
319
  import pulumi_gcp as gcp
308
320
 
321
+ project = gcp.organizations.get_project()
322
+ test = gcp.serviceaccount.Account("test",
323
+ account_id="test-sa",
324
+ display_name="Test Service Account for Composer Environment")
325
+ composer_worker = gcp.projects.IAMMember("composer-worker",
326
+ project=project.project_id,
327
+ role="roles/composer.worker",
328
+ member=test.email.apply(lambda email: f"serviceAccount:{email}"))
309
329
  environment = gcp.composer.Environment("environment",
310
330
  name="test-environment",
311
331
  region="us-central1",
@@ -313,7 +333,11 @@ class UserWorkloadsConfigMap(pulumi.CustomResource):
313
333
  "software_config": {
314
334
  "image_version": "composer-3-airflow-2",
315
335
  },
316
- })
336
+ "node_config": {
337
+ "service_account": test.name,
338
+ },
339
+ },
340
+ opts = pulumi.ResourceOptions(depends_on=[composer_worker]))
317
341
  config_map = gcp.composer.UserWorkloadsConfigMap("config_map",
318
342
  name="test-config-map",
319
343
  region="us-central1",