pulumi-gcp 8.39.0a1752821510__py3-none-any.whl → 8.39.0a1753206228__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 +16 -0
- pulumi_gcp/apigee/_inputs.py +62 -0
- pulumi_gcp/apigee/instance.py +63 -0
- pulumi_gcp/apigee/outputs.py +37 -0
- pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
- pulumi_gcp/backupdisasterrecovery/service_config.py +297 -0
- pulumi_gcp/bigqueryanalyticshub/__init__.py +1 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +355 -0
- pulumi_gcp/bigqueryanalyticshub/data_exchange_subscription.py +1082 -0
- pulumi_gcp/bigqueryanalyticshub/listing.py +116 -0
- pulumi_gcp/bigqueryanalyticshub/outputs.py +287 -0
- pulumi_gcp/compute/__init__.py +1 -0
- pulumi_gcp/compute/_inputs.py +699 -19
- pulumi_gcp/compute/firewall.py +54 -0
- pulumi_gcp/compute/future_reservation.py +124 -0
- pulumi_gcp/compute/get_network_attachment.py +288 -0
- pulumi_gcp/compute/get_region_disk.py +23 -1
- pulumi_gcp/compute/get_reservation.py +45 -1
- pulumi_gcp/compute/interconnect.py +108 -0
- pulumi_gcp/compute/outputs.py +734 -15
- pulumi_gcp/compute/region_disk.py +115 -0
- pulumi_gcp/compute/reservation.py +449 -0
- pulumi_gcp/firebase/hosting_site.py +50 -2
- pulumi_gcp/firestore/__init__.py +1 -0
- pulumi_gcp/firestore/database.py +117 -1
- pulumi_gcp/firestore/get_document.py +234 -0
- pulumi_gcp/gkeonprem/vmware_admin_cluster.py +12 -0
- pulumi_gcp/networksecurity/backend_authentication_config.py +12 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/storage/bucket_object.py +47 -0
- pulumi_gcp/storage/get_bucket_object.py +12 -1
- pulumi_gcp/storage/get_bucket_object_content.py +12 -1
- {pulumi_gcp-8.39.0a1752821510.dist-info → pulumi_gcp-8.39.0a1753206228.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.39.0a1752821510.dist-info → pulumi_gcp-8.39.0a1753206228.dist-info}/RECORD +36 -32
- {pulumi_gcp-8.39.0a1752821510.dist-info → pulumi_gcp-8.39.0a1753206228.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.39.0a1752821510.dist-info → pulumi_gcp-8.39.0a1753206228.dist-info}/top_level.txt +0 -0
pulumi_gcp/compute/firewall.py
CHANGED
@@ -32,6 +32,7 @@ class FirewallArgs:
|
|
32
32
|
enable_logging: Optional[pulumi.Input[builtins.bool]] = None,
|
33
33
|
log_config: Optional[pulumi.Input['FirewallLogConfigArgs']] = None,
|
34
34
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
35
|
+
params: Optional[pulumi.Input['FirewallParamsArgs']] = None,
|
35
36
|
priority: Optional[pulumi.Input[builtins.int]] = None,
|
36
37
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
37
38
|
source_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
@@ -74,6 +75,8 @@ class FirewallArgs:
|
|
74
75
|
first character must be a lowercase letter, and all following
|
75
76
|
characters must be a dash, lowercase letter, or digit, except the last
|
76
77
|
character, which cannot be a dash.
|
78
|
+
:param pulumi.Input['FirewallParamsArgs'] params: Additional params passed with the request, but not persisted as part of resource payload
|
79
|
+
Structure is documented below.
|
77
80
|
:param pulumi.Input[builtins.int] priority: Priority for this rule. This is an integer between 0 and 65535, both
|
78
81
|
inclusive. When not specified, the value assumed is 1000. Relative
|
79
82
|
priorities determine precedence of conflicting rules. Lower value of
|
@@ -146,6 +149,8 @@ class FirewallArgs:
|
|
146
149
|
pulumi.set(__self__, "log_config", log_config)
|
147
150
|
if name is not None:
|
148
151
|
pulumi.set(__self__, "name", name)
|
152
|
+
if params is not None:
|
153
|
+
pulumi.set(__self__, "params", params)
|
149
154
|
if priority is not None:
|
150
155
|
pulumi.set(__self__, "priority", priority)
|
151
156
|
if project is not None:
|
@@ -305,6 +310,19 @@ class FirewallArgs:
|
|
305
310
|
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
306
311
|
pulumi.set(self, "name", value)
|
307
312
|
|
313
|
+
@property
|
314
|
+
@pulumi.getter
|
315
|
+
def params(self) -> Optional[pulumi.Input['FirewallParamsArgs']]:
|
316
|
+
"""
|
317
|
+
Additional params passed with the request, but not persisted as part of resource payload
|
318
|
+
Structure is documented below.
|
319
|
+
"""
|
320
|
+
return pulumi.get(self, "params")
|
321
|
+
|
322
|
+
@params.setter
|
323
|
+
def params(self, value: Optional[pulumi.Input['FirewallParamsArgs']]):
|
324
|
+
pulumi.set(self, "params", value)
|
325
|
+
|
308
326
|
@property
|
309
327
|
@pulumi.getter
|
310
328
|
def priority(self) -> Optional[pulumi.Input[builtins.int]]:
|
@@ -446,6 +464,7 @@ class _FirewallState:
|
|
446
464
|
log_config: Optional[pulumi.Input['FirewallLogConfigArgs']] = None,
|
447
465
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
448
466
|
network: Optional[pulumi.Input[builtins.str]] = None,
|
467
|
+
params: Optional[pulumi.Input['FirewallParamsArgs']] = None,
|
449
468
|
priority: Optional[pulumi.Input[builtins.int]] = None,
|
450
469
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
451
470
|
self_link: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -490,6 +509,8 @@ class _FirewallState:
|
|
490
509
|
characters must be a dash, lowercase letter, or digit, except the last
|
491
510
|
character, which cannot be a dash.
|
492
511
|
:param pulumi.Input[builtins.str] network: The name or self_link of the network to attach this firewall to.
|
512
|
+
:param pulumi.Input['FirewallParamsArgs'] params: Additional params passed with the request, but not persisted as part of resource payload
|
513
|
+
Structure is documented below.
|
493
514
|
:param pulumi.Input[builtins.int] priority: Priority for this rule. This is an integer between 0 and 65535, both
|
494
515
|
inclusive. When not specified, the value assumed is 1000. Relative
|
495
516
|
priorities determine precedence of conflicting rules. Lower value of
|
@@ -566,6 +587,8 @@ class _FirewallState:
|
|
566
587
|
pulumi.set(__self__, "name", name)
|
567
588
|
if network is not None:
|
568
589
|
pulumi.set(__self__, "network", network)
|
590
|
+
if params is not None:
|
591
|
+
pulumi.set(__self__, "params", params)
|
569
592
|
if priority is not None:
|
570
593
|
pulumi.set(__self__, "priority", priority)
|
571
594
|
if project is not None:
|
@@ -739,6 +762,19 @@ class _FirewallState:
|
|
739
762
|
def network(self, value: Optional[pulumi.Input[builtins.str]]):
|
740
763
|
pulumi.set(self, "network", value)
|
741
764
|
|
765
|
+
@property
|
766
|
+
@pulumi.getter
|
767
|
+
def params(self) -> Optional[pulumi.Input['FirewallParamsArgs']]:
|
768
|
+
"""
|
769
|
+
Additional params passed with the request, but not persisted as part of resource payload
|
770
|
+
Structure is documented below.
|
771
|
+
"""
|
772
|
+
return pulumi.get(self, "params")
|
773
|
+
|
774
|
+
@params.setter
|
775
|
+
def params(self, value: Optional[pulumi.Input['FirewallParamsArgs']]):
|
776
|
+
pulumi.set(self, "params", value)
|
777
|
+
|
742
778
|
@property
|
743
779
|
@pulumi.getter
|
744
780
|
def priority(self) -> Optional[pulumi.Input[builtins.int]]:
|
@@ -894,6 +930,7 @@ class Firewall(pulumi.CustomResource):
|
|
894
930
|
log_config: Optional[pulumi.Input[Union['FirewallLogConfigArgs', 'FirewallLogConfigArgsDict']]] = None,
|
895
931
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
896
932
|
network: Optional[pulumi.Input[builtins.str]] = None,
|
933
|
+
params: Optional[pulumi.Input[Union['FirewallParamsArgs', 'FirewallParamsArgsDict']]] = None,
|
897
934
|
priority: Optional[pulumi.Input[builtins.int]] = None,
|
898
935
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
899
936
|
source_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
@@ -1031,6 +1068,8 @@ class Firewall(pulumi.CustomResource):
|
|
1031
1068
|
characters must be a dash, lowercase letter, or digit, except the last
|
1032
1069
|
character, which cannot be a dash.
|
1033
1070
|
:param pulumi.Input[builtins.str] network: The name or self_link of the network to attach this firewall to.
|
1071
|
+
:param pulumi.Input[Union['FirewallParamsArgs', 'FirewallParamsArgsDict']] params: Additional params passed with the request, but not persisted as part of resource payload
|
1072
|
+
Structure is documented below.
|
1034
1073
|
:param pulumi.Input[builtins.int] priority: Priority for this rule. This is an integer between 0 and 65535, both
|
1035
1074
|
inclusive. When not specified, the value assumed is 1000. Relative
|
1036
1075
|
priorities determine precedence of conflicting rules. Lower value of
|
@@ -1206,6 +1245,7 @@ class Firewall(pulumi.CustomResource):
|
|
1206
1245
|
log_config: Optional[pulumi.Input[Union['FirewallLogConfigArgs', 'FirewallLogConfigArgsDict']]] = None,
|
1207
1246
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
1208
1247
|
network: Optional[pulumi.Input[builtins.str]] = None,
|
1248
|
+
params: Optional[pulumi.Input[Union['FirewallParamsArgs', 'FirewallParamsArgsDict']]] = None,
|
1209
1249
|
priority: Optional[pulumi.Input[builtins.int]] = None,
|
1210
1250
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
1211
1251
|
source_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
@@ -1234,6 +1274,7 @@ class Firewall(pulumi.CustomResource):
|
|
1234
1274
|
if network is None and not opts.urn:
|
1235
1275
|
raise TypeError("Missing required property 'network'")
|
1236
1276
|
__props__.__dict__["network"] = network
|
1277
|
+
__props__.__dict__["params"] = params
|
1237
1278
|
__props__.__dict__["priority"] = priority
|
1238
1279
|
__props__.__dict__["project"] = project
|
1239
1280
|
__props__.__dict__["source_ranges"] = source_ranges
|
@@ -1264,6 +1305,7 @@ class Firewall(pulumi.CustomResource):
|
|
1264
1305
|
log_config: Optional[pulumi.Input[Union['FirewallLogConfigArgs', 'FirewallLogConfigArgsDict']]] = None,
|
1265
1306
|
name: Optional[pulumi.Input[builtins.str]] = None,
|
1266
1307
|
network: Optional[pulumi.Input[builtins.str]] = None,
|
1308
|
+
params: Optional[pulumi.Input[Union['FirewallParamsArgs', 'FirewallParamsArgsDict']]] = None,
|
1267
1309
|
priority: Optional[pulumi.Input[builtins.int]] = None,
|
1268
1310
|
project: Optional[pulumi.Input[builtins.str]] = None,
|
1269
1311
|
self_link: Optional[pulumi.Input[builtins.str]] = None,
|
@@ -1313,6 +1355,8 @@ class Firewall(pulumi.CustomResource):
|
|
1313
1355
|
characters must be a dash, lowercase letter, or digit, except the last
|
1314
1356
|
character, which cannot be a dash.
|
1315
1357
|
:param pulumi.Input[builtins.str] network: The name or self_link of the network to attach this firewall to.
|
1358
|
+
:param pulumi.Input[Union['FirewallParamsArgs', 'FirewallParamsArgsDict']] params: Additional params passed with the request, but not persisted as part of resource payload
|
1359
|
+
Structure is documented below.
|
1316
1360
|
:param pulumi.Input[builtins.int] priority: Priority for this rule. This is an integer between 0 and 65535, both
|
1317
1361
|
inclusive. When not specified, the value assumed is 1000. Relative
|
1318
1362
|
priorities determine precedence of conflicting rules. Lower value of
|
@@ -1379,6 +1423,7 @@ class Firewall(pulumi.CustomResource):
|
|
1379
1423
|
__props__.__dict__["log_config"] = log_config
|
1380
1424
|
__props__.__dict__["name"] = name
|
1381
1425
|
__props__.__dict__["network"] = network
|
1426
|
+
__props__.__dict__["params"] = params
|
1382
1427
|
__props__.__dict__["priority"] = priority
|
1383
1428
|
__props__.__dict__["project"] = project
|
1384
1429
|
__props__.__dict__["self_link"] = self_link
|
@@ -1501,6 +1546,15 @@ class Firewall(pulumi.CustomResource):
|
|
1501
1546
|
"""
|
1502
1547
|
return pulumi.get(self, "network")
|
1503
1548
|
|
1549
|
+
@property
|
1550
|
+
@pulumi.getter
|
1551
|
+
def params(self) -> pulumi.Output[Optional['outputs.FirewallParams']]:
|
1552
|
+
"""
|
1553
|
+
Additional params passed with the request, but not persisted as part of resource payload
|
1554
|
+
Structure is documented below.
|
1555
|
+
"""
|
1556
|
+
return pulumi.get(self, "params")
|
1557
|
+
|
1504
1558
|
@property
|
1505
1559
|
@pulumi.getter
|
1506
1560
|
def priority(self) -> pulumi.Output[Optional[builtins.int]]:
|
@@ -23,6 +23,7 @@ __all__ = ['FutureReservationArgs', 'FutureReservation']
|
|
23
23
|
class FutureReservationArgs:
|
24
24
|
def __init__(__self__, *,
|
25
25
|
time_window: pulumi.Input['FutureReservationTimeWindowArgs'],
|
26
|
+
aggregate_reservation: Optional[pulumi.Input['FutureReservationAggregateReservationArgs']] = None,
|
26
27
|
auto_created_reservations_delete_time: Optional[pulumi.Input[builtins.str]] = None,
|
27
28
|
auto_created_reservations_duration: Optional[pulumi.Input['FutureReservationAutoCreatedReservationsDurationArgs']] = None,
|
28
29
|
auto_delete_auto_created_reservations: Optional[pulumi.Input[builtins.bool]] = None,
|
@@ -43,6 +44,8 @@ class FutureReservationArgs:
|
|
43
44
|
The set of arguments for constructing a FutureReservation resource.
|
44
45
|
:param pulumi.Input['FutureReservationTimeWindowArgs'] time_window: Time window for this Future Reservation.
|
45
46
|
Structure is documented below.
|
47
|
+
:param pulumi.Input['FutureReservationAggregateReservationArgs'] aggregate_reservation: Aggregate reservation details for the future reservation.
|
48
|
+
Structure is documented below.
|
46
49
|
:param pulumi.Input[builtins.str] auto_created_reservations_delete_time: Future timestamp when the FR auto-created reservations will be deleted by Compute Engine.
|
47
50
|
:param pulumi.Input['FutureReservationAutoCreatedReservationsDurationArgs'] auto_created_reservations_duration: Specifies the duration of auto-created reservations. It represents relative time to future reservation startTime when auto-created reservations will be automatically deleted by Compute Engine. Duration time unit is represented as a count of seconds and fractions of seconds at nanosecond resolution.
|
48
51
|
Structure is documented below.
|
@@ -76,6 +79,8 @@ class FutureReservationArgs:
|
|
76
79
|
Structure is documented below.
|
77
80
|
"""
|
78
81
|
pulumi.set(__self__, "time_window", time_window)
|
82
|
+
if aggregate_reservation is not None:
|
83
|
+
pulumi.set(__self__, "aggregate_reservation", aggregate_reservation)
|
79
84
|
if auto_created_reservations_delete_time is not None:
|
80
85
|
pulumi.set(__self__, "auto_created_reservations_delete_time", auto_created_reservations_delete_time)
|
81
86
|
if auto_created_reservations_duration is not None:
|
@@ -122,6 +127,19 @@ class FutureReservationArgs:
|
|
122
127
|
def time_window(self, value: pulumi.Input['FutureReservationTimeWindowArgs']):
|
123
128
|
pulumi.set(self, "time_window", value)
|
124
129
|
|
130
|
+
@property
|
131
|
+
@pulumi.getter(name="aggregateReservation")
|
132
|
+
def aggregate_reservation(self) -> Optional[pulumi.Input['FutureReservationAggregateReservationArgs']]:
|
133
|
+
"""
|
134
|
+
Aggregate reservation details for the future reservation.
|
135
|
+
Structure is documented below.
|
136
|
+
"""
|
137
|
+
return pulumi.get(self, "aggregate_reservation")
|
138
|
+
|
139
|
+
@aggregate_reservation.setter
|
140
|
+
def aggregate_reservation(self, value: Optional[pulumi.Input['FutureReservationAggregateReservationArgs']]):
|
141
|
+
pulumi.set(self, "aggregate_reservation", value)
|
142
|
+
|
125
143
|
@property
|
126
144
|
@pulumi.getter(name="autoCreatedReservationsDeleteTime")
|
127
145
|
def auto_created_reservations_delete_time(self) -> Optional[pulumi.Input[builtins.str]]:
|
@@ -333,6 +351,7 @@ class FutureReservationArgs:
|
|
333
351
|
@pulumi.input_type
|
334
352
|
class _FutureReservationState:
|
335
353
|
def __init__(__self__, *,
|
354
|
+
aggregate_reservation: Optional[pulumi.Input['FutureReservationAggregateReservationArgs']] = None,
|
336
355
|
auto_created_reservations_delete_time: Optional[pulumi.Input[builtins.str]] = None,
|
337
356
|
auto_created_reservations_duration: Optional[pulumi.Input['FutureReservationAutoCreatedReservationsDurationArgs']] = None,
|
338
357
|
auto_delete_auto_created_reservations: Optional[pulumi.Input[builtins.bool]] = None,
|
@@ -357,6 +376,8 @@ class _FutureReservationState:
|
|
357
376
|
zone: Optional[pulumi.Input[builtins.str]] = None):
|
358
377
|
"""
|
359
378
|
Input properties used for looking up and filtering FutureReservation resources.
|
379
|
+
:param pulumi.Input['FutureReservationAggregateReservationArgs'] aggregate_reservation: Aggregate reservation details for the future reservation.
|
380
|
+
Structure is documented below.
|
360
381
|
:param pulumi.Input[builtins.str] auto_created_reservations_delete_time: Future timestamp when the FR auto-created reservations will be deleted by Compute Engine.
|
361
382
|
:param pulumi.Input['FutureReservationAutoCreatedReservationsDurationArgs'] auto_created_reservations_duration: Specifies the duration of auto-created reservations. It represents relative time to future reservation startTime when auto-created reservations will be automatically deleted by Compute Engine. Duration time unit is represented as a count of seconds and fractions of seconds at nanosecond resolution.
|
362
383
|
Structure is documented below.
|
@@ -397,6 +418,8 @@ class _FutureReservationState:
|
|
397
418
|
Structure is documented below.
|
398
419
|
:param pulumi.Input[builtins.str] zone: URL of the Zone where this future reservation resides.
|
399
420
|
"""
|
421
|
+
if aggregate_reservation is not None:
|
422
|
+
pulumi.set(__self__, "aggregate_reservation", aggregate_reservation)
|
400
423
|
if auto_created_reservations_delete_time is not None:
|
401
424
|
pulumi.set(__self__, "auto_created_reservations_delete_time", auto_created_reservations_delete_time)
|
402
425
|
if auto_created_reservations_duration is not None:
|
@@ -442,6 +465,19 @@ class _FutureReservationState:
|
|
442
465
|
if zone is not None:
|
443
466
|
pulumi.set(__self__, "zone", zone)
|
444
467
|
|
468
|
+
@property
|
469
|
+
@pulumi.getter(name="aggregateReservation")
|
470
|
+
def aggregate_reservation(self) -> Optional[pulumi.Input['FutureReservationAggregateReservationArgs']]:
|
471
|
+
"""
|
472
|
+
Aggregate reservation details for the future reservation.
|
473
|
+
Structure is documented below.
|
474
|
+
"""
|
475
|
+
return pulumi.get(self, "aggregate_reservation")
|
476
|
+
|
477
|
+
@aggregate_reservation.setter
|
478
|
+
def aggregate_reservation(self, value: Optional[pulumi.Input['FutureReservationAggregateReservationArgs']]):
|
479
|
+
pulumi.set(self, "aggregate_reservation", value)
|
480
|
+
|
445
481
|
@property
|
446
482
|
@pulumi.getter(name="autoCreatedReservationsDeleteTime")
|
447
483
|
def auto_created_reservations_delete_time(self) -> Optional[pulumi.Input[builtins.str]]:
|
@@ -730,6 +766,7 @@ class FutureReservation(pulumi.CustomResource):
|
|
730
766
|
def __init__(__self__,
|
731
767
|
resource_name: str,
|
732
768
|
opts: Optional[pulumi.ResourceOptions] = None,
|
769
|
+
aggregate_reservation: Optional[pulumi.Input[Union['FutureReservationAggregateReservationArgs', 'FutureReservationAggregateReservationArgsDict']]] = None,
|
733
770
|
auto_created_reservations_delete_time: Optional[pulumi.Input[builtins.str]] = None,
|
734
771
|
auto_created_reservations_duration: Optional[pulumi.Input[Union['FutureReservationAutoCreatedReservationsDurationArgs', 'FutureReservationAutoCreatedReservationsDurationArgsDict']]] = None,
|
735
772
|
auto_delete_auto_created_reservations: Optional[pulumi.Input[builtins.bool]] = None,
|
@@ -774,6 +811,41 @@ class FutureReservation(pulumi.CustomResource):
|
|
774
811
|
},
|
775
812
|
})
|
776
813
|
```
|
814
|
+
### Future Reservation Aggregate Reservation
|
815
|
+
|
816
|
+
```python
|
817
|
+
import pulumi
|
818
|
+
import pulumi_gcp as gcp
|
819
|
+
|
820
|
+
gce_future_reservation = gcp.compute.FutureReservation("gce_future_reservation",
|
821
|
+
name="gce-future-reservation-aggregate-reservation",
|
822
|
+
project="my-project-name",
|
823
|
+
auto_delete_auto_created_reservations=True,
|
824
|
+
planning_status="DRAFT",
|
825
|
+
name_prefix="fr-basic",
|
826
|
+
time_window={
|
827
|
+
"start_time": "2025-11-01T00:00:00Z",
|
828
|
+
"end_time": "2025-11-02T00:00:00Z",
|
829
|
+
},
|
830
|
+
aggregate_reservation={
|
831
|
+
"vm_family": "VM_FAMILY_CLOUD_TPU_DEVICE_CT3",
|
832
|
+
"workload_type": "UNSPECIFIED",
|
833
|
+
"reserved_resources": [
|
834
|
+
{
|
835
|
+
"accelerator": {
|
836
|
+
"accelerator_count": 32,
|
837
|
+
"accelerator_type": "projects/my-project-name/zones/us-central1-a/acceleratorTypes/ct3",
|
838
|
+
},
|
839
|
+
},
|
840
|
+
{
|
841
|
+
"accelerator": {
|
842
|
+
"accelerator_count": 2,
|
843
|
+
"accelerator_type": "projects/my-project-name/zones/us-central1-a/acceleratorTypes/ct3",
|
844
|
+
},
|
845
|
+
},
|
846
|
+
],
|
847
|
+
})
|
848
|
+
```
|
777
849
|
|
778
850
|
## Import
|
779
851
|
|
@@ -807,6 +879,8 @@ class FutureReservation(pulumi.CustomResource):
|
|
807
879
|
|
808
880
|
:param str resource_name: The name of the resource.
|
809
881
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
882
|
+
:param pulumi.Input[Union['FutureReservationAggregateReservationArgs', 'FutureReservationAggregateReservationArgsDict']] aggregate_reservation: Aggregate reservation details for the future reservation.
|
883
|
+
Structure is documented below.
|
810
884
|
:param pulumi.Input[builtins.str] auto_created_reservations_delete_time: Future timestamp when the FR auto-created reservations will be deleted by Compute Engine.
|
811
885
|
:param pulumi.Input[Union['FutureReservationAutoCreatedReservationsDurationArgs', 'FutureReservationAutoCreatedReservationsDurationArgsDict']] auto_created_reservations_duration: Specifies the duration of auto-created reservations. It represents relative time to future reservation startTime when auto-created reservations will be automatically deleted by Compute Engine. Duration time unit is represented as a count of seconds and fractions of seconds at nanosecond resolution.
|
812
886
|
Structure is documented below.
|
@@ -873,6 +947,41 @@ class FutureReservation(pulumi.CustomResource):
|
|
873
947
|
},
|
874
948
|
})
|
875
949
|
```
|
950
|
+
### Future Reservation Aggregate Reservation
|
951
|
+
|
952
|
+
```python
|
953
|
+
import pulumi
|
954
|
+
import pulumi_gcp as gcp
|
955
|
+
|
956
|
+
gce_future_reservation = gcp.compute.FutureReservation("gce_future_reservation",
|
957
|
+
name="gce-future-reservation-aggregate-reservation",
|
958
|
+
project="my-project-name",
|
959
|
+
auto_delete_auto_created_reservations=True,
|
960
|
+
planning_status="DRAFT",
|
961
|
+
name_prefix="fr-basic",
|
962
|
+
time_window={
|
963
|
+
"start_time": "2025-11-01T00:00:00Z",
|
964
|
+
"end_time": "2025-11-02T00:00:00Z",
|
965
|
+
},
|
966
|
+
aggregate_reservation={
|
967
|
+
"vm_family": "VM_FAMILY_CLOUD_TPU_DEVICE_CT3",
|
968
|
+
"workload_type": "UNSPECIFIED",
|
969
|
+
"reserved_resources": [
|
970
|
+
{
|
971
|
+
"accelerator": {
|
972
|
+
"accelerator_count": 32,
|
973
|
+
"accelerator_type": "projects/my-project-name/zones/us-central1-a/acceleratorTypes/ct3",
|
974
|
+
},
|
975
|
+
},
|
976
|
+
{
|
977
|
+
"accelerator": {
|
978
|
+
"accelerator_count": 2,
|
979
|
+
"accelerator_type": "projects/my-project-name/zones/us-central1-a/acceleratorTypes/ct3",
|
980
|
+
},
|
981
|
+
},
|
982
|
+
],
|
983
|
+
})
|
984
|
+
```
|
876
985
|
|
877
986
|
## Import
|
878
987
|
|
@@ -919,6 +1028,7 @@ class FutureReservation(pulumi.CustomResource):
|
|
919
1028
|
def _internal_init(__self__,
|
920
1029
|
resource_name: str,
|
921
1030
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1031
|
+
aggregate_reservation: Optional[pulumi.Input[Union['FutureReservationAggregateReservationArgs', 'FutureReservationAggregateReservationArgsDict']]] = None,
|
922
1032
|
auto_created_reservations_delete_time: Optional[pulumi.Input[builtins.str]] = None,
|
923
1033
|
auto_created_reservations_duration: Optional[pulumi.Input[Union['FutureReservationAutoCreatedReservationsDurationArgs', 'FutureReservationAutoCreatedReservationsDurationArgsDict']]] = None,
|
924
1034
|
auto_delete_auto_created_reservations: Optional[pulumi.Input[builtins.bool]] = None,
|
@@ -945,6 +1055,7 @@ class FutureReservation(pulumi.CustomResource):
|
|
945
1055
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
946
1056
|
__props__ = FutureReservationArgs.__new__(FutureReservationArgs)
|
947
1057
|
|
1058
|
+
__props__.__dict__["aggregate_reservation"] = aggregate_reservation
|
948
1059
|
__props__.__dict__["auto_created_reservations_delete_time"] = auto_created_reservations_delete_time
|
949
1060
|
__props__.__dict__["auto_created_reservations_duration"] = auto_created_reservations_duration
|
950
1061
|
__props__.__dict__["auto_delete_auto_created_reservations"] = auto_delete_auto_created_reservations
|
@@ -979,6 +1090,7 @@ class FutureReservation(pulumi.CustomResource):
|
|
979
1090
|
def get(resource_name: str,
|
980
1091
|
id: pulumi.Input[str],
|
981
1092
|
opts: Optional[pulumi.ResourceOptions] = None,
|
1093
|
+
aggregate_reservation: Optional[pulumi.Input[Union['FutureReservationAggregateReservationArgs', 'FutureReservationAggregateReservationArgsDict']]] = None,
|
982
1094
|
auto_created_reservations_delete_time: Optional[pulumi.Input[builtins.str]] = None,
|
983
1095
|
auto_created_reservations_duration: Optional[pulumi.Input[Union['FutureReservationAutoCreatedReservationsDurationArgs', 'FutureReservationAutoCreatedReservationsDurationArgsDict']]] = None,
|
984
1096
|
auto_delete_auto_created_reservations: Optional[pulumi.Input[builtins.bool]] = None,
|
@@ -1008,6 +1120,8 @@ class FutureReservation(pulumi.CustomResource):
|
|
1008
1120
|
:param str resource_name: The unique name of the resulting resource.
|
1009
1121
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
1010
1122
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
1123
|
+
:param pulumi.Input[Union['FutureReservationAggregateReservationArgs', 'FutureReservationAggregateReservationArgsDict']] aggregate_reservation: Aggregate reservation details for the future reservation.
|
1124
|
+
Structure is documented below.
|
1011
1125
|
:param pulumi.Input[builtins.str] auto_created_reservations_delete_time: Future timestamp when the FR auto-created reservations will be deleted by Compute Engine.
|
1012
1126
|
:param pulumi.Input[Union['FutureReservationAutoCreatedReservationsDurationArgs', 'FutureReservationAutoCreatedReservationsDurationArgsDict']] auto_created_reservations_duration: Specifies the duration of auto-created reservations. It represents relative time to future reservation startTime when auto-created reservations will be automatically deleted by Compute Engine. Duration time unit is represented as a count of seconds and fractions of seconds at nanosecond resolution.
|
1013
1127
|
Structure is documented below.
|
@@ -1052,6 +1166,7 @@ class FutureReservation(pulumi.CustomResource):
|
|
1052
1166
|
|
1053
1167
|
__props__ = _FutureReservationState.__new__(_FutureReservationState)
|
1054
1168
|
|
1169
|
+
__props__.__dict__["aggregate_reservation"] = aggregate_reservation
|
1055
1170
|
__props__.__dict__["auto_created_reservations_delete_time"] = auto_created_reservations_delete_time
|
1056
1171
|
__props__.__dict__["auto_created_reservations_duration"] = auto_created_reservations_duration
|
1057
1172
|
__props__.__dict__["auto_delete_auto_created_reservations"] = auto_delete_auto_created_reservations
|
@@ -1076,6 +1191,15 @@ class FutureReservation(pulumi.CustomResource):
|
|
1076
1191
|
__props__.__dict__["zone"] = zone
|
1077
1192
|
return FutureReservation(resource_name, opts=opts, __props__=__props__)
|
1078
1193
|
|
1194
|
+
@property
|
1195
|
+
@pulumi.getter(name="aggregateReservation")
|
1196
|
+
def aggregate_reservation(self) -> pulumi.Output[Optional['outputs.FutureReservationAggregateReservation']]:
|
1197
|
+
"""
|
1198
|
+
Aggregate reservation details for the future reservation.
|
1199
|
+
Structure is documented below.
|
1200
|
+
"""
|
1201
|
+
return pulumi.get(self, "aggregate_reservation")
|
1202
|
+
|
1079
1203
|
@property
|
1080
1204
|
@pulumi.getter(name="autoCreatedReservationsDeleteTime")
|
1081
1205
|
def auto_created_reservations_delete_time(self) -> pulumi.Output[Optional[builtins.str]]:
|