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
@@ -0,0 +1,715 @@
|
|
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
|
+
from ._inputs import *
|
18
|
+
|
19
|
+
__all__ = ['RepositoryArgs', 'Repository']
|
20
|
+
|
21
|
+
@pulumi.input_type
|
22
|
+
class RepositoryArgs:
|
23
|
+
def __init__(__self__, *,
|
24
|
+
instance: pulumi.Input[str],
|
25
|
+
location: pulumi.Input[str],
|
26
|
+
repository_id: pulumi.Input[str],
|
27
|
+
description: Optional[pulumi.Input[str]] = None,
|
28
|
+
initial_config: Optional[pulumi.Input['RepositoryInitialConfigArgs']] = None,
|
29
|
+
project: Optional[pulumi.Input[str]] = None):
|
30
|
+
"""
|
31
|
+
The set of arguments for constructing a Repository resource.
|
32
|
+
:param pulumi.Input[str] instance: The name of the instance in which the repository is hosted.
|
33
|
+
:param pulumi.Input[str] location: The location for the Repository.
|
34
|
+
:param pulumi.Input[str] repository_id: The ID for the Repository.
|
35
|
+
|
36
|
+
|
37
|
+
- - -
|
38
|
+
:param pulumi.Input[str] description: Description of the repository, which cannot exceed 500 characters.
|
39
|
+
:param pulumi.Input['RepositoryInitialConfigArgs'] initial_config: Initial configurations for the repository.
|
40
|
+
Structure is documented below.
|
41
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
42
|
+
If it is not provided, the provider project is used.
|
43
|
+
"""
|
44
|
+
pulumi.set(__self__, "instance", instance)
|
45
|
+
pulumi.set(__self__, "location", location)
|
46
|
+
pulumi.set(__self__, "repository_id", repository_id)
|
47
|
+
if description is not None:
|
48
|
+
pulumi.set(__self__, "description", description)
|
49
|
+
if initial_config is not None:
|
50
|
+
pulumi.set(__self__, "initial_config", initial_config)
|
51
|
+
if project is not None:
|
52
|
+
pulumi.set(__self__, "project", project)
|
53
|
+
|
54
|
+
@property
|
55
|
+
@pulumi.getter
|
56
|
+
def instance(self) -> pulumi.Input[str]:
|
57
|
+
"""
|
58
|
+
The name of the instance in which the repository is hosted.
|
59
|
+
"""
|
60
|
+
return pulumi.get(self, "instance")
|
61
|
+
|
62
|
+
@instance.setter
|
63
|
+
def instance(self, value: pulumi.Input[str]):
|
64
|
+
pulumi.set(self, "instance", value)
|
65
|
+
|
66
|
+
@property
|
67
|
+
@pulumi.getter
|
68
|
+
def location(self) -> pulumi.Input[str]:
|
69
|
+
"""
|
70
|
+
The location for the Repository.
|
71
|
+
"""
|
72
|
+
return pulumi.get(self, "location")
|
73
|
+
|
74
|
+
@location.setter
|
75
|
+
def location(self, value: pulumi.Input[str]):
|
76
|
+
pulumi.set(self, "location", value)
|
77
|
+
|
78
|
+
@property
|
79
|
+
@pulumi.getter(name="repositoryId")
|
80
|
+
def repository_id(self) -> pulumi.Input[str]:
|
81
|
+
"""
|
82
|
+
The ID for the Repository.
|
83
|
+
|
84
|
+
|
85
|
+
- - -
|
86
|
+
"""
|
87
|
+
return pulumi.get(self, "repository_id")
|
88
|
+
|
89
|
+
@repository_id.setter
|
90
|
+
def repository_id(self, value: pulumi.Input[str]):
|
91
|
+
pulumi.set(self, "repository_id", value)
|
92
|
+
|
93
|
+
@property
|
94
|
+
@pulumi.getter
|
95
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
96
|
+
"""
|
97
|
+
Description of the repository, which cannot exceed 500 characters.
|
98
|
+
"""
|
99
|
+
return pulumi.get(self, "description")
|
100
|
+
|
101
|
+
@description.setter
|
102
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
103
|
+
pulumi.set(self, "description", value)
|
104
|
+
|
105
|
+
@property
|
106
|
+
@pulumi.getter(name="initialConfig")
|
107
|
+
def initial_config(self) -> Optional[pulumi.Input['RepositoryInitialConfigArgs']]:
|
108
|
+
"""
|
109
|
+
Initial configurations for the repository.
|
110
|
+
Structure is documented below.
|
111
|
+
"""
|
112
|
+
return pulumi.get(self, "initial_config")
|
113
|
+
|
114
|
+
@initial_config.setter
|
115
|
+
def initial_config(self, value: Optional[pulumi.Input['RepositoryInitialConfigArgs']]):
|
116
|
+
pulumi.set(self, "initial_config", value)
|
117
|
+
|
118
|
+
@property
|
119
|
+
@pulumi.getter
|
120
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
121
|
+
"""
|
122
|
+
The ID of the project in which the resource belongs.
|
123
|
+
If it is not provided, the provider project is used.
|
124
|
+
"""
|
125
|
+
return pulumi.get(self, "project")
|
126
|
+
|
127
|
+
@project.setter
|
128
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
129
|
+
pulumi.set(self, "project", value)
|
130
|
+
|
131
|
+
|
132
|
+
@pulumi.input_type
|
133
|
+
class _RepositoryState:
|
134
|
+
def __init__(__self__, *,
|
135
|
+
create_time: Optional[pulumi.Input[str]] = None,
|
136
|
+
description: Optional[pulumi.Input[str]] = None,
|
137
|
+
initial_config: Optional[pulumi.Input['RepositoryInitialConfigArgs']] = None,
|
138
|
+
instance: Optional[pulumi.Input[str]] = None,
|
139
|
+
location: Optional[pulumi.Input[str]] = None,
|
140
|
+
name: Optional[pulumi.Input[str]] = None,
|
141
|
+
project: Optional[pulumi.Input[str]] = None,
|
142
|
+
repository_id: Optional[pulumi.Input[str]] = None,
|
143
|
+
uid: Optional[pulumi.Input[str]] = None,
|
144
|
+
update_time: Optional[pulumi.Input[str]] = None,
|
145
|
+
uris: Optional[pulumi.Input[Sequence[pulumi.Input['RepositoryUriArgs']]]] = None):
|
146
|
+
"""
|
147
|
+
Input properties used for looking up and filtering Repository resources.
|
148
|
+
:param pulumi.Input[str] create_time: Time the repository was created in UTC.
|
149
|
+
:param pulumi.Input[str] description: Description of the repository, which cannot exceed 500 characters.
|
150
|
+
:param pulumi.Input['RepositoryInitialConfigArgs'] initial_config: Initial configurations for the repository.
|
151
|
+
Structure is documented below.
|
152
|
+
:param pulumi.Input[str] instance: The name of the instance in which the repository is hosted.
|
153
|
+
:param pulumi.Input[str] location: The location for the Repository.
|
154
|
+
:param pulumi.Input[str] name: The resource name for the Repository.
|
155
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
156
|
+
If it is not provided, the provider project is used.
|
157
|
+
:param pulumi.Input[str] repository_id: The ID for the Repository.
|
158
|
+
|
159
|
+
|
160
|
+
- - -
|
161
|
+
:param pulumi.Input[str] uid: Unique identifier of the repository.
|
162
|
+
:param pulumi.Input[str] update_time: Time the repository was updated in UTC.
|
163
|
+
:param pulumi.Input[Sequence[pulumi.Input['RepositoryUriArgs']]] uris: URIs for the repository.
|
164
|
+
Structure is documented below.
|
165
|
+
"""
|
166
|
+
if create_time is not None:
|
167
|
+
pulumi.set(__self__, "create_time", create_time)
|
168
|
+
if description is not None:
|
169
|
+
pulumi.set(__self__, "description", description)
|
170
|
+
if initial_config is not None:
|
171
|
+
pulumi.set(__self__, "initial_config", initial_config)
|
172
|
+
if instance is not None:
|
173
|
+
pulumi.set(__self__, "instance", instance)
|
174
|
+
if location is not None:
|
175
|
+
pulumi.set(__self__, "location", location)
|
176
|
+
if name is not None:
|
177
|
+
pulumi.set(__self__, "name", name)
|
178
|
+
if project is not None:
|
179
|
+
pulumi.set(__self__, "project", project)
|
180
|
+
if repository_id is not None:
|
181
|
+
pulumi.set(__self__, "repository_id", repository_id)
|
182
|
+
if uid is not None:
|
183
|
+
pulumi.set(__self__, "uid", uid)
|
184
|
+
if update_time is not None:
|
185
|
+
pulumi.set(__self__, "update_time", update_time)
|
186
|
+
if uris is not None:
|
187
|
+
pulumi.set(__self__, "uris", uris)
|
188
|
+
|
189
|
+
@property
|
190
|
+
@pulumi.getter(name="createTime")
|
191
|
+
def create_time(self) -> Optional[pulumi.Input[str]]:
|
192
|
+
"""
|
193
|
+
Time the repository was created in UTC.
|
194
|
+
"""
|
195
|
+
return pulumi.get(self, "create_time")
|
196
|
+
|
197
|
+
@create_time.setter
|
198
|
+
def create_time(self, value: Optional[pulumi.Input[str]]):
|
199
|
+
pulumi.set(self, "create_time", value)
|
200
|
+
|
201
|
+
@property
|
202
|
+
@pulumi.getter
|
203
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
204
|
+
"""
|
205
|
+
Description of the repository, which cannot exceed 500 characters.
|
206
|
+
"""
|
207
|
+
return pulumi.get(self, "description")
|
208
|
+
|
209
|
+
@description.setter
|
210
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
211
|
+
pulumi.set(self, "description", value)
|
212
|
+
|
213
|
+
@property
|
214
|
+
@pulumi.getter(name="initialConfig")
|
215
|
+
def initial_config(self) -> Optional[pulumi.Input['RepositoryInitialConfigArgs']]:
|
216
|
+
"""
|
217
|
+
Initial configurations for the repository.
|
218
|
+
Structure is documented below.
|
219
|
+
"""
|
220
|
+
return pulumi.get(self, "initial_config")
|
221
|
+
|
222
|
+
@initial_config.setter
|
223
|
+
def initial_config(self, value: Optional[pulumi.Input['RepositoryInitialConfigArgs']]):
|
224
|
+
pulumi.set(self, "initial_config", value)
|
225
|
+
|
226
|
+
@property
|
227
|
+
@pulumi.getter
|
228
|
+
def instance(self) -> Optional[pulumi.Input[str]]:
|
229
|
+
"""
|
230
|
+
The name of the instance in which the repository is hosted.
|
231
|
+
"""
|
232
|
+
return pulumi.get(self, "instance")
|
233
|
+
|
234
|
+
@instance.setter
|
235
|
+
def instance(self, value: Optional[pulumi.Input[str]]):
|
236
|
+
pulumi.set(self, "instance", value)
|
237
|
+
|
238
|
+
@property
|
239
|
+
@pulumi.getter
|
240
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
241
|
+
"""
|
242
|
+
The location for the Repository.
|
243
|
+
"""
|
244
|
+
return pulumi.get(self, "location")
|
245
|
+
|
246
|
+
@location.setter
|
247
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
248
|
+
pulumi.set(self, "location", value)
|
249
|
+
|
250
|
+
@property
|
251
|
+
@pulumi.getter
|
252
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
253
|
+
"""
|
254
|
+
The resource name for the Repository.
|
255
|
+
"""
|
256
|
+
return pulumi.get(self, "name")
|
257
|
+
|
258
|
+
@name.setter
|
259
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
260
|
+
pulumi.set(self, "name", value)
|
261
|
+
|
262
|
+
@property
|
263
|
+
@pulumi.getter
|
264
|
+
def project(self) -> Optional[pulumi.Input[str]]:
|
265
|
+
"""
|
266
|
+
The ID of the project in which the resource belongs.
|
267
|
+
If it is not provided, the provider project is used.
|
268
|
+
"""
|
269
|
+
return pulumi.get(self, "project")
|
270
|
+
|
271
|
+
@project.setter
|
272
|
+
def project(self, value: Optional[pulumi.Input[str]]):
|
273
|
+
pulumi.set(self, "project", value)
|
274
|
+
|
275
|
+
@property
|
276
|
+
@pulumi.getter(name="repositoryId")
|
277
|
+
def repository_id(self) -> Optional[pulumi.Input[str]]:
|
278
|
+
"""
|
279
|
+
The ID for the Repository.
|
280
|
+
|
281
|
+
|
282
|
+
- - -
|
283
|
+
"""
|
284
|
+
return pulumi.get(self, "repository_id")
|
285
|
+
|
286
|
+
@repository_id.setter
|
287
|
+
def repository_id(self, value: Optional[pulumi.Input[str]]):
|
288
|
+
pulumi.set(self, "repository_id", value)
|
289
|
+
|
290
|
+
@property
|
291
|
+
@pulumi.getter
|
292
|
+
def uid(self) -> Optional[pulumi.Input[str]]:
|
293
|
+
"""
|
294
|
+
Unique identifier of the repository.
|
295
|
+
"""
|
296
|
+
return pulumi.get(self, "uid")
|
297
|
+
|
298
|
+
@uid.setter
|
299
|
+
def uid(self, value: Optional[pulumi.Input[str]]):
|
300
|
+
pulumi.set(self, "uid", value)
|
301
|
+
|
302
|
+
@property
|
303
|
+
@pulumi.getter(name="updateTime")
|
304
|
+
def update_time(self) -> Optional[pulumi.Input[str]]:
|
305
|
+
"""
|
306
|
+
Time the repository was updated in UTC.
|
307
|
+
"""
|
308
|
+
return pulumi.get(self, "update_time")
|
309
|
+
|
310
|
+
@update_time.setter
|
311
|
+
def update_time(self, value: Optional[pulumi.Input[str]]):
|
312
|
+
pulumi.set(self, "update_time", value)
|
313
|
+
|
314
|
+
@property
|
315
|
+
@pulumi.getter
|
316
|
+
def uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RepositoryUriArgs']]]]:
|
317
|
+
"""
|
318
|
+
URIs for the repository.
|
319
|
+
Structure is documented below.
|
320
|
+
"""
|
321
|
+
return pulumi.get(self, "uris")
|
322
|
+
|
323
|
+
@uris.setter
|
324
|
+
def uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RepositoryUriArgs']]]]):
|
325
|
+
pulumi.set(self, "uris", value)
|
326
|
+
|
327
|
+
|
328
|
+
class Repository(pulumi.CustomResource):
|
329
|
+
@overload
|
330
|
+
def __init__(__self__,
|
331
|
+
resource_name: str,
|
332
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
333
|
+
description: Optional[pulumi.Input[str]] = None,
|
334
|
+
initial_config: Optional[pulumi.Input[Union['RepositoryInitialConfigArgs', 'RepositoryInitialConfigArgsDict']]] = None,
|
335
|
+
instance: Optional[pulumi.Input[str]] = None,
|
336
|
+
location: Optional[pulumi.Input[str]] = None,
|
337
|
+
project: Optional[pulumi.Input[str]] = None,
|
338
|
+
repository_id: Optional[pulumi.Input[str]] = None,
|
339
|
+
__props__=None):
|
340
|
+
"""
|
341
|
+
Repositories store source code. It supports all Git SCM client commands and has built-in pull requests and issue tracking. Both HTTPS and SSH authentication are supported.
|
342
|
+
|
343
|
+
To get more information about Repository, see:
|
344
|
+
|
345
|
+
* How-to Guides
|
346
|
+
* [Official Documentation](https://cloud.google.com/secure-source-manager/docs/overview)
|
347
|
+
|
348
|
+
## Example Usage
|
349
|
+
|
350
|
+
### Secure Source Manager Repository Basic
|
351
|
+
|
352
|
+
```python
|
353
|
+
import pulumi
|
354
|
+
import pulumi_gcp as gcp
|
355
|
+
|
356
|
+
instance = gcp.securesourcemanager.Instance("instance",
|
357
|
+
location="us-central1",
|
358
|
+
instance_id="my-instance")
|
359
|
+
default = gcp.securesourcemanager.Repository("default",
|
360
|
+
location="us-central1",
|
361
|
+
repository_id="my-repository",
|
362
|
+
instance=instance.name)
|
363
|
+
```
|
364
|
+
### Secure Source Manager Repository Initial Config
|
365
|
+
|
366
|
+
```python
|
367
|
+
import pulumi
|
368
|
+
import pulumi_gcp as gcp
|
369
|
+
|
370
|
+
instance = gcp.securesourcemanager.Instance("instance",
|
371
|
+
location="us-central1",
|
372
|
+
instance_id="my-instance")
|
373
|
+
default = gcp.securesourcemanager.Repository("default",
|
374
|
+
location="us-central1",
|
375
|
+
repository_id="my-repository",
|
376
|
+
instance=instance.name,
|
377
|
+
description="This is a test repository",
|
378
|
+
initial_config={
|
379
|
+
"defaultBranch": "main",
|
380
|
+
"gitignores": ["python"],
|
381
|
+
"license": "mit",
|
382
|
+
"readme": "default",
|
383
|
+
})
|
384
|
+
```
|
385
|
+
|
386
|
+
## Import
|
387
|
+
|
388
|
+
Repository can be imported using any of these accepted formats:
|
389
|
+
|
390
|
+
* `projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}`
|
391
|
+
|
392
|
+
* `{{project}}/{{location}}/{{repository_id}}`
|
393
|
+
|
394
|
+
* `{{location}}/{{repository_id}}`
|
395
|
+
|
396
|
+
* `{{repository_id}}`
|
397
|
+
|
398
|
+
When using the `pulumi import` command, Repository can be imported using one of the formats above. For example:
|
399
|
+
|
400
|
+
```sh
|
401
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}
|
402
|
+
```
|
403
|
+
|
404
|
+
```sh
|
405
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default {{project}}/{{location}}/{{repository_id}}
|
406
|
+
```
|
407
|
+
|
408
|
+
```sh
|
409
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default {{location}}/{{repository_id}}
|
410
|
+
```
|
411
|
+
|
412
|
+
```sh
|
413
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default {{repository_id}}
|
414
|
+
```
|
415
|
+
|
416
|
+
:param str resource_name: The name of the resource.
|
417
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
418
|
+
:param pulumi.Input[str] description: Description of the repository, which cannot exceed 500 characters.
|
419
|
+
:param pulumi.Input[Union['RepositoryInitialConfigArgs', 'RepositoryInitialConfigArgsDict']] initial_config: Initial configurations for the repository.
|
420
|
+
Structure is documented below.
|
421
|
+
:param pulumi.Input[str] instance: The name of the instance in which the repository is hosted.
|
422
|
+
:param pulumi.Input[str] location: The location for the Repository.
|
423
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
424
|
+
If it is not provided, the provider project is used.
|
425
|
+
:param pulumi.Input[str] repository_id: The ID for the Repository.
|
426
|
+
|
427
|
+
|
428
|
+
- - -
|
429
|
+
"""
|
430
|
+
...
|
431
|
+
@overload
|
432
|
+
def __init__(__self__,
|
433
|
+
resource_name: str,
|
434
|
+
args: RepositoryArgs,
|
435
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
436
|
+
"""
|
437
|
+
Repositories store source code. It supports all Git SCM client commands and has built-in pull requests and issue tracking. Both HTTPS and SSH authentication are supported.
|
438
|
+
|
439
|
+
To get more information about Repository, see:
|
440
|
+
|
441
|
+
* How-to Guides
|
442
|
+
* [Official Documentation](https://cloud.google.com/secure-source-manager/docs/overview)
|
443
|
+
|
444
|
+
## Example Usage
|
445
|
+
|
446
|
+
### Secure Source Manager Repository Basic
|
447
|
+
|
448
|
+
```python
|
449
|
+
import pulumi
|
450
|
+
import pulumi_gcp as gcp
|
451
|
+
|
452
|
+
instance = gcp.securesourcemanager.Instance("instance",
|
453
|
+
location="us-central1",
|
454
|
+
instance_id="my-instance")
|
455
|
+
default = gcp.securesourcemanager.Repository("default",
|
456
|
+
location="us-central1",
|
457
|
+
repository_id="my-repository",
|
458
|
+
instance=instance.name)
|
459
|
+
```
|
460
|
+
### Secure Source Manager Repository Initial Config
|
461
|
+
|
462
|
+
```python
|
463
|
+
import pulumi
|
464
|
+
import pulumi_gcp as gcp
|
465
|
+
|
466
|
+
instance = gcp.securesourcemanager.Instance("instance",
|
467
|
+
location="us-central1",
|
468
|
+
instance_id="my-instance")
|
469
|
+
default = gcp.securesourcemanager.Repository("default",
|
470
|
+
location="us-central1",
|
471
|
+
repository_id="my-repository",
|
472
|
+
instance=instance.name,
|
473
|
+
description="This is a test repository",
|
474
|
+
initial_config={
|
475
|
+
"defaultBranch": "main",
|
476
|
+
"gitignores": ["python"],
|
477
|
+
"license": "mit",
|
478
|
+
"readme": "default",
|
479
|
+
})
|
480
|
+
```
|
481
|
+
|
482
|
+
## Import
|
483
|
+
|
484
|
+
Repository can be imported using any of these accepted formats:
|
485
|
+
|
486
|
+
* `projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}`
|
487
|
+
|
488
|
+
* `{{project}}/{{location}}/{{repository_id}}`
|
489
|
+
|
490
|
+
* `{{location}}/{{repository_id}}`
|
491
|
+
|
492
|
+
* `{{repository_id}}`
|
493
|
+
|
494
|
+
When using the `pulumi import` command, Repository can be imported using one of the formats above. For example:
|
495
|
+
|
496
|
+
```sh
|
497
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default projects/{{project}}/locations/{{location}}/repositories/{{repository_id}}
|
498
|
+
```
|
499
|
+
|
500
|
+
```sh
|
501
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default {{project}}/{{location}}/{{repository_id}}
|
502
|
+
```
|
503
|
+
|
504
|
+
```sh
|
505
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default {{location}}/{{repository_id}}
|
506
|
+
```
|
507
|
+
|
508
|
+
```sh
|
509
|
+
$ pulumi import gcp:securesourcemanager/repository:Repository default {{repository_id}}
|
510
|
+
```
|
511
|
+
|
512
|
+
:param str resource_name: The name of the resource.
|
513
|
+
:param RepositoryArgs args: The arguments to use to populate this resource's properties.
|
514
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
515
|
+
"""
|
516
|
+
...
|
517
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
518
|
+
resource_args, opts = _utilities.get_resource_args_opts(RepositoryArgs, pulumi.ResourceOptions, *args, **kwargs)
|
519
|
+
if resource_args is not None:
|
520
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
521
|
+
else:
|
522
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
523
|
+
|
524
|
+
def _internal_init(__self__,
|
525
|
+
resource_name: str,
|
526
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
527
|
+
description: Optional[pulumi.Input[str]] = None,
|
528
|
+
initial_config: Optional[pulumi.Input[Union['RepositoryInitialConfigArgs', 'RepositoryInitialConfigArgsDict']]] = None,
|
529
|
+
instance: Optional[pulumi.Input[str]] = None,
|
530
|
+
location: Optional[pulumi.Input[str]] = None,
|
531
|
+
project: Optional[pulumi.Input[str]] = None,
|
532
|
+
repository_id: Optional[pulumi.Input[str]] = None,
|
533
|
+
__props__=None):
|
534
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
535
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
536
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
537
|
+
if opts.id is None:
|
538
|
+
if __props__ is not None:
|
539
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
540
|
+
__props__ = RepositoryArgs.__new__(RepositoryArgs)
|
541
|
+
|
542
|
+
__props__.__dict__["description"] = description
|
543
|
+
__props__.__dict__["initial_config"] = initial_config
|
544
|
+
if instance is None and not opts.urn:
|
545
|
+
raise TypeError("Missing required property 'instance'")
|
546
|
+
__props__.__dict__["instance"] = instance
|
547
|
+
if location is None and not opts.urn:
|
548
|
+
raise TypeError("Missing required property 'location'")
|
549
|
+
__props__.__dict__["location"] = location
|
550
|
+
__props__.__dict__["project"] = project
|
551
|
+
if repository_id is None and not opts.urn:
|
552
|
+
raise TypeError("Missing required property 'repository_id'")
|
553
|
+
__props__.__dict__["repository_id"] = repository_id
|
554
|
+
__props__.__dict__["create_time"] = None
|
555
|
+
__props__.__dict__["name"] = None
|
556
|
+
__props__.__dict__["uid"] = None
|
557
|
+
__props__.__dict__["update_time"] = None
|
558
|
+
__props__.__dict__["uris"] = None
|
559
|
+
super(Repository, __self__).__init__(
|
560
|
+
'gcp:securesourcemanager/repository:Repository',
|
561
|
+
resource_name,
|
562
|
+
__props__,
|
563
|
+
opts)
|
564
|
+
|
565
|
+
@staticmethod
|
566
|
+
def get(resource_name: str,
|
567
|
+
id: pulumi.Input[str],
|
568
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
569
|
+
create_time: Optional[pulumi.Input[str]] = None,
|
570
|
+
description: Optional[pulumi.Input[str]] = None,
|
571
|
+
initial_config: Optional[pulumi.Input[Union['RepositoryInitialConfigArgs', 'RepositoryInitialConfigArgsDict']]] = None,
|
572
|
+
instance: Optional[pulumi.Input[str]] = None,
|
573
|
+
location: Optional[pulumi.Input[str]] = None,
|
574
|
+
name: Optional[pulumi.Input[str]] = None,
|
575
|
+
project: Optional[pulumi.Input[str]] = None,
|
576
|
+
repository_id: Optional[pulumi.Input[str]] = None,
|
577
|
+
uid: Optional[pulumi.Input[str]] = None,
|
578
|
+
update_time: Optional[pulumi.Input[str]] = None,
|
579
|
+
uris: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RepositoryUriArgs', 'RepositoryUriArgsDict']]]]] = None) -> 'Repository':
|
580
|
+
"""
|
581
|
+
Get an existing Repository resource's state with the given name, id, and optional extra
|
582
|
+
properties used to qualify the lookup.
|
583
|
+
|
584
|
+
:param str resource_name: The unique name of the resulting resource.
|
585
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
586
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
587
|
+
:param pulumi.Input[str] create_time: Time the repository was created in UTC.
|
588
|
+
:param pulumi.Input[str] description: Description of the repository, which cannot exceed 500 characters.
|
589
|
+
:param pulumi.Input[Union['RepositoryInitialConfigArgs', 'RepositoryInitialConfigArgsDict']] initial_config: Initial configurations for the repository.
|
590
|
+
Structure is documented below.
|
591
|
+
:param pulumi.Input[str] instance: The name of the instance in which the repository is hosted.
|
592
|
+
:param pulumi.Input[str] location: The location for the Repository.
|
593
|
+
:param pulumi.Input[str] name: The resource name for the Repository.
|
594
|
+
:param pulumi.Input[str] project: The ID of the project in which the resource belongs.
|
595
|
+
If it is not provided, the provider project is used.
|
596
|
+
:param pulumi.Input[str] repository_id: The ID for the Repository.
|
597
|
+
|
598
|
+
|
599
|
+
- - -
|
600
|
+
:param pulumi.Input[str] uid: Unique identifier of the repository.
|
601
|
+
:param pulumi.Input[str] update_time: Time the repository was updated in UTC.
|
602
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RepositoryUriArgs', 'RepositoryUriArgsDict']]]] uris: URIs for the repository.
|
603
|
+
Structure is documented below.
|
604
|
+
"""
|
605
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
606
|
+
|
607
|
+
__props__ = _RepositoryState.__new__(_RepositoryState)
|
608
|
+
|
609
|
+
__props__.__dict__["create_time"] = create_time
|
610
|
+
__props__.__dict__["description"] = description
|
611
|
+
__props__.__dict__["initial_config"] = initial_config
|
612
|
+
__props__.__dict__["instance"] = instance
|
613
|
+
__props__.__dict__["location"] = location
|
614
|
+
__props__.__dict__["name"] = name
|
615
|
+
__props__.__dict__["project"] = project
|
616
|
+
__props__.__dict__["repository_id"] = repository_id
|
617
|
+
__props__.__dict__["uid"] = uid
|
618
|
+
__props__.__dict__["update_time"] = update_time
|
619
|
+
__props__.__dict__["uris"] = uris
|
620
|
+
return Repository(resource_name, opts=opts, __props__=__props__)
|
621
|
+
|
622
|
+
@property
|
623
|
+
@pulumi.getter(name="createTime")
|
624
|
+
def create_time(self) -> pulumi.Output[str]:
|
625
|
+
"""
|
626
|
+
Time the repository was created in UTC.
|
627
|
+
"""
|
628
|
+
return pulumi.get(self, "create_time")
|
629
|
+
|
630
|
+
@property
|
631
|
+
@pulumi.getter
|
632
|
+
def description(self) -> pulumi.Output[Optional[str]]:
|
633
|
+
"""
|
634
|
+
Description of the repository, which cannot exceed 500 characters.
|
635
|
+
"""
|
636
|
+
return pulumi.get(self, "description")
|
637
|
+
|
638
|
+
@property
|
639
|
+
@pulumi.getter(name="initialConfig")
|
640
|
+
def initial_config(self) -> pulumi.Output[Optional['outputs.RepositoryInitialConfig']]:
|
641
|
+
"""
|
642
|
+
Initial configurations for the repository.
|
643
|
+
Structure is documented below.
|
644
|
+
"""
|
645
|
+
return pulumi.get(self, "initial_config")
|
646
|
+
|
647
|
+
@property
|
648
|
+
@pulumi.getter
|
649
|
+
def instance(self) -> pulumi.Output[str]:
|
650
|
+
"""
|
651
|
+
The name of the instance in which the repository is hosted.
|
652
|
+
"""
|
653
|
+
return pulumi.get(self, "instance")
|
654
|
+
|
655
|
+
@property
|
656
|
+
@pulumi.getter
|
657
|
+
def location(self) -> pulumi.Output[str]:
|
658
|
+
"""
|
659
|
+
The location for the Repository.
|
660
|
+
"""
|
661
|
+
return pulumi.get(self, "location")
|
662
|
+
|
663
|
+
@property
|
664
|
+
@pulumi.getter
|
665
|
+
def name(self) -> pulumi.Output[str]:
|
666
|
+
"""
|
667
|
+
The resource name for the Repository.
|
668
|
+
"""
|
669
|
+
return pulumi.get(self, "name")
|
670
|
+
|
671
|
+
@property
|
672
|
+
@pulumi.getter
|
673
|
+
def project(self) -> pulumi.Output[str]:
|
674
|
+
"""
|
675
|
+
The ID of the project in which the resource belongs.
|
676
|
+
If it is not provided, the provider project is used.
|
677
|
+
"""
|
678
|
+
return pulumi.get(self, "project")
|
679
|
+
|
680
|
+
@property
|
681
|
+
@pulumi.getter(name="repositoryId")
|
682
|
+
def repository_id(self) -> pulumi.Output[str]:
|
683
|
+
"""
|
684
|
+
The ID for the Repository.
|
685
|
+
|
686
|
+
|
687
|
+
- - -
|
688
|
+
"""
|
689
|
+
return pulumi.get(self, "repository_id")
|
690
|
+
|
691
|
+
@property
|
692
|
+
@pulumi.getter
|
693
|
+
def uid(self) -> pulumi.Output[str]:
|
694
|
+
"""
|
695
|
+
Unique identifier of the repository.
|
696
|
+
"""
|
697
|
+
return pulumi.get(self, "uid")
|
698
|
+
|
699
|
+
@property
|
700
|
+
@pulumi.getter(name="updateTime")
|
701
|
+
def update_time(self) -> pulumi.Output[str]:
|
702
|
+
"""
|
703
|
+
Time the repository was updated in UTC.
|
704
|
+
"""
|
705
|
+
return pulumi.get(self, "update_time")
|
706
|
+
|
707
|
+
@property
|
708
|
+
@pulumi.getter
|
709
|
+
def uris(self) -> pulumi.Output[Sequence['outputs.RepositoryUri']]:
|
710
|
+
"""
|
711
|
+
URIs for the repository.
|
712
|
+
Structure is documented below.
|
713
|
+
"""
|
714
|
+
return pulumi.get(self, "uris")
|
715
|
+
|