pulumi-gcp 8.1.0a1726293903__py3-none-any.whl → 8.1.0a1726492828__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 +24 -0
- pulumi_gcp/alloydb/_inputs.py +94 -0
- pulumi_gcp/alloydb/cluster.py +94 -1
- pulumi_gcp/alloydb/outputs.py +79 -0
- pulumi_gcp/assuredworkloads/workload.py +135 -16
- pulumi_gcp/backupdisasterrecovery/__init__.py +1 -0
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +1203 -0
- pulumi_gcp/bigquery/_inputs.py +33 -0
- pulumi_gcp/bigquery/data_transfer_config.py +134 -6
- pulumi_gcp/bigquery/outputs.py +36 -0
- pulumi_gcp/bigqueryanalyticshub/_inputs.py +169 -7
- pulumi_gcp/bigqueryanalyticshub/data_exchange.py +96 -3
- pulumi_gcp/bigqueryanalyticshub/listing.py +114 -0
- pulumi_gcp/bigqueryanalyticshub/outputs.py +138 -5
- pulumi_gcp/bigtable/_inputs.py +21 -1
- pulumi_gcp/bigtable/outputs.py +13 -1
- pulumi_gcp/bigtable/table.py +34 -0
- pulumi_gcp/certificateauthority/authority.py +14 -7
- pulumi_gcp/certificatemanager/__init__.py +1 -0
- pulumi_gcp/certificatemanager/certificate.py +28 -0
- pulumi_gcp/certificatemanager/get_certificates.py +150 -0
- pulumi_gcp/certificatemanager/outputs.py +322 -0
- pulumi_gcp/cloudbuild/_inputs.py +6 -6
- pulumi_gcp/cloudbuild/outputs.py +4 -4
- pulumi_gcp/cloudrun/_inputs.py +6 -12
- pulumi_gcp/cloudrun/outputs.py +8 -16
- pulumi_gcp/cloudrunv2/_inputs.py +72 -15
- pulumi_gcp/cloudrunv2/outputs.py +82 -16
- pulumi_gcp/cloudrunv2/service.py +50 -4
- pulumi_gcp/cloudtasks/_inputs.py +630 -0
- pulumi_gcp/cloudtasks/outputs.py +479 -0
- pulumi_gcp/cloudtasks/queue.py +238 -0
- pulumi_gcp/compute/_inputs.py +129 -9
- pulumi_gcp/compute/get_instance.py +1 -1
- pulumi_gcp/compute/health_check.py +114 -0
- pulumi_gcp/compute/instance.py +86 -4
- pulumi_gcp/compute/instance_template.py +66 -0
- pulumi_gcp/compute/interconnect.py +28 -21
- pulumi_gcp/compute/node_template.py +93 -0
- pulumi_gcp/compute/outputs.py +108 -6
- pulumi_gcp/compute/target_https_proxy.py +28 -0
- pulumi_gcp/container/_inputs.py +140 -3
- pulumi_gcp/container/attached_cluster.py +7 -7
- pulumi_gcp/container/outputs.py +174 -2
- pulumi_gcp/databasemigrationservice/_inputs.py +176 -148
- pulumi_gcp/databasemigrationservice/connection_profile.py +206 -0
- pulumi_gcp/databasemigrationservice/outputs.py +109 -87
- pulumi_gcp/dataloss/_inputs.py +353 -1
- pulumi_gcp/dataloss/outputs.py +274 -3
- pulumi_gcp/dataproc/_inputs.py +27 -27
- pulumi_gcp/dataproc/outputs.py +18 -18
- pulumi_gcp/datastream/_inputs.py +69 -1
- pulumi_gcp/datastream/outputs.py +44 -2
- pulumi_gcp/datastream/stream.py +194 -7
- pulumi_gcp/discoveryengine/_inputs.py +188 -0
- pulumi_gcp/discoveryengine/data_store.py +14 -14
- pulumi_gcp/discoveryengine/outputs.py +153 -1
- pulumi_gcp/firebase/database_instance.py +7 -7
- pulumi_gcp/gkehub/_inputs.py +25 -1
- pulumi_gcp/gkehub/feature_membership.py +12 -6
- pulumi_gcp/gkehub/outputs.py +17 -1
- pulumi_gcp/iam/_inputs.py +196 -0
- pulumi_gcp/iam/get_workload_identity_pool_provider.py +13 -3
- pulumi_gcp/iam/outputs.py +295 -0
- pulumi_gcp/iam/workload_identity_pool_provider.py +164 -3
- pulumi_gcp/kms/__init__.py +2 -0
- pulumi_gcp/kms/autokey_config.py +10 -2
- pulumi_gcp/kms/get_crypto_key_latest_version.py +222 -0
- pulumi_gcp/kms/get_crypto_key_versions.py +175 -0
- pulumi_gcp/kms/outputs.py +164 -0
- pulumi_gcp/netapp/active_directory.py +6 -6
- pulumi_gcp/netapp/backup.py +6 -6
- pulumi_gcp/netapp/backup_policy.py +6 -6
- pulumi_gcp/netapp/backup_vault.py +6 -6
- pulumi_gcp/netapp/storage_pool.py +4 -4
- pulumi_gcp/netapp/volume.py +7 -0
- pulumi_gcp/networkconnectivity/_inputs.py +21 -1
- pulumi_gcp/networkconnectivity/outputs.py +15 -1
- pulumi_gcp/networkconnectivity/spoke.py +8 -0
- pulumi_gcp/networksecurity/client_tls_policy.py +24 -22
- pulumi_gcp/networksecurity/server_tls_policy.py +20 -32
- pulumi_gcp/organizations/get_project.py +13 -3
- pulumi_gcp/organizations/project.py +88 -3
- pulumi_gcp/parallelstore/instance.py +121 -121
- pulumi_gcp/projects/iam_member_remove.py +26 -0
- pulumi_gcp/projects/usage_export_bucket.py +38 -0
- pulumi_gcp/pubsub/_inputs.py +40 -0
- pulumi_gcp/pubsub/outputs.py +51 -1
- pulumi_gcp/pubsub/subscription.py +6 -0
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/_inputs.py +419 -0
- pulumi_gcp/redis/cluster.py +123 -0
- pulumi_gcp/redis/outputs.py +315 -0
- pulumi_gcp/securitycenter/__init__.py +2 -0
- pulumi_gcp/securitycenter/v2_folder_scc_big_query_export.py +857 -0
- pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +4 -4
- pulumi_gcp/securitycenter/v2_project_scc_big_query_export.py +796 -0
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.1.0a1726492828.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.1.0a1726492828.dist-info}/RECORD +101 -95
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.1.0a1726492828.dist-info}/WHEEL +1 -1
- {pulumi_gcp-8.1.0a1726293903.dist-info → pulumi_gcp-8.1.0a1726492828.dist-info}/top_level.txt +0 -0
@@ -892,6 +892,10 @@ if not MYPY:
|
|
892
892
|
"""
|
893
893
|
IP ranges encompassing the subnets to be excluded from peering.
|
894
894
|
"""
|
895
|
+
include_export_ranges: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
896
|
+
"""
|
897
|
+
IP ranges allowed to be included from peering.
|
898
|
+
"""
|
895
899
|
elif False:
|
896
900
|
SpokeLinkedVpcNetworkArgsDict: TypeAlias = Mapping[str, Any]
|
897
901
|
|
@@ -899,14 +903,18 @@ elif False:
|
|
899
903
|
class SpokeLinkedVpcNetworkArgs:
|
900
904
|
def __init__(__self__, *,
|
901
905
|
uri: pulumi.Input[str],
|
902
|
-
exclude_export_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None
|
906
|
+
exclude_export_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
907
|
+
include_export_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
903
908
|
"""
|
904
909
|
:param pulumi.Input[str] uri: The URI of the VPC network resource.
|
905
910
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] exclude_export_ranges: IP ranges encompassing the subnets to be excluded from peering.
|
911
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] include_export_ranges: IP ranges allowed to be included from peering.
|
906
912
|
"""
|
907
913
|
pulumi.set(__self__, "uri", uri)
|
908
914
|
if exclude_export_ranges is not None:
|
909
915
|
pulumi.set(__self__, "exclude_export_ranges", exclude_export_ranges)
|
916
|
+
if include_export_ranges is not None:
|
917
|
+
pulumi.set(__self__, "include_export_ranges", include_export_ranges)
|
910
918
|
|
911
919
|
@property
|
912
920
|
@pulumi.getter
|
@@ -932,6 +940,18 @@ class SpokeLinkedVpcNetworkArgs:
|
|
932
940
|
def exclude_export_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
933
941
|
pulumi.set(self, "exclude_export_ranges", value)
|
934
942
|
|
943
|
+
@property
|
944
|
+
@pulumi.getter(name="includeExportRanges")
|
945
|
+
def include_export_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
946
|
+
"""
|
947
|
+
IP ranges allowed to be included from peering.
|
948
|
+
"""
|
949
|
+
return pulumi.get(self, "include_export_ranges")
|
950
|
+
|
951
|
+
@include_export_ranges.setter
|
952
|
+
def include_export_ranges(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
953
|
+
pulumi.set(self, "include_export_ranges", value)
|
954
|
+
|
935
955
|
|
936
956
|
if not MYPY:
|
937
957
|
class SpokeLinkedVpnTunnelsArgsDict(TypedDict):
|
@@ -659,6 +659,8 @@ class SpokeLinkedVpcNetwork(dict):
|
|
659
659
|
suggest = None
|
660
660
|
if key == "excludeExportRanges":
|
661
661
|
suggest = "exclude_export_ranges"
|
662
|
+
elif key == "includeExportRanges":
|
663
|
+
suggest = "include_export_ranges"
|
662
664
|
|
663
665
|
if suggest:
|
664
666
|
pulumi.log.warn(f"Key '{key}' not found in SpokeLinkedVpcNetwork. Access the value via the '{suggest}' property getter instead.")
|
@@ -673,14 +675,18 @@ class SpokeLinkedVpcNetwork(dict):
|
|
673
675
|
|
674
676
|
def __init__(__self__, *,
|
675
677
|
uri: str,
|
676
|
-
exclude_export_ranges: Optional[Sequence[str]] = None
|
678
|
+
exclude_export_ranges: Optional[Sequence[str]] = None,
|
679
|
+
include_export_ranges: Optional[Sequence[str]] = None):
|
677
680
|
"""
|
678
681
|
:param str uri: The URI of the VPC network resource.
|
679
682
|
:param Sequence[str] exclude_export_ranges: IP ranges encompassing the subnets to be excluded from peering.
|
683
|
+
:param Sequence[str] include_export_ranges: IP ranges allowed to be included from peering.
|
680
684
|
"""
|
681
685
|
pulumi.set(__self__, "uri", uri)
|
682
686
|
if exclude_export_ranges is not None:
|
683
687
|
pulumi.set(__self__, "exclude_export_ranges", exclude_export_ranges)
|
688
|
+
if include_export_ranges is not None:
|
689
|
+
pulumi.set(__self__, "include_export_ranges", include_export_ranges)
|
684
690
|
|
685
691
|
@property
|
686
692
|
@pulumi.getter
|
@@ -698,6 +704,14 @@ class SpokeLinkedVpcNetwork(dict):
|
|
698
704
|
"""
|
699
705
|
return pulumi.get(self, "exclude_export_ranges")
|
700
706
|
|
707
|
+
@property
|
708
|
+
@pulumi.getter(name="includeExportRanges")
|
709
|
+
def include_export_ranges(self) -> Optional[Sequence[str]]:
|
710
|
+
"""
|
711
|
+
IP ranges allowed to be included from peering.
|
712
|
+
"""
|
713
|
+
return pulumi.get(self, "include_export_ranges")
|
714
|
+
|
701
715
|
|
702
716
|
@pulumi.output_type
|
703
717
|
class SpokeLinkedVpnTunnels(dict):
|
@@ -545,6 +545,10 @@ class Spoke(pulumi.CustomResource):
|
|
545
545
|
"198.51.100.0/24",
|
546
546
|
"10.10.0.0/16",
|
547
547
|
],
|
548
|
+
"include_export_ranges": [
|
549
|
+
"198.51.100.0/23",
|
550
|
+
"10.0.0.0/8",
|
551
|
+
],
|
548
552
|
"uri": network.self_link,
|
549
553
|
})
|
550
554
|
```
|
@@ -694,6 +698,10 @@ class Spoke(pulumi.CustomResource):
|
|
694
698
|
"198.51.100.0/24",
|
695
699
|
"10.10.0.0/16",
|
696
700
|
],
|
701
|
+
"include_export_ranges": [
|
702
|
+
"198.51.100.0/23",
|
703
|
+
"10.0.0.0/8",
|
704
|
+
],
|
697
705
|
"uri": network.self_link,
|
698
706
|
})
|
699
707
|
```
|
@@ -407,6 +407,14 @@ class ClientTlsPolicy(pulumi.CustomResource):
|
|
407
407
|
sni: Optional[pulumi.Input[str]] = None,
|
408
408
|
__props__=None):
|
409
409
|
"""
|
410
|
+
ClientTlsPolicy is a resource that specifies how a client should authenticate connections to backends of a service. This resource itself does not affect configuration unless it is attached to a backend service resource.
|
411
|
+
|
412
|
+
To get more information about ClientTlsPolicy, see:
|
413
|
+
|
414
|
+
* [API documentation](https://cloud.google.com/traffic-director/docs/reference/network-security/rest/v1beta1/projects.locations.clientTlsPolicies)
|
415
|
+
* How-to Guides
|
416
|
+
* [Service Security](https://cloud.google.com/traffic-director/docs/security-use-cases)
|
417
|
+
|
410
418
|
## Example Usage
|
411
419
|
|
412
420
|
### Network Security Client Tls Policy Basic
|
@@ -440,18 +448,11 @@ class ClientTlsPolicy(pulumi.CustomResource):
|
|
440
448
|
"plugin_instance": "google_cloud_private_spiffe",
|
441
449
|
},
|
442
450
|
},
|
443
|
-
server_validation_cas=[
|
444
|
-
{
|
445
|
-
"
|
446
|
-
"target_uri": "unix:mypath",
|
447
|
-
},
|
448
|
-
},
|
449
|
-
{
|
450
|
-
"grpc_endpoint": {
|
451
|
-
"target_uri": "unix:mypath1",
|
452
|
-
},
|
451
|
+
server_validation_cas=[{
|
452
|
+
"grpc_endpoint": {
|
453
|
+
"target_uri": "unix:mypath",
|
453
454
|
},
|
454
|
-
])
|
455
|
+
}])
|
455
456
|
```
|
456
457
|
|
457
458
|
## Import
|
@@ -505,6 +506,14 @@ class ClientTlsPolicy(pulumi.CustomResource):
|
|
505
506
|
args: Optional[ClientTlsPolicyArgs] = None,
|
506
507
|
opts: Optional[pulumi.ResourceOptions] = None):
|
507
508
|
"""
|
509
|
+
ClientTlsPolicy is a resource that specifies how a client should authenticate connections to backends of a service. This resource itself does not affect configuration unless it is attached to a backend service resource.
|
510
|
+
|
511
|
+
To get more information about ClientTlsPolicy, see:
|
512
|
+
|
513
|
+
* [API documentation](https://cloud.google.com/traffic-director/docs/reference/network-security/rest/v1beta1/projects.locations.clientTlsPolicies)
|
514
|
+
* How-to Guides
|
515
|
+
* [Service Security](https://cloud.google.com/traffic-director/docs/security-use-cases)
|
516
|
+
|
508
517
|
## Example Usage
|
509
518
|
|
510
519
|
### Network Security Client Tls Policy Basic
|
@@ -538,18 +547,11 @@ class ClientTlsPolicy(pulumi.CustomResource):
|
|
538
547
|
"plugin_instance": "google_cloud_private_spiffe",
|
539
548
|
},
|
540
549
|
},
|
541
|
-
server_validation_cas=[
|
542
|
-
{
|
543
|
-
"
|
544
|
-
"target_uri": "unix:mypath",
|
545
|
-
},
|
546
|
-
},
|
547
|
-
{
|
548
|
-
"grpc_endpoint": {
|
549
|
-
"target_uri": "unix:mypath1",
|
550
|
-
},
|
550
|
+
server_validation_cas=[{
|
551
|
+
"grpc_endpoint": {
|
552
|
+
"target_uri": "unix:mypath",
|
551
553
|
},
|
552
|
-
])
|
554
|
+
}])
|
553
555
|
```
|
554
556
|
|
555
557
|
## Import
|
@@ -419,6 +419,12 @@ class ServerTlsPolicy(pulumi.CustomResource):
|
|
419
419
|
server_certificate: Optional[pulumi.Input[Union['ServerTlsPolicyServerCertificateArgs', 'ServerTlsPolicyServerCertificateArgsDict']]] = None,
|
420
420
|
__props__=None):
|
421
421
|
"""
|
422
|
+
ClientTlsPolicy is a resource that specifies how a client should authenticate connections to backends of a service. This resource itself does not affect configuration unless it is attached to a backend service resource.
|
423
|
+
|
424
|
+
To get more information about ServerTlsPolicy, see:
|
425
|
+
|
426
|
+
* [API documentation](https://cloud.google.com/traffic-director/docs/reference/network-security/rest/v1beta1/projects.locations.serverTlsPolicies)
|
427
|
+
|
422
428
|
## Example Usage
|
423
429
|
|
424
430
|
### Network Security Server Tls Policy Basic
|
@@ -440,23 +446,11 @@ class ServerTlsPolicy(pulumi.CustomResource):
|
|
440
446
|
},
|
441
447
|
},
|
442
448
|
mtls_policy={
|
443
|
-
"client_validation_cas": [
|
444
|
-
{
|
445
|
-
"
|
446
|
-
"target_uri": "unix:mypath",
|
447
|
-
},
|
449
|
+
"client_validation_cas": [{
|
450
|
+
"grpc_endpoint": {
|
451
|
+
"target_uri": "unix:mypath",
|
448
452
|
},
|
449
|
-
|
450
|
-
"grpc_endpoint": {
|
451
|
-
"target_uri": "unix:abc/mypath",
|
452
|
-
},
|
453
|
-
},
|
454
|
-
{
|
455
|
-
"certificate_provider_instance": {
|
456
|
-
"plugin_instance": "google_cloud_private_spiffe",
|
457
|
-
},
|
458
|
-
},
|
459
|
-
],
|
453
|
+
}],
|
460
454
|
})
|
461
455
|
```
|
462
456
|
### Network Security Server Tls Policy Advanced
|
@@ -588,6 +582,12 @@ class ServerTlsPolicy(pulumi.CustomResource):
|
|
588
582
|
args: Optional[ServerTlsPolicyArgs] = None,
|
589
583
|
opts: Optional[pulumi.ResourceOptions] = None):
|
590
584
|
"""
|
585
|
+
ClientTlsPolicy is a resource that specifies how a client should authenticate connections to backends of a service. This resource itself does not affect configuration unless it is attached to a backend service resource.
|
586
|
+
|
587
|
+
To get more information about ServerTlsPolicy, see:
|
588
|
+
|
589
|
+
* [API documentation](https://cloud.google.com/traffic-director/docs/reference/network-security/rest/v1beta1/projects.locations.serverTlsPolicies)
|
590
|
+
|
591
591
|
## Example Usage
|
592
592
|
|
593
593
|
### Network Security Server Tls Policy Basic
|
@@ -609,23 +609,11 @@ class ServerTlsPolicy(pulumi.CustomResource):
|
|
609
609
|
},
|
610
610
|
},
|
611
611
|
mtls_policy={
|
612
|
-
"client_validation_cas": [
|
613
|
-
{
|
614
|
-
"
|
615
|
-
"target_uri": "unix:mypath",
|
616
|
-
},
|
612
|
+
"client_validation_cas": [{
|
613
|
+
"grpc_endpoint": {
|
614
|
+
"target_uri": "unix:mypath",
|
617
615
|
},
|
618
|
-
|
619
|
-
"grpc_endpoint": {
|
620
|
-
"target_uri": "unix:abc/mypath",
|
621
|
-
},
|
622
|
-
},
|
623
|
-
{
|
624
|
-
"certificate_provider_instance": {
|
625
|
-
"plugin_instance": "google_cloud_private_spiffe",
|
626
|
-
},
|
627
|
-
},
|
628
|
-
],
|
616
|
+
}],
|
629
617
|
})
|
630
618
|
```
|
631
619
|
### Network Security Server Tls Policy Advanced
|
@@ -26,7 +26,7 @@ class GetProjectResult:
|
|
26
26
|
"""
|
27
27
|
A collection of values returned by getProject.
|
28
28
|
"""
|
29
|
-
def __init__(__self__, auto_create_network=None, billing_account=None, deletion_policy=None, effective_labels=None, folder_id=None, id=None, labels=None, name=None, number=None, org_id=None, project_id=None, pulumi_labels=None):
|
29
|
+
def __init__(__self__, auto_create_network=None, billing_account=None, deletion_policy=None, effective_labels=None, folder_id=None, id=None, labels=None, name=None, number=None, org_id=None, project_id=None, pulumi_labels=None, tags=None):
|
30
30
|
if auto_create_network and not isinstance(auto_create_network, bool):
|
31
31
|
raise TypeError("Expected argument 'auto_create_network' to be a bool")
|
32
32
|
pulumi.set(__self__, "auto_create_network", auto_create_network)
|
@@ -63,6 +63,9 @@ class GetProjectResult:
|
|
63
63
|
if pulumi_labels and not isinstance(pulumi_labels, dict):
|
64
64
|
raise TypeError("Expected argument 'pulumi_labels' to be a dict")
|
65
65
|
pulumi.set(__self__, "pulumi_labels", pulumi_labels)
|
66
|
+
if tags and not isinstance(tags, dict):
|
67
|
+
raise TypeError("Expected argument 'tags' to be a dict")
|
68
|
+
pulumi.set(__self__, "tags", tags)
|
66
69
|
|
67
70
|
@property
|
68
71
|
@pulumi.getter(name="autoCreateNetwork")
|
@@ -130,6 +133,11 @@ class GetProjectResult:
|
|
130
133
|
def pulumi_labels(self) -> Mapping[str, str]:
|
131
134
|
return pulumi.get(self, "pulumi_labels")
|
132
135
|
|
136
|
+
@property
|
137
|
+
@pulumi.getter
|
138
|
+
def tags(self) -> Mapping[str, str]:
|
139
|
+
return pulumi.get(self, "tags")
|
140
|
+
|
133
141
|
|
134
142
|
class AwaitableGetProjectResult(GetProjectResult):
|
135
143
|
# pylint: disable=using-constant-test
|
@@ -148,7 +156,8 @@ class AwaitableGetProjectResult(GetProjectResult):
|
|
148
156
|
number=self.number,
|
149
157
|
org_id=self.org_id,
|
150
158
|
project_id=self.project_id,
|
151
|
-
pulumi_labels=self.pulumi_labels
|
159
|
+
pulumi_labels=self.pulumi_labels,
|
160
|
+
tags=self.tags)
|
152
161
|
|
153
162
|
|
154
163
|
def get_project(project_id: Optional[str] = None,
|
@@ -188,7 +197,8 @@ def get_project(project_id: Optional[str] = None,
|
|
188
197
|
number=pulumi.get(__ret__, 'number'),
|
189
198
|
org_id=pulumi.get(__ret__, 'org_id'),
|
190
199
|
project_id=pulumi.get(__ret__, 'project_id'),
|
191
|
-
pulumi_labels=pulumi.get(__ret__, 'pulumi_labels')
|
200
|
+
pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
|
201
|
+
tags=pulumi.get(__ret__, 'tags'))
|
192
202
|
|
193
203
|
|
194
204
|
@_utilities.lift_output_func(get_project)
|
@@ -26,7 +26,8 @@ class ProjectArgs:
|
|
26
26
|
labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
27
27
|
name: Optional[pulumi.Input[str]] = None,
|
28
28
|
org_id: Optional[pulumi.Input[str]] = None,
|
29
|
-
project_id: Optional[pulumi.Input[str]] = None
|
29
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
30
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
|
30
31
|
"""
|
31
32
|
The set of arguments for constructing a Project resource.
|
32
33
|
:param pulumi.Input[bool] auto_create_network: Create the 'default' network automatically. Default true. If set to false, the default network will be deleted. Note
|
@@ -53,6 +54,7 @@ class ProjectArgs:
|
|
53
54
|
this forces the project to be migrated to the newly specified
|
54
55
|
organization.
|
55
56
|
:param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
|
57
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
56
58
|
"""
|
57
59
|
if auto_create_network is not None:
|
58
60
|
pulumi.set(__self__, "auto_create_network", auto_create_network)
|
@@ -70,6 +72,8 @@ class ProjectArgs:
|
|
70
72
|
pulumi.set(__self__, "org_id", org_id)
|
71
73
|
if project_id is not None:
|
72
74
|
pulumi.set(__self__, "project_id", project_id)
|
75
|
+
if tags is not None:
|
76
|
+
pulumi.set(__self__, "tags", tags)
|
73
77
|
|
74
78
|
@property
|
75
79
|
@pulumi.getter(name="autoCreateNetwork")
|
@@ -181,6 +185,18 @@ class ProjectArgs:
|
|
181
185
|
def project_id(self, value: Optional[pulumi.Input[str]]):
|
182
186
|
pulumi.set(self, "project_id", value)
|
183
187
|
|
188
|
+
@property
|
189
|
+
@pulumi.getter
|
190
|
+
def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
191
|
+
"""
|
192
|
+
A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
193
|
+
"""
|
194
|
+
return pulumi.get(self, "tags")
|
195
|
+
|
196
|
+
@tags.setter
|
197
|
+
def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
198
|
+
pulumi.set(self, "tags", value)
|
199
|
+
|
184
200
|
|
185
201
|
@pulumi.input_type
|
186
202
|
class _ProjectState:
|
@@ -195,7 +211,8 @@ class _ProjectState:
|
|
195
211
|
number: Optional[pulumi.Input[str]] = None,
|
196
212
|
org_id: Optional[pulumi.Input[str]] = None,
|
197
213
|
project_id: Optional[pulumi.Input[str]] = None,
|
198
|
-
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None
|
214
|
+
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
215
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
|
199
216
|
"""
|
200
217
|
Input properties used for looking up and filtering Project resources.
|
201
218
|
:param pulumi.Input[bool] auto_create_network: Create the 'default' network automatically. Default true. If set to false, the default network will be deleted. Note
|
@@ -225,6 +242,7 @@ class _ProjectState:
|
|
225
242
|
organization.
|
226
243
|
:param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
|
227
244
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource and default labels configured on the provider.
|
245
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
228
246
|
"""
|
229
247
|
if auto_create_network is not None:
|
230
248
|
pulumi.set(__self__, "auto_create_network", auto_create_network)
|
@@ -248,6 +266,8 @@ class _ProjectState:
|
|
248
266
|
pulumi.set(__self__, "project_id", project_id)
|
249
267
|
if pulumi_labels is not None:
|
250
268
|
pulumi.set(__self__, "pulumi_labels", pulumi_labels)
|
269
|
+
if tags is not None:
|
270
|
+
pulumi.set(__self__, "tags", tags)
|
251
271
|
|
252
272
|
@property
|
253
273
|
@pulumi.getter(name="autoCreateNetwork")
|
@@ -395,6 +415,18 @@ class _ProjectState:
|
|
395
415
|
def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
396
416
|
pulumi.set(self, "pulumi_labels", value)
|
397
417
|
|
418
|
+
@property
|
419
|
+
@pulumi.getter
|
420
|
+
def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
421
|
+
"""
|
422
|
+
A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
423
|
+
"""
|
424
|
+
return pulumi.get(self, "tags")
|
425
|
+
|
426
|
+
@tags.setter
|
427
|
+
def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
428
|
+
pulumi.set(self, "tags", value)
|
429
|
+
|
398
430
|
|
399
431
|
class Project(pulumi.CustomResource):
|
400
432
|
@overload
|
@@ -409,6 +441,7 @@ class Project(pulumi.CustomResource):
|
|
409
441
|
name: Optional[pulumi.Input[str]] = None,
|
410
442
|
org_id: Optional[pulumi.Input[str]] = None,
|
411
443
|
project_id: Optional[pulumi.Input[str]] = None,
|
444
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
412
445
|
__props__=None):
|
413
446
|
"""
|
414
447
|
Allows creation and management of a Google Cloud Platform project.
|
@@ -423,6 +456,10 @@ class Project(pulumi.CustomResource):
|
|
423
456
|
|
424
457
|
> This resource reads the specified billing account on every pulumi up and plan operation so you must have permissions on the specified billing account.
|
425
458
|
|
459
|
+
> It is recommended to use the `constraints/compute.skipDefaultNetworkCreation` [constraint](https://www.terraform.io/docs/providers/google/r/google_organization_policy.html) to remove the default network instead of setting `auto_create_network` to false, when possible.
|
460
|
+
|
461
|
+
> It may take a while for the attached tag bindings to be deleted after the project is scheduled to be deleted.
|
462
|
+
|
426
463
|
To get more information about projects, see:
|
427
464
|
|
428
465
|
* [API documentation](https://cloud.google.com/resource-manager/reference/rest/v1/projects)
|
@@ -456,6 +493,21 @@ class Project(pulumi.CustomResource):
|
|
456
493
|
folder_id=department1.name)
|
457
494
|
```
|
458
495
|
|
496
|
+
To create a project with a tag
|
497
|
+
|
498
|
+
```python
|
499
|
+
import pulumi
|
500
|
+
import pulumi_gcp as gcp
|
501
|
+
|
502
|
+
my_project = gcp.organizations.Project("my_project",
|
503
|
+
name="My Project",
|
504
|
+
project_id="your-project-id",
|
505
|
+
org_id="1234567",
|
506
|
+
tags={
|
507
|
+
"1234567/env": "staging",
|
508
|
+
})
|
509
|
+
```
|
510
|
+
|
459
511
|
## Import
|
460
512
|
|
461
513
|
Projects can be imported using the `project_id`, e.g.
|
@@ -494,6 +546,7 @@ class Project(pulumi.CustomResource):
|
|
494
546
|
this forces the project to be migrated to the newly specified
|
495
547
|
organization.
|
496
548
|
:param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
|
549
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
497
550
|
"""
|
498
551
|
...
|
499
552
|
@overload
|
@@ -514,6 +567,10 @@ class Project(pulumi.CustomResource):
|
|
514
567
|
|
515
568
|
> This resource reads the specified billing account on every pulumi up and plan operation so you must have permissions on the specified billing account.
|
516
569
|
|
570
|
+
> It is recommended to use the `constraints/compute.skipDefaultNetworkCreation` [constraint](https://www.terraform.io/docs/providers/google/r/google_organization_policy.html) to remove the default network instead of setting `auto_create_network` to false, when possible.
|
571
|
+
|
572
|
+
> It may take a while for the attached tag bindings to be deleted after the project is scheduled to be deleted.
|
573
|
+
|
517
574
|
To get more information about projects, see:
|
518
575
|
|
519
576
|
* [API documentation](https://cloud.google.com/resource-manager/reference/rest/v1/projects)
|
@@ -547,6 +604,21 @@ class Project(pulumi.CustomResource):
|
|
547
604
|
folder_id=department1.name)
|
548
605
|
```
|
549
606
|
|
607
|
+
To create a project with a tag
|
608
|
+
|
609
|
+
```python
|
610
|
+
import pulumi
|
611
|
+
import pulumi_gcp as gcp
|
612
|
+
|
613
|
+
my_project = gcp.organizations.Project("my_project",
|
614
|
+
name="My Project",
|
615
|
+
project_id="your-project-id",
|
616
|
+
org_id="1234567",
|
617
|
+
tags={
|
618
|
+
"1234567/env": "staging",
|
619
|
+
})
|
620
|
+
```
|
621
|
+
|
550
622
|
## Import
|
551
623
|
|
552
624
|
Projects can be imported using the `project_id`, e.g.
|
@@ -582,6 +654,7 @@ class Project(pulumi.CustomResource):
|
|
582
654
|
name: Optional[pulumi.Input[str]] = None,
|
583
655
|
org_id: Optional[pulumi.Input[str]] = None,
|
584
656
|
project_id: Optional[pulumi.Input[str]] = None,
|
657
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
585
658
|
__props__=None):
|
586
659
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
587
660
|
if not isinstance(opts, pulumi.ResourceOptions):
|
@@ -599,6 +672,7 @@ class Project(pulumi.CustomResource):
|
|
599
672
|
__props__.__dict__["name"] = name
|
600
673
|
__props__.__dict__["org_id"] = org_id
|
601
674
|
__props__.__dict__["project_id"] = project_id
|
675
|
+
__props__.__dict__["tags"] = tags
|
602
676
|
__props__.__dict__["effective_labels"] = None
|
603
677
|
__props__.__dict__["number"] = None
|
604
678
|
__props__.__dict__["pulumi_labels"] = None
|
@@ -624,7 +698,8 @@ class Project(pulumi.CustomResource):
|
|
624
698
|
number: Optional[pulumi.Input[str]] = None,
|
625
699
|
org_id: Optional[pulumi.Input[str]] = None,
|
626
700
|
project_id: Optional[pulumi.Input[str]] = None,
|
627
|
-
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None
|
701
|
+
pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
702
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None) -> 'Project':
|
628
703
|
"""
|
629
704
|
Get an existing Project resource's state with the given name, id, and optional extra
|
630
705
|
properties used to qualify the lookup.
|
@@ -659,6 +734,7 @@ class Project(pulumi.CustomResource):
|
|
659
734
|
organization.
|
660
735
|
:param pulumi.Input[str] project_id: The project ID. Changing this forces a new project to be created.
|
661
736
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource and default labels configured on the provider.
|
737
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
662
738
|
"""
|
663
739
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
664
740
|
|
@@ -675,6 +751,7 @@ class Project(pulumi.CustomResource):
|
|
675
751
|
__props__.__dict__["org_id"] = org_id
|
676
752
|
__props__.__dict__["project_id"] = project_id
|
677
753
|
__props__.__dict__["pulumi_labels"] = pulumi_labels
|
754
|
+
__props__.__dict__["tags"] = tags
|
678
755
|
return Project(resource_name, opts=opts, __props__=__props__)
|
679
756
|
|
680
757
|
@property
|
@@ -779,3 +856,11 @@ class Project(pulumi.CustomResource):
|
|
779
856
|
"""
|
780
857
|
return pulumi.get(self, "pulumi_labels")
|
781
858
|
|
859
|
+
@property
|
860
|
+
@pulumi.getter
|
861
|
+
def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
|
862
|
+
"""
|
863
|
+
A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored when empty. The field is immutable and causes resource replacement when mutated.
|
864
|
+
"""
|
865
|
+
return pulumi.get(self, "tags")
|
866
|
+
|