pulumi-gcp 7.30.2__py3-none-any.whl → 7.31.0__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 +40 -0
- pulumi_gcp/applicationintegration/auth_config.py +2 -2
- pulumi_gcp/bigquery/reservation_assignment.py +48 -30
- pulumi_gcp/certificateauthority/certificate_template.py +2 -2
- pulumi_gcp/certificatemanager/_inputs.py +33 -0
- pulumi_gcp/certificatemanager/outputs.py +36 -0
- pulumi_gcp/certificatemanager/trust_config.py +107 -0
- pulumi_gcp/compute/_inputs.py +3 -6
- pulumi_gcp/compute/ca_external_account_key.py +2 -2
- pulumi_gcp/compute/get_health_check.py +11 -1
- pulumi_gcp/compute/global_forwarding_rule.py +2 -4
- pulumi_gcp/compute/health_check.py +124 -0
- pulumi_gcp/compute/instance.py +14 -14
- pulumi_gcp/compute/instance_group_membership.py +2 -2
- pulumi_gcp/compute/outputs.py +4 -8
- pulumi_gcp/compute/region_network_endpoint.py +2 -2
- pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
- pulumi_gcp/compute/subnetwork.py +2 -2
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +3 -3
- pulumi_gcp/container/outputs.py +4 -4
- pulumi_gcp/containeranalysis/note.py +2 -2
- pulumi_gcp/dataloss/_inputs.py +3 -0
- pulumi_gcp/dataloss/outputs.py +2 -0
- pulumi_gcp/dataloss/prevention_job_trigger.py +90 -0
- pulumi_gcp/dataplex/_inputs.py +56 -0
- pulumi_gcp/dataplex/datascan.py +12 -0
- pulumi_gcp/dataplex/outputs.py +52 -0
- pulumi_gcp/filestore/backup.py +2 -2
- pulumi_gcp/filestore/instance.py +2 -2
- pulumi_gcp/filestore/snapshot.py +2 -2
- pulumi_gcp/gkehub/_inputs.py +20 -0
- pulumi_gcp/gkehub/outputs.py +12 -0
- pulumi_gcp/kms/__init__.py +2 -0
- pulumi_gcp/kms/crypto_key.py +7 -7
- pulumi_gcp/kms/get_crypto_keys.py +143 -0
- pulumi_gcp/kms/get_key_rings.py +119 -0
- pulumi_gcp/kms/outputs.py +270 -0
- pulumi_gcp/logging/_inputs.py +12 -12
- pulumi_gcp/logging/folder_bucket_config.py +6 -6
- pulumi_gcp/logging/organization_bucket_config.py +6 -6
- pulumi_gcp/logging/outputs.py +8 -8
- pulumi_gcp/logging/project_bucket_config.py +6 -6
- pulumi_gcp/looker/instance.py +2 -2
- pulumi_gcp/monitoring/custom_service.py +2 -2
- pulumi_gcp/monitoring/generic_service.py +2 -2
- pulumi_gcp/monitoring/notification_channel.py +2 -2
- pulumi_gcp/monitoring/slo.py +2 -2
- pulumi_gcp/netapp/storage_pool.py +132 -53
- pulumi_gcp/netapp/volume.py +60 -4
- pulumi_gcp/networksecurity/address_group.py +85 -1
- pulumi_gcp/networksecurity/firewall_endpoint.py +2 -2
- pulumi_gcp/networksecurity/firewall_endpoint_association.py +2 -2
- pulumi_gcp/networksecurity/security_profile_group.py +2 -2
- pulumi_gcp/orgpolicy/_inputs.py +40 -10
- pulumi_gcp/orgpolicy/outputs.py +28 -8
- pulumi_gcp/orgpolicy/policy.py +52 -35
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/_inputs.py +3 -3
- pulumi_gcp/pubsub/outputs.py +4 -4
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/securesourcemanager/__init__.py +5 -0
- pulumi_gcp/securesourcemanager/_inputs.py +284 -0
- pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +177 -0
- pulumi_gcp/securesourcemanager/outputs.py +202 -0
- pulumi_gcp/securesourcemanager/repository.py +715 -0
- pulumi_gcp/securesourcemanager/repository_iam_binding.py +804 -0
- pulumi_gcp/securesourcemanager/repository_iam_member.py +804 -0
- pulumi_gcp/securesourcemanager/repository_iam_policy.py +643 -0
- pulumi_gcp/securitycenter/__init__.py +1 -0
- pulumi_gcp/securitycenter/_inputs.py +93 -0
- pulumi_gcp/securitycenter/outputs.py +59 -0
- pulumi_gcp/securitycenter/v2_organization_notification_config.py +576 -0
- pulumi_gcp/securityposture/posture_deployment.py +0 -78
- pulumi_gcp/servicenetworking/vpc_service_controls.py +2 -2
- pulumi_gcp/vertex/_inputs.py +21 -1
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +222 -0
- pulumi_gcp/vertex/outputs.py +15 -1
- pulumi_gcp/workstations/_inputs.py +33 -1
- pulumi_gcp/workstations/outputs.py +23 -1
- pulumi_gcp/workstations/workstation_config.py +18 -0
- {pulumi_gcp-7.30.2.dist-info → pulumi_gcp-7.31.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.30.2.dist-info → pulumi_gcp-7.31.0.dist-info}/RECORD +86 -78
- {pulumi_gcp-7.30.2.dist-info → pulumi_gcp-7.31.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.30.2.dist-info → pulumi_gcp-7.31.0.dist-info}/top_level.txt +0 -0
pulumi_gcp/kms/crypto_key.py
CHANGED
@@ -41,7 +41,7 @@ class CryptoKeyArgs:
|
|
41
41
|
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
42
42
|
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
43
43
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
44
|
-
If not specified at creation time, the default duration is
|
44
|
+
If not specified at creation time, the default duration is 30 days.
|
45
45
|
:param pulumi.Input[bool] import_only: Whether this key may contain imported versions only.
|
46
46
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels with user-defined metadata to apply to this resource.
|
47
47
|
|
@@ -116,7 +116,7 @@ class CryptoKeyArgs:
|
|
116
116
|
def destroy_scheduled_duration(self) -> Optional[pulumi.Input[str]]:
|
117
117
|
"""
|
118
118
|
The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
119
|
-
If not specified at creation time, the default duration is
|
119
|
+
If not specified at creation time, the default duration is 30 days.
|
120
120
|
"""
|
121
121
|
return pulumi.get(self, "destroy_scheduled_duration")
|
122
122
|
|
@@ -242,7 +242,7 @@ class _CryptoKeyState:
|
|
242
242
|
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
243
243
|
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
244
244
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
245
|
-
If not specified at creation time, the default duration is
|
245
|
+
If not specified at creation time, the default duration is 30 days.
|
246
246
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
247
247
|
:param pulumi.Input[bool] import_only: Whether this key may contain imported versions only.
|
248
248
|
:param pulumi.Input[str] key_ring: The KeyRing that this key belongs to.
|
@@ -319,7 +319,7 @@ class _CryptoKeyState:
|
|
319
319
|
def destroy_scheduled_duration(self) -> Optional[pulumi.Input[str]]:
|
320
320
|
"""
|
321
321
|
The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
322
|
-
If not specified at creation time, the default duration is
|
322
|
+
If not specified at creation time, the default duration is 30 days.
|
323
323
|
"""
|
324
324
|
return pulumi.get(self, "destroy_scheduled_duration")
|
325
325
|
|
@@ -568,7 +568,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
568
568
|
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
569
569
|
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
570
570
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
571
|
-
If not specified at creation time, the default duration is
|
571
|
+
If not specified at creation time, the default duration is 30 days.
|
572
572
|
:param pulumi.Input[bool] import_only: Whether this key may contain imported versions only.
|
573
573
|
:param pulumi.Input[str] key_ring: The KeyRing that this key belongs to.
|
574
574
|
Format: `'projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}'`.
|
@@ -752,7 +752,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
752
752
|
:param pulumi.Input[str] crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
753
753
|
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
754
754
|
:param pulumi.Input[str] destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
755
|
-
If not specified at creation time, the default duration is
|
755
|
+
If not specified at creation time, the default duration is 30 days.
|
756
756
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
|
757
757
|
:param pulumi.Input[bool] import_only: Whether this key may contain imported versions only.
|
758
758
|
:param pulumi.Input[str] key_ring: The KeyRing that this key belongs to.
|
@@ -817,7 +817,7 @@ class CryptoKey(pulumi.CustomResource):
|
|
817
817
|
def destroy_scheduled_duration(self) -> pulumi.Output[str]:
|
818
818
|
"""
|
819
819
|
The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
820
|
-
If not specified at creation time, the default duration is
|
820
|
+
If not specified at creation time, the default duration is 30 days.
|
821
821
|
"""
|
822
822
|
return pulumi.get(self, "destroy_scheduled_duration")
|
823
823
|
|
@@ -0,0 +1,143 @@
|
|
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
|
+
|
18
|
+
__all__ = [
|
19
|
+
'GetCryptoKeysResult',
|
20
|
+
'AwaitableGetCryptoKeysResult',
|
21
|
+
'get_crypto_keys',
|
22
|
+
'get_crypto_keys_output',
|
23
|
+
]
|
24
|
+
|
25
|
+
@pulumi.output_type
|
26
|
+
class GetCryptoKeysResult:
|
27
|
+
"""
|
28
|
+
A collection of values returned by getCryptoKeys.
|
29
|
+
"""
|
30
|
+
def __init__(__self__, filter=None, id=None, key_ring=None, keys=None):
|
31
|
+
if filter and not isinstance(filter, str):
|
32
|
+
raise TypeError("Expected argument 'filter' to be a str")
|
33
|
+
pulumi.set(__self__, "filter", filter)
|
34
|
+
if id and not isinstance(id, str):
|
35
|
+
raise TypeError("Expected argument 'id' to be a str")
|
36
|
+
pulumi.set(__self__, "id", id)
|
37
|
+
if key_ring and not isinstance(key_ring, str):
|
38
|
+
raise TypeError("Expected argument 'key_ring' to be a str")
|
39
|
+
pulumi.set(__self__, "key_ring", key_ring)
|
40
|
+
if keys and not isinstance(keys, list):
|
41
|
+
raise TypeError("Expected argument 'keys' to be a list")
|
42
|
+
pulumi.set(__self__, "keys", keys)
|
43
|
+
|
44
|
+
@property
|
45
|
+
@pulumi.getter
|
46
|
+
def filter(self) -> Optional[str]:
|
47
|
+
return pulumi.get(self, "filter")
|
48
|
+
|
49
|
+
@property
|
50
|
+
@pulumi.getter
|
51
|
+
def id(self) -> str:
|
52
|
+
"""
|
53
|
+
The provider-assigned unique ID for this managed resource.
|
54
|
+
"""
|
55
|
+
return pulumi.get(self, "id")
|
56
|
+
|
57
|
+
@property
|
58
|
+
@pulumi.getter(name="keyRing")
|
59
|
+
def key_ring(self) -> str:
|
60
|
+
return pulumi.get(self, "key_ring")
|
61
|
+
|
62
|
+
@property
|
63
|
+
@pulumi.getter
|
64
|
+
def keys(self) -> Sequence['outputs.GetCryptoKeysKeyResult']:
|
65
|
+
"""
|
66
|
+
A list of all the retrieved keys from the provided key ring. This list is influenced by the provided filter argument.
|
67
|
+
"""
|
68
|
+
return pulumi.get(self, "keys")
|
69
|
+
|
70
|
+
|
71
|
+
class AwaitableGetCryptoKeysResult(GetCryptoKeysResult):
|
72
|
+
# pylint: disable=using-constant-test
|
73
|
+
def __await__(self):
|
74
|
+
if False:
|
75
|
+
yield self
|
76
|
+
return GetCryptoKeysResult(
|
77
|
+
filter=self.filter,
|
78
|
+
id=self.id,
|
79
|
+
key_ring=self.key_ring,
|
80
|
+
keys=self.keys)
|
81
|
+
|
82
|
+
|
83
|
+
def get_crypto_keys(filter: Optional[str] = None,
|
84
|
+
key_ring: Optional[str] = None,
|
85
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetCryptoKeysResult:
|
86
|
+
"""
|
87
|
+
Provides access to all Google Cloud Platform KMS CryptoKeys in a given KeyRing. For more information see
|
88
|
+
[the official documentation](https://cloud.google.com/kms/docs/object-hierarchy#key)
|
89
|
+
and
|
90
|
+
[API](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys).
|
91
|
+
|
92
|
+
A CryptoKey is an interface to key material which can be used to encrypt and decrypt data. A CryptoKey belongs to a
|
93
|
+
Google Cloud KMS KeyRing.
|
94
|
+
|
95
|
+
|
96
|
+
:param str filter: The filter argument is used to add a filter query parameter that limits which keys are retrieved by the data source: ?filter={{filter}}. When no value is provided there is no filtering.
|
97
|
+
|
98
|
+
Example filter values if filtering on name. Note: names take the form projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}/cryptoKeys/{{cryptoKey}}.
|
99
|
+
|
100
|
+
* `"name:my-key-"` will retrieve keys that contain "my-key-" anywhere in their name.
|
101
|
+
* `"name=projects/my-project/locations/global/keyRings/my-key-ring/cryptoKeys/my-key-1"` will only retrieve a key with that exact name.
|
102
|
+
|
103
|
+
[See the documentation about using filters](https://cloud.google.com/kms/docs/sorting-and-filtering)
|
104
|
+
:param str key_ring: The key ring that the keys belongs to. Format: 'projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}'.,
|
105
|
+
"""
|
106
|
+
__args__ = dict()
|
107
|
+
__args__['filter'] = filter
|
108
|
+
__args__['keyRing'] = key_ring
|
109
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
110
|
+
__ret__ = pulumi.runtime.invoke('gcp:kms/getCryptoKeys:getCryptoKeys', __args__, opts=opts, typ=GetCryptoKeysResult).value
|
111
|
+
|
112
|
+
return AwaitableGetCryptoKeysResult(
|
113
|
+
filter=pulumi.get(__ret__, 'filter'),
|
114
|
+
id=pulumi.get(__ret__, 'id'),
|
115
|
+
key_ring=pulumi.get(__ret__, 'key_ring'),
|
116
|
+
keys=pulumi.get(__ret__, 'keys'))
|
117
|
+
|
118
|
+
|
119
|
+
@_utilities.lift_output_func(get_crypto_keys)
|
120
|
+
def get_crypto_keys_output(filter: Optional[pulumi.Input[Optional[str]]] = None,
|
121
|
+
key_ring: Optional[pulumi.Input[str]] = None,
|
122
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetCryptoKeysResult]:
|
123
|
+
"""
|
124
|
+
Provides access to all Google Cloud Platform KMS CryptoKeys in a given KeyRing. For more information see
|
125
|
+
[the official documentation](https://cloud.google.com/kms/docs/object-hierarchy#key)
|
126
|
+
and
|
127
|
+
[API](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys).
|
128
|
+
|
129
|
+
A CryptoKey is an interface to key material which can be used to encrypt and decrypt data. A CryptoKey belongs to a
|
130
|
+
Google Cloud KMS KeyRing.
|
131
|
+
|
132
|
+
|
133
|
+
:param str filter: The filter argument is used to add a filter query parameter that limits which keys are retrieved by the data source: ?filter={{filter}}. When no value is provided there is no filtering.
|
134
|
+
|
135
|
+
Example filter values if filtering on name. Note: names take the form projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}/cryptoKeys/{{cryptoKey}}.
|
136
|
+
|
137
|
+
* `"name:my-key-"` will retrieve keys that contain "my-key-" anywhere in their name.
|
138
|
+
* `"name=projects/my-project/locations/global/keyRings/my-key-ring/cryptoKeys/my-key-1"` will only retrieve a key with that exact name.
|
139
|
+
|
140
|
+
[See the documentation about using filters](https://cloud.google.com/kms/docs/sorting-and-filtering)
|
141
|
+
:param str key_ring: The key ring that the keys belongs to. Format: 'projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}'.,
|
142
|
+
"""
|
143
|
+
...
|
@@ -0,0 +1,119 @@
|
|
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
|
+
|
18
|
+
__all__ = [
|
19
|
+
'GetKeyRingsResult',
|
20
|
+
'AwaitableGetKeyRingsResult',
|
21
|
+
'get_key_rings',
|
22
|
+
'get_key_rings_output',
|
23
|
+
]
|
24
|
+
|
25
|
+
@pulumi.output_type
|
26
|
+
class GetKeyRingsResult:
|
27
|
+
"""
|
28
|
+
A collection of values returned by getKeyRings.
|
29
|
+
"""
|
30
|
+
def __init__(__self__, filter=None, id=None, key_rings=None, location=None, project=None):
|
31
|
+
if filter and not isinstance(filter, str):
|
32
|
+
raise TypeError("Expected argument 'filter' to be a str")
|
33
|
+
pulumi.set(__self__, "filter", filter)
|
34
|
+
if id and not isinstance(id, str):
|
35
|
+
raise TypeError("Expected argument 'id' to be a str")
|
36
|
+
pulumi.set(__self__, "id", id)
|
37
|
+
if key_rings and not isinstance(key_rings, list):
|
38
|
+
raise TypeError("Expected argument 'key_rings' to be a list")
|
39
|
+
pulumi.set(__self__, "key_rings", key_rings)
|
40
|
+
if location and not isinstance(location, str):
|
41
|
+
raise TypeError("Expected argument 'location' to be a str")
|
42
|
+
pulumi.set(__self__, "location", location)
|
43
|
+
if project and not isinstance(project, str):
|
44
|
+
raise TypeError("Expected argument 'project' to be a str")
|
45
|
+
pulumi.set(__self__, "project", project)
|
46
|
+
|
47
|
+
@property
|
48
|
+
@pulumi.getter
|
49
|
+
def filter(self) -> Optional[str]:
|
50
|
+
return pulumi.get(self, "filter")
|
51
|
+
|
52
|
+
@property
|
53
|
+
@pulumi.getter
|
54
|
+
def id(self) -> str:
|
55
|
+
"""
|
56
|
+
The provider-assigned unique ID for this managed resource.
|
57
|
+
"""
|
58
|
+
return pulumi.get(self, "id")
|
59
|
+
|
60
|
+
@property
|
61
|
+
@pulumi.getter(name="keyRings")
|
62
|
+
def key_rings(self) -> Sequence['outputs.GetKeyRingsKeyRingResult']:
|
63
|
+
return pulumi.get(self, "key_rings")
|
64
|
+
|
65
|
+
@property
|
66
|
+
@pulumi.getter
|
67
|
+
def location(self) -> str:
|
68
|
+
return pulumi.get(self, "location")
|
69
|
+
|
70
|
+
@property
|
71
|
+
@pulumi.getter
|
72
|
+
def project(self) -> Optional[str]:
|
73
|
+
return pulumi.get(self, "project")
|
74
|
+
|
75
|
+
|
76
|
+
class AwaitableGetKeyRingsResult(GetKeyRingsResult):
|
77
|
+
# pylint: disable=using-constant-test
|
78
|
+
def __await__(self):
|
79
|
+
if False:
|
80
|
+
yield self
|
81
|
+
return GetKeyRingsResult(
|
82
|
+
filter=self.filter,
|
83
|
+
id=self.id,
|
84
|
+
key_rings=self.key_rings,
|
85
|
+
location=self.location,
|
86
|
+
project=self.project)
|
87
|
+
|
88
|
+
|
89
|
+
def get_key_rings(filter: Optional[str] = None,
|
90
|
+
location: Optional[str] = None,
|
91
|
+
project: Optional[str] = None,
|
92
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetKeyRingsResult:
|
93
|
+
"""
|
94
|
+
Use this data source to access information about an existing resource.
|
95
|
+
"""
|
96
|
+
__args__ = dict()
|
97
|
+
__args__['filter'] = filter
|
98
|
+
__args__['location'] = location
|
99
|
+
__args__['project'] = project
|
100
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
101
|
+
__ret__ = pulumi.runtime.invoke('gcp:kms/getKeyRings:getKeyRings', __args__, opts=opts, typ=GetKeyRingsResult).value
|
102
|
+
|
103
|
+
return AwaitableGetKeyRingsResult(
|
104
|
+
filter=pulumi.get(__ret__, 'filter'),
|
105
|
+
id=pulumi.get(__ret__, 'id'),
|
106
|
+
key_rings=pulumi.get(__ret__, 'key_rings'),
|
107
|
+
location=pulumi.get(__ret__, 'location'),
|
108
|
+
project=pulumi.get(__ret__, 'project'))
|
109
|
+
|
110
|
+
|
111
|
+
@_utilities.lift_output_func(get_key_rings)
|
112
|
+
def get_key_rings_output(filter: Optional[pulumi.Input[Optional[str]]] = None,
|
113
|
+
location: Optional[pulumi.Input[str]] = None,
|
114
|
+
project: Optional[pulumi.Input[Optional[str]]] = None,
|
115
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetKeyRingsResult]:
|
116
|
+
"""
|
117
|
+
Use this data source to access information about an existing resource.
|
118
|
+
"""
|
119
|
+
...
|
pulumi_gcp/kms/outputs.py
CHANGED
@@ -30,9 +30,13 @@ __all__ = [
|
|
30
30
|
'KeyRingIAMMemberCondition',
|
31
31
|
'KeyRingImportJobAttestation',
|
32
32
|
'KeyRingImportJobPublicKey',
|
33
|
+
'GetCryptoKeysKeyResult',
|
34
|
+
'GetCryptoKeysKeyPrimaryResult',
|
35
|
+
'GetCryptoKeysKeyVersionTemplateResult',
|
33
36
|
'GetKMSCryptoKeyPrimaryResult',
|
34
37
|
'GetKMSCryptoKeyVersionPublicKeyResult',
|
35
38
|
'GetKMSCryptoKeyVersionTemplateResult',
|
39
|
+
'GetKeyRingsKeyRingResult',
|
36
40
|
]
|
37
41
|
|
38
42
|
@pulumi.output_type
|
@@ -860,6 +864,253 @@ class KeyRingImportJobPublicKey(dict):
|
|
860
864
|
return pulumi.get(self, "pem")
|
861
865
|
|
862
866
|
|
867
|
+
@pulumi.output_type
|
868
|
+
class GetCryptoKeysKeyResult(dict):
|
869
|
+
def __init__(__self__, *,
|
870
|
+
crypto_key_backend: str,
|
871
|
+
destroy_scheduled_duration: str,
|
872
|
+
effective_labels: Mapping[str, str],
|
873
|
+
id: str,
|
874
|
+
import_only: bool,
|
875
|
+
labels: Mapping[str, str],
|
876
|
+
primaries: Sequence['outputs.GetCryptoKeysKeyPrimaryResult'],
|
877
|
+
pulumi_labels: Mapping[str, str],
|
878
|
+
purpose: str,
|
879
|
+
rotation_period: str,
|
880
|
+
skip_initial_version_creation: bool,
|
881
|
+
version_templates: Sequence['outputs.GetCryptoKeysKeyVersionTemplateResult'],
|
882
|
+
key_ring: Optional[str] = None,
|
883
|
+
name: Optional[str] = None):
|
884
|
+
"""
|
885
|
+
:param str crypto_key_backend: The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
886
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
887
|
+
:param str destroy_scheduled_duration: The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
888
|
+
If not specified at creation time, the default duration is 30 days.
|
889
|
+
:param bool import_only: Whether this key may contain imported versions only.
|
890
|
+
:param Mapping[str, str] labels: Labels with user-defined metadata to apply to this resource.
|
891
|
+
|
892
|
+
|
893
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
894
|
+
Please refer to the field 'effective_labels' for all of the labels present on the resource.
|
895
|
+
:param Sequence['GetCryptoKeysKeyPrimaryArgs'] primaries: A copy of the primary CryptoKeyVersion that will be used by cryptoKeys.encrypt when this CryptoKey is given in EncryptRequest.name.
|
896
|
+
Keys with purpose ENCRYPT_DECRYPT may have a primary. For other keys, this field will be unset.
|
897
|
+
:param Mapping[str, str] pulumi_labels: The combination of labels configured directly on the resource
|
898
|
+
and default labels configured on the provider.
|
899
|
+
:param str purpose: The immutable purpose of this CryptoKey. See the
|
900
|
+
[purpose reference](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys#CryptoKeyPurpose)
|
901
|
+
for possible inputs.
|
902
|
+
Default value is "ENCRYPT_DECRYPT".
|
903
|
+
:param str rotation_period: Every time this period passes, generate a new CryptoKeyVersion and set it as the primary.
|
904
|
+
The first rotation will take place after the specified period. The rotation period has
|
905
|
+
the format of a decimal number with up to 9 fractional digits, followed by the
|
906
|
+
letter 's' (seconds). It must be greater than a day (ie, 86400).
|
907
|
+
:param bool skip_initial_version_creation: If set to true, the request will create a CryptoKey without any CryptoKeyVersions.
|
908
|
+
You must use the 'google_kms_crypto_key_version' resource to create a new CryptoKeyVersion
|
909
|
+
or 'google_kms_key_ring_import_job' resource to import the CryptoKeyVersion.
|
910
|
+
:param Sequence['GetCryptoKeysKeyVersionTemplateArgs'] version_templates: A template describing settings for new crypto key versions.
|
911
|
+
:param str key_ring: The key ring that the keys belongs to. Format: 'projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}'.,
|
912
|
+
:param str name: The resource name for the CryptoKey.
|
913
|
+
"""
|
914
|
+
pulumi.set(__self__, "crypto_key_backend", crypto_key_backend)
|
915
|
+
pulumi.set(__self__, "destroy_scheduled_duration", destroy_scheduled_duration)
|
916
|
+
pulumi.set(__self__, "effective_labels", effective_labels)
|
917
|
+
pulumi.set(__self__, "id", id)
|
918
|
+
pulumi.set(__self__, "import_only", import_only)
|
919
|
+
pulumi.set(__self__, "labels", labels)
|
920
|
+
pulumi.set(__self__, "primaries", primaries)
|
921
|
+
pulumi.set(__self__, "pulumi_labels", pulumi_labels)
|
922
|
+
pulumi.set(__self__, "purpose", purpose)
|
923
|
+
pulumi.set(__self__, "rotation_period", rotation_period)
|
924
|
+
pulumi.set(__self__, "skip_initial_version_creation", skip_initial_version_creation)
|
925
|
+
pulumi.set(__self__, "version_templates", version_templates)
|
926
|
+
if key_ring is not None:
|
927
|
+
pulumi.set(__self__, "key_ring", key_ring)
|
928
|
+
if name is not None:
|
929
|
+
pulumi.set(__self__, "name", name)
|
930
|
+
|
931
|
+
@property
|
932
|
+
@pulumi.getter(name="cryptoKeyBackend")
|
933
|
+
def crypto_key_backend(self) -> str:
|
934
|
+
"""
|
935
|
+
The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.
|
936
|
+
The resource name is in the format "projects/*/locations/*/ekmConnections/*" and only applies to "EXTERNAL_VPC" keys.
|
937
|
+
"""
|
938
|
+
return pulumi.get(self, "crypto_key_backend")
|
939
|
+
|
940
|
+
@property
|
941
|
+
@pulumi.getter(name="destroyScheduledDuration")
|
942
|
+
def destroy_scheduled_duration(self) -> str:
|
943
|
+
"""
|
944
|
+
The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.
|
945
|
+
If not specified at creation time, the default duration is 30 days.
|
946
|
+
"""
|
947
|
+
return pulumi.get(self, "destroy_scheduled_duration")
|
948
|
+
|
949
|
+
@property
|
950
|
+
@pulumi.getter(name="effectiveLabels")
|
951
|
+
def effective_labels(self) -> Mapping[str, str]:
|
952
|
+
return pulumi.get(self, "effective_labels")
|
953
|
+
|
954
|
+
@property
|
955
|
+
@pulumi.getter
|
956
|
+
def id(self) -> str:
|
957
|
+
return pulumi.get(self, "id")
|
958
|
+
|
959
|
+
@property
|
960
|
+
@pulumi.getter(name="importOnly")
|
961
|
+
def import_only(self) -> bool:
|
962
|
+
"""
|
963
|
+
Whether this key may contain imported versions only.
|
964
|
+
"""
|
965
|
+
return pulumi.get(self, "import_only")
|
966
|
+
|
967
|
+
@property
|
968
|
+
@pulumi.getter
|
969
|
+
def labels(self) -> Mapping[str, str]:
|
970
|
+
"""
|
971
|
+
Labels with user-defined metadata to apply to this resource.
|
972
|
+
|
973
|
+
|
974
|
+
**Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
|
975
|
+
Please refer to the field 'effective_labels' for all of the labels present on the resource.
|
976
|
+
"""
|
977
|
+
return pulumi.get(self, "labels")
|
978
|
+
|
979
|
+
@property
|
980
|
+
@pulumi.getter
|
981
|
+
def primaries(self) -> Sequence['outputs.GetCryptoKeysKeyPrimaryResult']:
|
982
|
+
"""
|
983
|
+
A copy of the primary CryptoKeyVersion that will be used by cryptoKeys.encrypt when this CryptoKey is given in EncryptRequest.name.
|
984
|
+
Keys with purpose ENCRYPT_DECRYPT may have a primary. For other keys, this field will be unset.
|
985
|
+
"""
|
986
|
+
return pulumi.get(self, "primaries")
|
987
|
+
|
988
|
+
@property
|
989
|
+
@pulumi.getter(name="pulumiLabels")
|
990
|
+
def pulumi_labels(self) -> Mapping[str, str]:
|
991
|
+
"""
|
992
|
+
The combination of labels configured directly on the resource
|
993
|
+
and default labels configured on the provider.
|
994
|
+
"""
|
995
|
+
return pulumi.get(self, "pulumi_labels")
|
996
|
+
|
997
|
+
@property
|
998
|
+
@pulumi.getter
|
999
|
+
def purpose(self) -> str:
|
1000
|
+
"""
|
1001
|
+
The immutable purpose of this CryptoKey. See the
|
1002
|
+
[purpose reference](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys#CryptoKeyPurpose)
|
1003
|
+
for possible inputs.
|
1004
|
+
Default value is "ENCRYPT_DECRYPT".
|
1005
|
+
"""
|
1006
|
+
return pulumi.get(self, "purpose")
|
1007
|
+
|
1008
|
+
@property
|
1009
|
+
@pulumi.getter(name="rotationPeriod")
|
1010
|
+
def rotation_period(self) -> str:
|
1011
|
+
"""
|
1012
|
+
Every time this period passes, generate a new CryptoKeyVersion and set it as the primary.
|
1013
|
+
The first rotation will take place after the specified period. The rotation period has
|
1014
|
+
the format of a decimal number with up to 9 fractional digits, followed by the
|
1015
|
+
letter 's' (seconds). It must be greater than a day (ie, 86400).
|
1016
|
+
"""
|
1017
|
+
return pulumi.get(self, "rotation_period")
|
1018
|
+
|
1019
|
+
@property
|
1020
|
+
@pulumi.getter(name="skipInitialVersionCreation")
|
1021
|
+
def skip_initial_version_creation(self) -> bool:
|
1022
|
+
"""
|
1023
|
+
If set to true, the request will create a CryptoKey without any CryptoKeyVersions.
|
1024
|
+
You must use the 'google_kms_crypto_key_version' resource to create a new CryptoKeyVersion
|
1025
|
+
or 'google_kms_key_ring_import_job' resource to import the CryptoKeyVersion.
|
1026
|
+
"""
|
1027
|
+
return pulumi.get(self, "skip_initial_version_creation")
|
1028
|
+
|
1029
|
+
@property
|
1030
|
+
@pulumi.getter(name="versionTemplates")
|
1031
|
+
def version_templates(self) -> Sequence['outputs.GetCryptoKeysKeyVersionTemplateResult']:
|
1032
|
+
"""
|
1033
|
+
A template describing settings for new crypto key versions.
|
1034
|
+
"""
|
1035
|
+
return pulumi.get(self, "version_templates")
|
1036
|
+
|
1037
|
+
@property
|
1038
|
+
@pulumi.getter(name="keyRing")
|
1039
|
+
def key_ring(self) -> Optional[str]:
|
1040
|
+
"""
|
1041
|
+
The key ring that the keys belongs to. Format: 'projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}'.,
|
1042
|
+
"""
|
1043
|
+
return pulumi.get(self, "key_ring")
|
1044
|
+
|
1045
|
+
@property
|
1046
|
+
@pulumi.getter
|
1047
|
+
def name(self) -> Optional[str]:
|
1048
|
+
"""
|
1049
|
+
The resource name for the CryptoKey.
|
1050
|
+
"""
|
1051
|
+
return pulumi.get(self, "name")
|
1052
|
+
|
1053
|
+
|
1054
|
+
@pulumi.output_type
|
1055
|
+
class GetCryptoKeysKeyPrimaryResult(dict):
|
1056
|
+
def __init__(__self__, *,
|
1057
|
+
name: str,
|
1058
|
+
state: str):
|
1059
|
+
"""
|
1060
|
+
:param str name: The resource name for this CryptoKeyVersion.
|
1061
|
+
:param str state: The current state of the CryptoKeyVersion.
|
1062
|
+
"""
|
1063
|
+
pulumi.set(__self__, "name", name)
|
1064
|
+
pulumi.set(__self__, "state", state)
|
1065
|
+
|
1066
|
+
@property
|
1067
|
+
@pulumi.getter
|
1068
|
+
def name(self) -> str:
|
1069
|
+
"""
|
1070
|
+
The resource name for this CryptoKeyVersion.
|
1071
|
+
"""
|
1072
|
+
return pulumi.get(self, "name")
|
1073
|
+
|
1074
|
+
@property
|
1075
|
+
@pulumi.getter
|
1076
|
+
def state(self) -> str:
|
1077
|
+
"""
|
1078
|
+
The current state of the CryptoKeyVersion.
|
1079
|
+
"""
|
1080
|
+
return pulumi.get(self, "state")
|
1081
|
+
|
1082
|
+
|
1083
|
+
@pulumi.output_type
|
1084
|
+
class GetCryptoKeysKeyVersionTemplateResult(dict):
|
1085
|
+
def __init__(__self__, *,
|
1086
|
+
algorithm: str,
|
1087
|
+
protection_level: str):
|
1088
|
+
"""
|
1089
|
+
:param str algorithm: The algorithm to use when creating a version based on this template.
|
1090
|
+
See the [algorithm reference](https://cloud.google.com/kms/docs/reference/rest/v1/CryptoKeyVersionAlgorithm) for possible inputs.
|
1091
|
+
:param str protection_level: The protection level to use when creating a version based on this template. Possible values include "SOFTWARE", "HSM", "EXTERNAL", "EXTERNAL_VPC". Defaults to "SOFTWARE".
|
1092
|
+
"""
|
1093
|
+
pulumi.set(__self__, "algorithm", algorithm)
|
1094
|
+
pulumi.set(__self__, "protection_level", protection_level)
|
1095
|
+
|
1096
|
+
@property
|
1097
|
+
@pulumi.getter
|
1098
|
+
def algorithm(self) -> str:
|
1099
|
+
"""
|
1100
|
+
The algorithm to use when creating a version based on this template.
|
1101
|
+
See the [algorithm reference](https://cloud.google.com/kms/docs/reference/rest/v1/CryptoKeyVersionAlgorithm) for possible inputs.
|
1102
|
+
"""
|
1103
|
+
return pulumi.get(self, "algorithm")
|
1104
|
+
|
1105
|
+
@property
|
1106
|
+
@pulumi.getter(name="protectionLevel")
|
1107
|
+
def protection_level(self) -> str:
|
1108
|
+
"""
|
1109
|
+
The protection level to use when creating a version based on this template. Possible values include "SOFTWARE", "HSM", "EXTERNAL", "EXTERNAL_VPC". Defaults to "SOFTWARE".
|
1110
|
+
"""
|
1111
|
+
return pulumi.get(self, "protection_level")
|
1112
|
+
|
1113
|
+
|
863
1114
|
@pulumi.output_type
|
864
1115
|
class GetKMSCryptoKeyPrimaryResult(dict):
|
865
1116
|
def __init__(__self__, *,
|
@@ -951,3 +1202,22 @@ class GetKMSCryptoKeyVersionTemplateResult(dict):
|
|
951
1202
|
return pulumi.get(self, "protection_level")
|
952
1203
|
|
953
1204
|
|
1205
|
+
@pulumi.output_type
|
1206
|
+
class GetKeyRingsKeyRingResult(dict):
|
1207
|
+
def __init__(__self__, *,
|
1208
|
+
id: str,
|
1209
|
+
name: str):
|
1210
|
+
pulumi.set(__self__, "id", id)
|
1211
|
+
pulumi.set(__self__, "name", name)
|
1212
|
+
|
1213
|
+
@property
|
1214
|
+
@pulumi.getter
|
1215
|
+
def id(self) -> str:
|
1216
|
+
return pulumi.get(self, "id")
|
1217
|
+
|
1218
|
+
@property
|
1219
|
+
@pulumi.getter
|
1220
|
+
def name(self) -> str:
|
1221
|
+
return pulumi.get(self, "name")
|
1222
|
+
|
1223
|
+
|