pulumi-gcp 7.12.0a1709561306__py3-none-any.whl → 7.13.0a1709814369__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- pulumi_gcp/__init__.py +24 -0
- pulumi_gcp/appengine/application_url_dispatch_rules.py +2 -2
- pulumi_gcp/appengine/engine_split_traffic.py +4 -4
- pulumi_gcp/appengine/service_network_settings.py +2 -2
- pulumi_gcp/appengine/standard_app_version.py +4 -4
- pulumi_gcp/bigquery/_inputs.py +88 -0
- pulumi_gcp/bigquery/outputs.py +91 -0
- pulumi_gcp/bigquery/routine.py +118 -12
- pulumi_gcp/certificatemanager/dns_authorization.py +63 -14
- pulumi_gcp/clouddeploy/__init__.py +4 -0
- pulumi_gcp/clouddeploy/_inputs.py +80 -0
- pulumi_gcp/clouddeploy/automation.py +16 -0
- pulumi_gcp/clouddeploy/get_target_iam_policy.py +162 -0
- pulumi_gcp/clouddeploy/outputs.py +56 -0
- pulumi_gcp/clouddeploy/target_iam_binding.py +324 -0
- pulumi_gcp/clouddeploy/target_iam_member.py +324 -0
- pulumi_gcp/clouddeploy/target_iam_policy.py +253 -0
- pulumi_gcp/cloudrunv2/_inputs.py +4 -2
- pulumi_gcp/cloudrunv2/outputs.py +8 -4
- pulumi_gcp/composer/_inputs.py +18 -2
- pulumi_gcp/composer/outputs.py +29 -4
- pulumi_gcp/compute/region_target_https_proxy.py +162 -37
- pulumi_gcp/gkehub/scope.py +85 -0
- pulumi_gcp/monitoring/get_app_engine_service.py +2 -2
- pulumi_gcp/spanner/_inputs.py +20 -0
- pulumi_gcp/spanner/database_iam_binding.py +134 -0
- pulumi_gcp/spanner/database_iam_member.py +134 -0
- pulumi_gcp/spanner/database_iam_policy.py +114 -0
- pulumi_gcp/spanner/outputs.py +20 -0
- {pulumi_gcp-7.12.0a1709561306.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/METADATA +1 -1
- {pulumi_gcp-7.12.0a1709561306.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/RECORD +33 -29
- {pulumi_gcp-7.12.0a1709561306.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/WHEEL +0 -0
- {pulumi_gcp-7.12.0a1709561306.dist-info → pulumi_gcp-7.13.0a1709814369.dist-info}/top_level.txt +0 -0
@@ -538,6 +538,14 @@ class Automation(pulumi.CustomResource):
|
|
538
538
|
suspended: Optional[pulumi.Input[bool]] = None,
|
539
539
|
__props__=None):
|
540
540
|
"""
|
541
|
+
An `Automation` enables the automation of manually driven actions for a Delivery Pipeline, which includes Release promotion amongst Targets, Rollout repair and Rollout deployment strategy advancement.
|
542
|
+
|
543
|
+
To get more information about Automation, see:
|
544
|
+
|
545
|
+
* [API documentation](https://cloud.google.com/deploy/docs/api/reference/rest/v1/projects.locations.deliveryPipelines.automations)
|
546
|
+
* How-to Guides
|
547
|
+
* [Automate your deployment](https://cloud.google.com/deploy/docs/automation)
|
548
|
+
|
541
549
|
## Example Usage
|
542
550
|
### Clouddeploy Automation Basic
|
543
551
|
|
@@ -681,6 +689,14 @@ class Automation(pulumi.CustomResource):
|
|
681
689
|
args: AutomationArgs,
|
682
690
|
opts: Optional[pulumi.ResourceOptions] = None):
|
683
691
|
"""
|
692
|
+
An `Automation` enables the automation of manually driven actions for a Delivery Pipeline, which includes Release promotion amongst Targets, Rollout repair and Rollout deployment strategy advancement.
|
693
|
+
|
694
|
+
To get more information about Automation, see:
|
695
|
+
|
696
|
+
* [API documentation](https://cloud.google.com/deploy/docs/api/reference/rest/v1/projects.locations.deliveryPipelines.automations)
|
697
|
+
* How-to Guides
|
698
|
+
* [Automate your deployment](https://cloud.google.com/deploy/docs/automation)
|
699
|
+
|
684
700
|
## Example Usage
|
685
701
|
### Clouddeploy Automation Basic
|
686
702
|
|
@@ -0,0 +1,162 @@
|
|
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 pulumi
|
8
|
+
import pulumi.runtime
|
9
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
10
|
+
from .. import _utilities
|
11
|
+
|
12
|
+
__all__ = [
|
13
|
+
'GetTargetIamPolicyResult',
|
14
|
+
'AwaitableGetTargetIamPolicyResult',
|
15
|
+
'get_target_iam_policy',
|
16
|
+
'get_target_iam_policy_output',
|
17
|
+
]
|
18
|
+
|
19
|
+
@pulumi.output_type
|
20
|
+
class GetTargetIamPolicyResult:
|
21
|
+
"""
|
22
|
+
A collection of values returned by getTargetIamPolicy.
|
23
|
+
"""
|
24
|
+
def __init__(__self__, etag=None, id=None, location=None, name=None, policy_data=None, project=None):
|
25
|
+
if etag and not isinstance(etag, str):
|
26
|
+
raise TypeError("Expected argument 'etag' to be a str")
|
27
|
+
pulumi.set(__self__, "etag", etag)
|
28
|
+
if id and not isinstance(id, str):
|
29
|
+
raise TypeError("Expected argument 'id' to be a str")
|
30
|
+
pulumi.set(__self__, "id", id)
|
31
|
+
if location and not isinstance(location, str):
|
32
|
+
raise TypeError("Expected argument 'location' to be a str")
|
33
|
+
pulumi.set(__self__, "location", location)
|
34
|
+
if name and not isinstance(name, str):
|
35
|
+
raise TypeError("Expected argument 'name' to be a str")
|
36
|
+
pulumi.set(__self__, "name", name)
|
37
|
+
if policy_data and not isinstance(policy_data, str):
|
38
|
+
raise TypeError("Expected argument 'policy_data' to be a str")
|
39
|
+
pulumi.set(__self__, "policy_data", policy_data)
|
40
|
+
if project and not isinstance(project, str):
|
41
|
+
raise TypeError("Expected argument 'project' to be a str")
|
42
|
+
pulumi.set(__self__, "project", project)
|
43
|
+
|
44
|
+
@property
|
45
|
+
@pulumi.getter
|
46
|
+
def etag(self) -> str:
|
47
|
+
"""
|
48
|
+
(Computed) The etag of the IAM policy.
|
49
|
+
"""
|
50
|
+
return pulumi.get(self, "etag")
|
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
|
62
|
+
def location(self) -> str:
|
63
|
+
return pulumi.get(self, "location")
|
64
|
+
|
65
|
+
@property
|
66
|
+
@pulumi.getter
|
67
|
+
def name(self) -> str:
|
68
|
+
return pulumi.get(self, "name")
|
69
|
+
|
70
|
+
@property
|
71
|
+
@pulumi.getter(name="policyData")
|
72
|
+
def policy_data(self) -> str:
|
73
|
+
"""
|
74
|
+
(Required only by `clouddeploy.TargetIamPolicy`) The policy data generated by
|
75
|
+
a `organizations_get_iam_policy` data source.
|
76
|
+
"""
|
77
|
+
return pulumi.get(self, "policy_data")
|
78
|
+
|
79
|
+
@property
|
80
|
+
@pulumi.getter
|
81
|
+
def project(self) -> str:
|
82
|
+
return pulumi.get(self, "project")
|
83
|
+
|
84
|
+
|
85
|
+
class AwaitableGetTargetIamPolicyResult(GetTargetIamPolicyResult):
|
86
|
+
# pylint: disable=using-constant-test
|
87
|
+
def __await__(self):
|
88
|
+
if False:
|
89
|
+
yield self
|
90
|
+
return GetTargetIamPolicyResult(
|
91
|
+
etag=self.etag,
|
92
|
+
id=self.id,
|
93
|
+
location=self.location,
|
94
|
+
name=self.name,
|
95
|
+
policy_data=self.policy_data,
|
96
|
+
project=self.project)
|
97
|
+
|
98
|
+
|
99
|
+
def get_target_iam_policy(location: Optional[str] = None,
|
100
|
+
name: Optional[str] = None,
|
101
|
+
project: Optional[str] = None,
|
102
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTargetIamPolicyResult:
|
103
|
+
"""
|
104
|
+
Retrieves the current IAM policy data for target
|
105
|
+
|
106
|
+
## example
|
107
|
+
|
108
|
+
```python
|
109
|
+
import pulumi
|
110
|
+
import pulumi_gcp as gcp
|
111
|
+
|
112
|
+
policy = gcp.clouddeploy.get_target_iam_policy(project=default["project"],
|
113
|
+
location=default["location"],
|
114
|
+
name=default["name"])
|
115
|
+
```
|
116
|
+
|
117
|
+
|
118
|
+
:param str name: Used to find the parent resource to bind the IAM policy to
|
119
|
+
:param str project: The ID of the project in which the resource belongs.
|
120
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
121
|
+
"""
|
122
|
+
__args__ = dict()
|
123
|
+
__args__['location'] = location
|
124
|
+
__args__['name'] = name
|
125
|
+
__args__['project'] = project
|
126
|
+
opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
|
127
|
+
__ret__ = pulumi.runtime.invoke('gcp:clouddeploy/getTargetIamPolicy:getTargetIamPolicy', __args__, opts=opts, typ=GetTargetIamPolicyResult).value
|
128
|
+
|
129
|
+
return AwaitableGetTargetIamPolicyResult(
|
130
|
+
etag=pulumi.get(__ret__, 'etag'),
|
131
|
+
id=pulumi.get(__ret__, 'id'),
|
132
|
+
location=pulumi.get(__ret__, 'location'),
|
133
|
+
name=pulumi.get(__ret__, 'name'),
|
134
|
+
policy_data=pulumi.get(__ret__, 'policy_data'),
|
135
|
+
project=pulumi.get(__ret__, 'project'))
|
136
|
+
|
137
|
+
|
138
|
+
@_utilities.lift_output_func(get_target_iam_policy)
|
139
|
+
def get_target_iam_policy_output(location: Optional[pulumi.Input[Optional[str]]] = None,
|
140
|
+
name: Optional[pulumi.Input[str]] = None,
|
141
|
+
project: Optional[pulumi.Input[Optional[str]]] = None,
|
142
|
+
opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTargetIamPolicyResult]:
|
143
|
+
"""
|
144
|
+
Retrieves the current IAM policy data for target
|
145
|
+
|
146
|
+
## example
|
147
|
+
|
148
|
+
```python
|
149
|
+
import pulumi
|
150
|
+
import pulumi_gcp as gcp
|
151
|
+
|
152
|
+
policy = gcp.clouddeploy.get_target_iam_policy(project=default["project"],
|
153
|
+
location=default["location"],
|
154
|
+
name=default["name"])
|
155
|
+
```
|
156
|
+
|
157
|
+
|
158
|
+
:param str name: Used to find the parent resource to bind the IAM policy to
|
159
|
+
:param str project: The ID of the project in which the resource belongs.
|
160
|
+
If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
|
161
|
+
"""
|
162
|
+
...
|
@@ -49,6 +49,8 @@ __all__ = [
|
|
49
49
|
'TargetAnthosCluster',
|
50
50
|
'TargetExecutionConfig',
|
51
51
|
'TargetGke',
|
52
|
+
'TargetIamBindingCondition',
|
53
|
+
'TargetIamMemberCondition',
|
52
54
|
'TargetMultiTarget',
|
53
55
|
'TargetRun',
|
54
56
|
]
|
@@ -1825,6 +1827,60 @@ class TargetGke(dict):
|
|
1825
1827
|
return pulumi.get(self, "internal_ip")
|
1826
1828
|
|
1827
1829
|
|
1830
|
+
@pulumi.output_type
|
1831
|
+
class TargetIamBindingCondition(dict):
|
1832
|
+
def __init__(__self__, *,
|
1833
|
+
expression: str,
|
1834
|
+
title: str,
|
1835
|
+
description: Optional[str] = None):
|
1836
|
+
pulumi.set(__self__, "expression", expression)
|
1837
|
+
pulumi.set(__self__, "title", title)
|
1838
|
+
if description is not None:
|
1839
|
+
pulumi.set(__self__, "description", description)
|
1840
|
+
|
1841
|
+
@property
|
1842
|
+
@pulumi.getter
|
1843
|
+
def expression(self) -> str:
|
1844
|
+
return pulumi.get(self, "expression")
|
1845
|
+
|
1846
|
+
@property
|
1847
|
+
@pulumi.getter
|
1848
|
+
def title(self) -> str:
|
1849
|
+
return pulumi.get(self, "title")
|
1850
|
+
|
1851
|
+
@property
|
1852
|
+
@pulumi.getter
|
1853
|
+
def description(self) -> Optional[str]:
|
1854
|
+
return pulumi.get(self, "description")
|
1855
|
+
|
1856
|
+
|
1857
|
+
@pulumi.output_type
|
1858
|
+
class TargetIamMemberCondition(dict):
|
1859
|
+
def __init__(__self__, *,
|
1860
|
+
expression: str,
|
1861
|
+
title: str,
|
1862
|
+
description: Optional[str] = None):
|
1863
|
+
pulumi.set(__self__, "expression", expression)
|
1864
|
+
pulumi.set(__self__, "title", title)
|
1865
|
+
if description is not None:
|
1866
|
+
pulumi.set(__self__, "description", description)
|
1867
|
+
|
1868
|
+
@property
|
1869
|
+
@pulumi.getter
|
1870
|
+
def expression(self) -> str:
|
1871
|
+
return pulumi.get(self, "expression")
|
1872
|
+
|
1873
|
+
@property
|
1874
|
+
@pulumi.getter
|
1875
|
+
def title(self) -> str:
|
1876
|
+
return pulumi.get(self, "title")
|
1877
|
+
|
1878
|
+
@property
|
1879
|
+
@pulumi.getter
|
1880
|
+
def description(self) -> Optional[str]:
|
1881
|
+
return pulumi.get(self, "description")
|
1882
|
+
|
1883
|
+
|
1828
1884
|
@pulumi.output_type
|
1829
1885
|
class TargetMultiTarget(dict):
|
1830
1886
|
@staticmethod
|
@@ -0,0 +1,324 @@
|
|
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 pulumi
|
8
|
+
import pulumi.runtime
|
9
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
10
|
+
from .. import _utilities
|
11
|
+
from . import outputs
|
12
|
+
from ._inputs import *
|
13
|
+
|
14
|
+
__all__ = ['TargetIamBindingArgs', 'TargetIamBinding']
|
15
|
+
|
16
|
+
@pulumi.input_type
|
17
|
+
class TargetIamBindingArgs:
|
18
|
+
def __init__(__self__, *,
|
19
|
+
members: pulumi.Input[Sequence[pulumi.Input[str]]],
|
20
|
+
role: pulumi.Input[str],
|
21
|
+
condition: Optional[pulumi.Input['TargetIamBindingConditionArgs']] = None,
|
22
|
+
location: Optional[pulumi.Input[str]] = None,
|
23
|
+
name: Optional[pulumi.Input[str]] = None,
|
24
|
+
project: Optional[pulumi.Input[str]] = None):
|
25
|
+
"""
|
26
|
+
The set of arguments for constructing a TargetIamBinding resource.
|
27
|
+
"""
|
28
|
+
pulumi.set(__self__, "members", members)
|
29
|
+
pulumi.set(__self__, "role", role)
|
30
|
+
if condition is not None:
|
31
|
+
pulumi.set(__self__, "condition", condition)
|
32
|
+
if location is not None:
|
33
|
+
pulumi.set(__self__, "location", location)
|
34
|
+
if name is not None:
|
35
|
+
pulumi.set(__self__, "name", name)
|
36
|
+
if project is not None:
|
37
|
+
pulumi.set(__self__, "project", project)
|
38
|
+
|
39
|
+
@property
|
40
|
+
@pulumi.getter
|
41
|
+
def members(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
42
|
+
return pulumi.get(self, "members")
|
43
|
+
|
44
|
+
@members.setter
|
45
|
+
def members(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
46
|
+
pulumi.set(self, "members", value)
|
47
|
+
|
48
|
+
@property
|
49
|
+
@pulumi.getter
|
50
|
+
def role(self) -> pulumi.Input[str]:
|
51
|
+
return pulumi.get(self, "role")
|
52
|
+
|
53
|
+
@role.setter
|
54
|
+
def role(self, value: pulumi.Input[str]):
|
55
|
+
pulumi.set(self, "role", value)
|
56
|
+
|
57
|
+
@property
|
58
|
+
@pulumi.getter
|
59
|
+
def condition(self) -> Optional[pulumi.Input['TargetIamBindingConditionArgs']]:
|
60
|
+
return pulumi.get(self, "condition")
|
61
|
+
|
62
|
+
@condition.setter
|
63
|
+
def condition(self, value: Optional[pulumi.Input['TargetIamBindingConditionArgs']]):
|
64
|
+
pulumi.set(self, "condition", value)
|
65
|
+
|
66
|
+
@property
|
67
|
+
@pulumi.getter
|
68
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
69
|
+
return pulumi.get(self, "location")
|
70
|
+
|
71
|
+
@location.setter
|
72
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
73
|
+
pulumi.set(self, "location", value)
|
74
|
+
|
75
|
+
@property
|
76
|
+
@pulumi.getter
|
77
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
78
|
+
return pulumi.get(self, "name")
|
79
|
+
|
80
|
+
@name.setter
|
81
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
82
|
+
pulumi.set(self, "name", value)
|
83
|
+
|
84
|
+
@property
|
85
|
+
@pulumi.getter
|
86
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
87
|
+
return pulumi.get(self, "project")
|
88
|
+
|
89
|
+
@project.setter
|
90
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
91
|
+
pulumi.set(self, "project", value)
|
92
|
+
|
93
|
+
|
94
|
+
@pulumi.input_type
|
95
|
+
class _TargetIamBindingState:
|
96
|
+
def __init__(__self__, *,
|
97
|
+
condition: Optional[pulumi.Input['TargetIamBindingConditionArgs']] = None,
|
98
|
+
etag: Optional[pulumi.Input[str]] = None,
|
99
|
+
location: Optional[pulumi.Input[str]] = None,
|
100
|
+
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
101
|
+
name: Optional[pulumi.Input[str]] = None,
|
102
|
+
project: Optional[pulumi.Input[str]] = None,
|
103
|
+
role: Optional[pulumi.Input[str]] = None):
|
104
|
+
"""
|
105
|
+
Input properties used for looking up and filtering TargetIamBinding resources.
|
106
|
+
"""
|
107
|
+
if condition is not None:
|
108
|
+
pulumi.set(__self__, "condition", condition)
|
109
|
+
if etag is not None:
|
110
|
+
pulumi.set(__self__, "etag", etag)
|
111
|
+
if location is not None:
|
112
|
+
pulumi.set(__self__, "location", location)
|
113
|
+
if members is not None:
|
114
|
+
pulumi.set(__self__, "members", members)
|
115
|
+
if name is not None:
|
116
|
+
pulumi.set(__self__, "name", name)
|
117
|
+
if project is not None:
|
118
|
+
pulumi.set(__self__, "project", project)
|
119
|
+
if role is not None:
|
120
|
+
pulumi.set(__self__, "role", role)
|
121
|
+
|
122
|
+
@property
|
123
|
+
@pulumi.getter
|
124
|
+
def condition(self) -> Optional[pulumi.Input['TargetIamBindingConditionArgs']]:
|
125
|
+
return pulumi.get(self, "condition")
|
126
|
+
|
127
|
+
@condition.setter
|
128
|
+
def condition(self, value: Optional[pulumi.Input['TargetIamBindingConditionArgs']]):
|
129
|
+
pulumi.set(self, "condition", value)
|
130
|
+
|
131
|
+
@property
|
132
|
+
@pulumi.getter
|
133
|
+
def etag(self) -> Optional[pulumi.Input[str]]:
|
134
|
+
return pulumi.get(self, "etag")
|
135
|
+
|
136
|
+
@etag.setter
|
137
|
+
def etag(self, value: Optional[pulumi.Input[str]]):
|
138
|
+
pulumi.set(self, "etag", value)
|
139
|
+
|
140
|
+
@property
|
141
|
+
@pulumi.getter
|
142
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
143
|
+
return pulumi.get(self, "location")
|
144
|
+
|
145
|
+
@location.setter
|
146
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
147
|
+
pulumi.set(self, "location", value)
|
148
|
+
|
149
|
+
@property
|
150
|
+
@pulumi.getter
|
151
|
+
def members(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
152
|
+
return pulumi.get(self, "members")
|
153
|
+
|
154
|
+
@members.setter
|
155
|
+
def members(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
156
|
+
pulumi.set(self, "members", value)
|
157
|
+
|
158
|
+
@property
|
159
|
+
@pulumi.getter
|
160
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
161
|
+
return pulumi.get(self, "name")
|
162
|
+
|
163
|
+
@name.setter
|
164
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
165
|
+
pulumi.set(self, "name", value)
|
166
|
+
|
167
|
+
@property
|
168
|
+
@pulumi.getter
|
169
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
170
|
+
return pulumi.get(self, "project")
|
171
|
+
|
172
|
+
@project.setter
|
173
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
174
|
+
pulumi.set(self, "project", value)
|
175
|
+
|
176
|
+
@property
|
177
|
+
@pulumi.getter
|
178
|
+
def role(self) -> Optional[pulumi.Input[str]]:
|
179
|
+
return pulumi.get(self, "role")
|
180
|
+
|
181
|
+
@role.setter
|
182
|
+
def role(self, value: Optional[pulumi.Input[str]]):
|
183
|
+
pulumi.set(self, "role", value)
|
184
|
+
|
185
|
+
|
186
|
+
class TargetIamBinding(pulumi.CustomResource):
|
187
|
+
@overload
|
188
|
+
def __init__(__self__,
|
189
|
+
resource_name: str,
|
190
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
191
|
+
condition: Optional[pulumi.Input[pulumi.InputType['TargetIamBindingConditionArgs']]] = None,
|
192
|
+
location: Optional[pulumi.Input[str]] = None,
|
193
|
+
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
194
|
+
name: Optional[pulumi.Input[str]] = None,
|
195
|
+
project: Optional[pulumi.Input[str]] = None,
|
196
|
+
role: Optional[pulumi.Input[str]] = None,
|
197
|
+
__props__=None):
|
198
|
+
"""
|
199
|
+
Create a TargetIamBinding resource with the given unique name, props, and options.
|
200
|
+
:param str resource_name: The name of the resource.
|
201
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
202
|
+
"""
|
203
|
+
...
|
204
|
+
@overload
|
205
|
+
def __init__(__self__,
|
206
|
+
resource_name: str,
|
207
|
+
args: TargetIamBindingArgs,
|
208
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
209
|
+
"""
|
210
|
+
Create a TargetIamBinding resource with the given unique name, props, and options.
|
211
|
+
:param str resource_name: The name of the resource.
|
212
|
+
:param TargetIamBindingArgs args: The arguments to use to populate this resource's properties.
|
213
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
214
|
+
"""
|
215
|
+
...
|
216
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
217
|
+
resource_args, opts = _utilities.get_resource_args_opts(TargetIamBindingArgs, pulumi.ResourceOptions, *args, **kwargs)
|
218
|
+
if resource_args is not None:
|
219
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
220
|
+
else:
|
221
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
222
|
+
|
223
|
+
def _internal_init(__self__,
|
224
|
+
resource_name: str,
|
225
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
226
|
+
condition: Optional[pulumi.Input[pulumi.InputType['TargetIamBindingConditionArgs']]] = None,
|
227
|
+
location: Optional[pulumi.Input[str]] = None,
|
228
|
+
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
229
|
+
name: Optional[pulumi.Input[str]] = None,
|
230
|
+
project: Optional[pulumi.Input[str]] = None,
|
231
|
+
role: Optional[pulumi.Input[str]] = None,
|
232
|
+
__props__=None):
|
233
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
234
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
235
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
236
|
+
if opts.id is None:
|
237
|
+
if __props__ is not None:
|
238
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
239
|
+
__props__ = TargetIamBindingArgs.__new__(TargetIamBindingArgs)
|
240
|
+
|
241
|
+
__props__.__dict__["condition"] = condition
|
242
|
+
__props__.__dict__["location"] = location
|
243
|
+
if members is None and not opts.urn:
|
244
|
+
raise TypeError("Missing required property 'members'")
|
245
|
+
__props__.__dict__["members"] = members
|
246
|
+
__props__.__dict__["name"] = name
|
247
|
+
__props__.__dict__["project"] = project
|
248
|
+
if role is None and not opts.urn:
|
249
|
+
raise TypeError("Missing required property 'role'")
|
250
|
+
__props__.__dict__["role"] = role
|
251
|
+
__props__.__dict__["etag"] = None
|
252
|
+
super(TargetIamBinding, __self__).__init__(
|
253
|
+
'gcp:clouddeploy/targetIamBinding:TargetIamBinding',
|
254
|
+
resource_name,
|
255
|
+
__props__,
|
256
|
+
opts)
|
257
|
+
|
258
|
+
@staticmethod
|
259
|
+
def get(resource_name: str,
|
260
|
+
id: pulumi.Input[str],
|
261
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
262
|
+
condition: Optional[pulumi.Input[pulumi.InputType['TargetIamBindingConditionArgs']]] = None,
|
263
|
+
etag: Optional[pulumi.Input[str]] = None,
|
264
|
+
location: Optional[pulumi.Input[str]] = None,
|
265
|
+
members: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
266
|
+
name: Optional[pulumi.Input[str]] = None,
|
267
|
+
project: Optional[pulumi.Input[str]] = None,
|
268
|
+
role: Optional[pulumi.Input[str]] = None) -> 'TargetIamBinding':
|
269
|
+
"""
|
270
|
+
Get an existing TargetIamBinding resource's state with the given name, id, and optional extra
|
271
|
+
properties used to qualify the lookup.
|
272
|
+
|
273
|
+
:param str resource_name: The unique name of the resulting resource.
|
274
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
275
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
276
|
+
"""
|
277
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
278
|
+
|
279
|
+
__props__ = _TargetIamBindingState.__new__(_TargetIamBindingState)
|
280
|
+
|
281
|
+
__props__.__dict__["condition"] = condition
|
282
|
+
__props__.__dict__["etag"] = etag
|
283
|
+
__props__.__dict__["location"] = location
|
284
|
+
__props__.__dict__["members"] = members
|
285
|
+
__props__.__dict__["name"] = name
|
286
|
+
__props__.__dict__["project"] = project
|
287
|
+
__props__.__dict__["role"] = role
|
288
|
+
return TargetIamBinding(resource_name, opts=opts, __props__=__props__)
|
289
|
+
|
290
|
+
@property
|
291
|
+
@pulumi.getter
|
292
|
+
def condition(self) -> pulumi.Output[Optional['outputs.TargetIamBindingCondition']]:
|
293
|
+
return pulumi.get(self, "condition")
|
294
|
+
|
295
|
+
@property
|
296
|
+
@pulumi.getter
|
297
|
+
def etag(self) -> pulumi.Output[str]:
|
298
|
+
return pulumi.get(self, "etag")
|
299
|
+
|
300
|
+
@property
|
301
|
+
@pulumi.getter
|
302
|
+
def location(self) -> pulumi.Output[str]:
|
303
|
+
return pulumi.get(self, "location")
|
304
|
+
|
305
|
+
@property
|
306
|
+
@pulumi.getter
|
307
|
+
def members(self) -> pulumi.Output[Sequence[str]]:
|
308
|
+
return pulumi.get(self, "members")
|
309
|
+
|
310
|
+
@property
|
311
|
+
@pulumi.getter
|
312
|
+
def name(self) -> pulumi.Output[str]:
|
313
|
+
return pulumi.get(self, "name")
|
314
|
+
|
315
|
+
@property
|
316
|
+
@pulumi.getter
|
317
|
+
def project(self) -> pulumi.Output[str]:
|
318
|
+
return pulumi.get(self, "project")
|
319
|
+
|
320
|
+
@property
|
321
|
+
@pulumi.getter
|
322
|
+
def role(self) -> pulumi.Output[str]:
|
323
|
+
return pulumi.get(self, "role")
|
324
|
+
|