pulumi-gcp 8.1.0a1726492828__py3-none-any.whl → 8.2.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.
Files changed (43) hide show
  1. pulumi_gcp/__init__.py +38 -0
  2. pulumi_gcp/bigquery/__init__.py +1 -0
  3. pulumi_gcp/bigquery/get_tables.py +143 -0
  4. pulumi_gcp/bigquery/outputs.py +30 -0
  5. pulumi_gcp/compute/__init__.py +1 -0
  6. pulumi_gcp/compute/_inputs.py +2208 -285
  7. pulumi_gcp/compute/get_instance.py +3 -0
  8. pulumi_gcp/compute/network_firewall_policy_with_rules.py +826 -0
  9. pulumi_gcp/compute/outputs.py +1383 -0
  10. pulumi_gcp/compute/region_target_http_proxy.py +159 -0
  11. pulumi_gcp/compute/region_target_https_proxy.py +175 -0
  12. pulumi_gcp/compute/service_attachment.py +75 -0
  13. pulumi_gcp/compute/target_http_proxy.py +49 -28
  14. pulumi_gcp/compute/target_https_proxy.py +49 -28
  15. pulumi_gcp/config/__init__.pyi +4 -0
  16. pulumi_gcp/config/vars.py +8 -0
  17. pulumi_gcp/container/_inputs.py +96 -0
  18. pulumi_gcp/container/attached_cluster.py +54 -1
  19. pulumi_gcp/container/outputs.py +102 -0
  20. pulumi_gcp/dataproc/metastore_federation.py +8 -8
  21. pulumi_gcp/dataproc/metastore_service.py +2 -0
  22. pulumi_gcp/datastream/stream.py +21 -14
  23. pulumi_gcp/developerconnect/__init__.py +11 -0
  24. pulumi_gcp/developerconnect/_inputs.py +301 -0
  25. pulumi_gcp/developerconnect/connection.py +1034 -0
  26. pulumi_gcp/developerconnect/git_repository_link.py +873 -0
  27. pulumi_gcp/developerconnect/outputs.py +247 -0
  28. pulumi_gcp/gkeonprem/_inputs.py +3 -3
  29. pulumi_gcp/gkeonprem/outputs.py +2 -2
  30. pulumi_gcp/memorystore/__init__.py +10 -0
  31. pulumi_gcp/memorystore/_inputs.py +731 -0
  32. pulumi_gcp/memorystore/instance.py +1663 -0
  33. pulumi_gcp/memorystore/outputs.py +598 -0
  34. pulumi_gcp/netapp/volume.py +101 -0
  35. pulumi_gcp/organizations/folder.py +52 -33
  36. pulumi_gcp/provider.py +40 -0
  37. pulumi_gcp/pulumi-plugin.json +1 -1
  38. pulumi_gcp/securitycenter/v2_project_mute_config.py +2 -2
  39. pulumi_gcp/vpcaccess/connector.py +21 -28
  40. {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/METADATA +1 -1
  41. {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/RECORD +43 -32
  42. {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/WHEEL +0 -0
  43. {pulumi_gcp-8.1.0a1726492828.dist-info → pulumi_gcp-8.2.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,873 @@
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
+
17
+ __all__ = ['GitRepositoryLinkArgs', 'GitRepositoryLink']
18
+
19
+ @pulumi.input_type
20
+ class GitRepositoryLinkArgs:
21
+ def __init__(__self__, *,
22
+ clone_uri: pulumi.Input[str],
23
+ git_repository_link_id: pulumi.Input[str],
24
+ location: pulumi.Input[str],
25
+ parent_connection: pulumi.Input[str],
26
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
+ etag: Optional[pulumi.Input[str]] = None,
28
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
29
+ project: Optional[pulumi.Input[str]] = None):
30
+ """
31
+ The set of arguments for constructing a GitRepositoryLink resource.
32
+ :param pulumi.Input[str] clone_uri: Required. Git Clone URI.
33
+ :param pulumi.Input[str] git_repository_link_id: Required. The ID to use for the repository, which will become the final component of
34
+ the repository's resource name. This ID should be unique in the connection.
35
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
36
+
37
+
38
+ - - -
39
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
40
+ :param pulumi.Input[str] parent_connection: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
41
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
42
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
43
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
44
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value of other
45
+ fields, and may be sent on update and delete requests to ensure the
46
+ client has an up-to-date value before proceeding.
47
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
48
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
49
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
50
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
51
+ If it is not provided, the provider project is used.
52
+ """
53
+ pulumi.set(__self__, "clone_uri", clone_uri)
54
+ pulumi.set(__self__, "git_repository_link_id", git_repository_link_id)
55
+ pulumi.set(__self__, "location", location)
56
+ pulumi.set(__self__, "parent_connection", parent_connection)
57
+ if annotations is not None:
58
+ pulumi.set(__self__, "annotations", annotations)
59
+ if etag is not None:
60
+ pulumi.set(__self__, "etag", etag)
61
+ if labels is not None:
62
+ pulumi.set(__self__, "labels", labels)
63
+ if project is not None:
64
+ pulumi.set(__self__, "project", project)
65
+
66
+ @property
67
+ @pulumi.getter(name="cloneUri")
68
+ def clone_uri(self) -> pulumi.Input[str]:
69
+ """
70
+ Required. Git Clone URI.
71
+ """
72
+ return pulumi.get(self, "clone_uri")
73
+
74
+ @clone_uri.setter
75
+ def clone_uri(self, value: pulumi.Input[str]):
76
+ pulumi.set(self, "clone_uri", value)
77
+
78
+ @property
79
+ @pulumi.getter(name="gitRepositoryLinkId")
80
+ def git_repository_link_id(self) -> pulumi.Input[str]:
81
+ """
82
+ Required. The ID to use for the repository, which will become the final component of
83
+ the repository's resource name. This ID should be unique in the connection.
84
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
85
+
86
+
87
+ - - -
88
+ """
89
+ return pulumi.get(self, "git_repository_link_id")
90
+
91
+ @git_repository_link_id.setter
92
+ def git_repository_link_id(self, value: pulumi.Input[str]):
93
+ pulumi.set(self, "git_repository_link_id", value)
94
+
95
+ @property
96
+ @pulumi.getter
97
+ def location(self) -> pulumi.Input[str]:
98
+ """
99
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
100
+ """
101
+ return pulumi.get(self, "location")
102
+
103
+ @location.setter
104
+ def location(self, value: pulumi.Input[str]):
105
+ pulumi.set(self, "location", value)
106
+
107
+ @property
108
+ @pulumi.getter(name="parentConnection")
109
+ def parent_connection(self) -> pulumi.Input[str]:
110
+ """
111
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
112
+ """
113
+ return pulumi.get(self, "parent_connection")
114
+
115
+ @parent_connection.setter
116
+ def parent_connection(self, value: pulumi.Input[str]):
117
+ pulumi.set(self, "parent_connection", value)
118
+
119
+ @property
120
+ @pulumi.getter
121
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
122
+ """
123
+ Optional. Allows clients to store small amounts of arbitrary data.
124
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
125
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
126
+ """
127
+ return pulumi.get(self, "annotations")
128
+
129
+ @annotations.setter
130
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
131
+ pulumi.set(self, "annotations", value)
132
+
133
+ @property
134
+ @pulumi.getter
135
+ def etag(self) -> Optional[pulumi.Input[str]]:
136
+ """
137
+ Optional. This checksum is computed by the server based on the value of other
138
+ fields, and may be sent on update and delete requests to ensure the
139
+ client has an up-to-date value before proceeding.
140
+ """
141
+ return pulumi.get(self, "etag")
142
+
143
+ @etag.setter
144
+ def etag(self, value: Optional[pulumi.Input[str]]):
145
+ pulumi.set(self, "etag", value)
146
+
147
+ @property
148
+ @pulumi.getter
149
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
150
+ """
151
+ Optional. Labels as key value pairs
152
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
153
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
154
+ """
155
+ return pulumi.get(self, "labels")
156
+
157
+ @labels.setter
158
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
159
+ pulumi.set(self, "labels", value)
160
+
161
+ @property
162
+ @pulumi.getter
163
+ def project(self) -> Optional[pulumi.Input[str]]:
164
+ """
165
+ The ID of the project in which the resource belongs.
166
+ If it is not provided, the provider project is used.
167
+ """
168
+ return pulumi.get(self, "project")
169
+
170
+ @project.setter
171
+ def project(self, value: Optional[pulumi.Input[str]]):
172
+ pulumi.set(self, "project", value)
173
+
174
+
175
+ @pulumi.input_type
176
+ class _GitRepositoryLinkState:
177
+ def __init__(__self__, *,
178
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
179
+ clone_uri: Optional[pulumi.Input[str]] = None,
180
+ create_time: Optional[pulumi.Input[str]] = None,
181
+ delete_time: Optional[pulumi.Input[str]] = None,
182
+ effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
183
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
184
+ etag: Optional[pulumi.Input[str]] = None,
185
+ git_repository_link_id: Optional[pulumi.Input[str]] = None,
186
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
187
+ location: Optional[pulumi.Input[str]] = None,
188
+ name: Optional[pulumi.Input[str]] = None,
189
+ parent_connection: Optional[pulumi.Input[str]] = None,
190
+ project: Optional[pulumi.Input[str]] = None,
191
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
192
+ reconciling: Optional[pulumi.Input[bool]] = None,
193
+ uid: Optional[pulumi.Input[str]] = None,
194
+ update_time: Optional[pulumi.Input[str]] = None):
195
+ """
196
+ Input properties used for looking up and filtering GitRepositoryLink resources.
197
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
198
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
199
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
200
+ :param pulumi.Input[str] clone_uri: Required. Git Clone URI.
201
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create timestamp
202
+ :param pulumi.Input[str] delete_time: Output only. [Output only] Delete timestamp
203
+ :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.
204
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value of other
205
+ fields, and may be sent on update and delete requests to ensure the
206
+ client has an up-to-date value before proceeding.
207
+ :param pulumi.Input[str] git_repository_link_id: Required. The ID to use for the repository, which will become the final component of
208
+ the repository's resource name. This ID should be unique in the connection.
209
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
210
+
211
+
212
+ - - -
213
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
214
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
215
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
216
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
217
+ :param pulumi.Input[str] name: Identifier. Resource name of the repository, in the format
218
+ `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.
219
+ :param pulumi.Input[str] parent_connection: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
220
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
221
+ If it is not provided, the provider project is used.
222
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
223
+ and default labels configured on the provider.
224
+ :param pulumi.Input[bool] reconciling: Output only. Set to true when the connection is being set up or updated in the
225
+ background.
226
+ :param pulumi.Input[str] uid: Output only. A system-assigned unique identifier for a the GitRepositoryLink.
227
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update timestamp
228
+ """
229
+ if annotations is not None:
230
+ pulumi.set(__self__, "annotations", annotations)
231
+ if clone_uri is not None:
232
+ pulumi.set(__self__, "clone_uri", clone_uri)
233
+ if create_time is not None:
234
+ pulumi.set(__self__, "create_time", create_time)
235
+ if delete_time is not None:
236
+ pulumi.set(__self__, "delete_time", delete_time)
237
+ if effective_annotations is not None:
238
+ pulumi.set(__self__, "effective_annotations", effective_annotations)
239
+ if effective_labels is not None:
240
+ pulumi.set(__self__, "effective_labels", effective_labels)
241
+ if etag is not None:
242
+ pulumi.set(__self__, "etag", etag)
243
+ if git_repository_link_id is not None:
244
+ pulumi.set(__self__, "git_repository_link_id", git_repository_link_id)
245
+ if labels is not None:
246
+ pulumi.set(__self__, "labels", labels)
247
+ if location is not None:
248
+ pulumi.set(__self__, "location", location)
249
+ if name is not None:
250
+ pulumi.set(__self__, "name", name)
251
+ if parent_connection is not None:
252
+ pulumi.set(__self__, "parent_connection", parent_connection)
253
+ if project is not None:
254
+ pulumi.set(__self__, "project", project)
255
+ if pulumi_labels is not None:
256
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
257
+ if reconciling is not None:
258
+ pulumi.set(__self__, "reconciling", reconciling)
259
+ if uid is not None:
260
+ pulumi.set(__self__, "uid", uid)
261
+ if update_time is not None:
262
+ pulumi.set(__self__, "update_time", update_time)
263
+
264
+ @property
265
+ @pulumi.getter
266
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
267
+ """
268
+ Optional. Allows clients to store small amounts of arbitrary data.
269
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
270
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
271
+ """
272
+ return pulumi.get(self, "annotations")
273
+
274
+ @annotations.setter
275
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
276
+ pulumi.set(self, "annotations", value)
277
+
278
+ @property
279
+ @pulumi.getter(name="cloneUri")
280
+ def clone_uri(self) -> Optional[pulumi.Input[str]]:
281
+ """
282
+ Required. Git Clone URI.
283
+ """
284
+ return pulumi.get(self, "clone_uri")
285
+
286
+ @clone_uri.setter
287
+ def clone_uri(self, value: Optional[pulumi.Input[str]]):
288
+ pulumi.set(self, "clone_uri", value)
289
+
290
+ @property
291
+ @pulumi.getter(name="createTime")
292
+ def create_time(self) -> Optional[pulumi.Input[str]]:
293
+ """
294
+ Output only. [Output only] Create timestamp
295
+ """
296
+ return pulumi.get(self, "create_time")
297
+
298
+ @create_time.setter
299
+ def create_time(self, value: Optional[pulumi.Input[str]]):
300
+ pulumi.set(self, "create_time", value)
301
+
302
+ @property
303
+ @pulumi.getter(name="deleteTime")
304
+ def delete_time(self) -> Optional[pulumi.Input[str]]:
305
+ """
306
+ Output only. [Output only] Delete timestamp
307
+ """
308
+ return pulumi.get(self, "delete_time")
309
+
310
+ @delete_time.setter
311
+ def delete_time(self, value: Optional[pulumi.Input[str]]):
312
+ pulumi.set(self, "delete_time", value)
313
+
314
+ @property
315
+ @pulumi.getter(name="effectiveAnnotations")
316
+ def effective_annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
317
+ return pulumi.get(self, "effective_annotations")
318
+
319
+ @effective_annotations.setter
320
+ def effective_annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
321
+ pulumi.set(self, "effective_annotations", value)
322
+
323
+ @property
324
+ @pulumi.getter(name="effectiveLabels")
325
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
326
+ """
327
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
328
+ """
329
+ return pulumi.get(self, "effective_labels")
330
+
331
+ @effective_labels.setter
332
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
333
+ pulumi.set(self, "effective_labels", value)
334
+
335
+ @property
336
+ @pulumi.getter
337
+ def etag(self) -> Optional[pulumi.Input[str]]:
338
+ """
339
+ Optional. This checksum is computed by the server based on the value of other
340
+ fields, and may be sent on update and delete requests to ensure the
341
+ client has an up-to-date value before proceeding.
342
+ """
343
+ return pulumi.get(self, "etag")
344
+
345
+ @etag.setter
346
+ def etag(self, value: Optional[pulumi.Input[str]]):
347
+ pulumi.set(self, "etag", value)
348
+
349
+ @property
350
+ @pulumi.getter(name="gitRepositoryLinkId")
351
+ def git_repository_link_id(self) -> Optional[pulumi.Input[str]]:
352
+ """
353
+ Required. The ID to use for the repository, which will become the final component of
354
+ the repository's resource name. This ID should be unique in the connection.
355
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
356
+
357
+
358
+ - - -
359
+ """
360
+ return pulumi.get(self, "git_repository_link_id")
361
+
362
+ @git_repository_link_id.setter
363
+ def git_repository_link_id(self, value: Optional[pulumi.Input[str]]):
364
+ pulumi.set(self, "git_repository_link_id", value)
365
+
366
+ @property
367
+ @pulumi.getter
368
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
369
+ """
370
+ Optional. Labels as key value pairs
371
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
372
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
373
+ """
374
+ return pulumi.get(self, "labels")
375
+
376
+ @labels.setter
377
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
378
+ pulumi.set(self, "labels", value)
379
+
380
+ @property
381
+ @pulumi.getter
382
+ def location(self) -> Optional[pulumi.Input[str]]:
383
+ """
384
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
385
+ """
386
+ return pulumi.get(self, "location")
387
+
388
+ @location.setter
389
+ def location(self, value: Optional[pulumi.Input[str]]):
390
+ pulumi.set(self, "location", value)
391
+
392
+ @property
393
+ @pulumi.getter
394
+ def name(self) -> Optional[pulumi.Input[str]]:
395
+ """
396
+ Identifier. Resource name of the repository, in the format
397
+ `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.
398
+ """
399
+ return pulumi.get(self, "name")
400
+
401
+ @name.setter
402
+ def name(self, value: Optional[pulumi.Input[str]]):
403
+ pulumi.set(self, "name", value)
404
+
405
+ @property
406
+ @pulumi.getter(name="parentConnection")
407
+ def parent_connection(self) -> Optional[pulumi.Input[str]]:
408
+ """
409
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
410
+ """
411
+ return pulumi.get(self, "parent_connection")
412
+
413
+ @parent_connection.setter
414
+ def parent_connection(self, value: Optional[pulumi.Input[str]]):
415
+ pulumi.set(self, "parent_connection", value)
416
+
417
+ @property
418
+ @pulumi.getter
419
+ def project(self) -> Optional[pulumi.Input[str]]:
420
+ """
421
+ The ID of the project in which the resource belongs.
422
+ If it is not provided, the provider project is used.
423
+ """
424
+ return pulumi.get(self, "project")
425
+
426
+ @project.setter
427
+ def project(self, value: Optional[pulumi.Input[str]]):
428
+ pulumi.set(self, "project", value)
429
+
430
+ @property
431
+ @pulumi.getter(name="pulumiLabels")
432
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
433
+ """
434
+ The combination of labels configured directly on the resource
435
+ and default labels configured on the provider.
436
+ """
437
+ return pulumi.get(self, "pulumi_labels")
438
+
439
+ @pulumi_labels.setter
440
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
441
+ pulumi.set(self, "pulumi_labels", value)
442
+
443
+ @property
444
+ @pulumi.getter
445
+ def reconciling(self) -> Optional[pulumi.Input[bool]]:
446
+ """
447
+ Output only. Set to true when the connection is being set up or updated in the
448
+ background.
449
+ """
450
+ return pulumi.get(self, "reconciling")
451
+
452
+ @reconciling.setter
453
+ def reconciling(self, value: Optional[pulumi.Input[bool]]):
454
+ pulumi.set(self, "reconciling", value)
455
+
456
+ @property
457
+ @pulumi.getter
458
+ def uid(self) -> Optional[pulumi.Input[str]]:
459
+ """
460
+ Output only. A system-assigned unique identifier for a the GitRepositoryLink.
461
+ """
462
+ return pulumi.get(self, "uid")
463
+
464
+ @uid.setter
465
+ def uid(self, value: Optional[pulumi.Input[str]]):
466
+ pulumi.set(self, "uid", value)
467
+
468
+ @property
469
+ @pulumi.getter(name="updateTime")
470
+ def update_time(self) -> Optional[pulumi.Input[str]]:
471
+ """
472
+ Output only. [Output only] Update timestamp
473
+ """
474
+ return pulumi.get(self, "update_time")
475
+
476
+ @update_time.setter
477
+ def update_time(self, value: Optional[pulumi.Input[str]]):
478
+ pulumi.set(self, "update_time", value)
479
+
480
+
481
+ class GitRepositoryLink(pulumi.CustomResource):
482
+ @overload
483
+ def __init__(__self__,
484
+ resource_name: str,
485
+ opts: Optional[pulumi.ResourceOptions] = None,
486
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
487
+ clone_uri: Optional[pulumi.Input[str]] = None,
488
+ etag: Optional[pulumi.Input[str]] = None,
489
+ git_repository_link_id: Optional[pulumi.Input[str]] = None,
490
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
491
+ location: Optional[pulumi.Input[str]] = None,
492
+ parent_connection: Optional[pulumi.Input[str]] = None,
493
+ project: Optional[pulumi.Input[str]] = None,
494
+ __props__=None):
495
+ """
496
+ ## Example Usage
497
+
498
+ ## Import
499
+
500
+ GitRepositoryLink can be imported using any of these accepted formats:
501
+
502
+ * `projects/{{project}}/locations/{{location}}/connections/{{parent_connection}}/gitRepositoryLinks/{{git_repository_link_id}}`
503
+
504
+ * `{{project}}/{{location}}/{{parent_connection}}/{{git_repository_link_id}}`
505
+
506
+ * `{{location}}/{{parent_connection}}/{{git_repository_link_id}}`
507
+
508
+ When using the `pulumi import` command, GitRepositoryLink can be imported using one of the formats above. For example:
509
+
510
+ ```sh
511
+ $ pulumi import gcp:developerconnect/gitRepositoryLink:GitRepositoryLink default projects/{{project}}/locations/{{location}}/connections/{{parent_connection}}/gitRepositoryLinks/{{git_repository_link_id}}
512
+ ```
513
+
514
+ ```sh
515
+ $ pulumi import gcp:developerconnect/gitRepositoryLink:GitRepositoryLink default {{project}}/{{location}}/{{parent_connection}}/{{git_repository_link_id}}
516
+ ```
517
+
518
+ ```sh
519
+ $ pulumi import gcp:developerconnect/gitRepositoryLink:GitRepositoryLink default {{location}}/{{parent_connection}}/{{git_repository_link_id}}
520
+ ```
521
+
522
+ :param str resource_name: The name of the resource.
523
+ :param pulumi.ResourceOptions opts: Options for the resource.
524
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
525
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
526
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
527
+ :param pulumi.Input[str] clone_uri: Required. Git Clone URI.
528
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value of other
529
+ fields, and may be sent on update and delete requests to ensure the
530
+ client has an up-to-date value before proceeding.
531
+ :param pulumi.Input[str] git_repository_link_id: Required. The ID to use for the repository, which will become the final component of
532
+ the repository's resource name. This ID should be unique in the connection.
533
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
534
+
535
+
536
+ - - -
537
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
538
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
539
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
540
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
541
+ :param pulumi.Input[str] parent_connection: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
542
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
543
+ If it is not provided, the provider project is used.
544
+ """
545
+ ...
546
+ @overload
547
+ def __init__(__self__,
548
+ resource_name: str,
549
+ args: GitRepositoryLinkArgs,
550
+ opts: Optional[pulumi.ResourceOptions] = None):
551
+ """
552
+ ## Example Usage
553
+
554
+ ## Import
555
+
556
+ GitRepositoryLink can be imported using any of these accepted formats:
557
+
558
+ * `projects/{{project}}/locations/{{location}}/connections/{{parent_connection}}/gitRepositoryLinks/{{git_repository_link_id}}`
559
+
560
+ * `{{project}}/{{location}}/{{parent_connection}}/{{git_repository_link_id}}`
561
+
562
+ * `{{location}}/{{parent_connection}}/{{git_repository_link_id}}`
563
+
564
+ When using the `pulumi import` command, GitRepositoryLink can be imported using one of the formats above. For example:
565
+
566
+ ```sh
567
+ $ pulumi import gcp:developerconnect/gitRepositoryLink:GitRepositoryLink default projects/{{project}}/locations/{{location}}/connections/{{parent_connection}}/gitRepositoryLinks/{{git_repository_link_id}}
568
+ ```
569
+
570
+ ```sh
571
+ $ pulumi import gcp:developerconnect/gitRepositoryLink:GitRepositoryLink default {{project}}/{{location}}/{{parent_connection}}/{{git_repository_link_id}}
572
+ ```
573
+
574
+ ```sh
575
+ $ pulumi import gcp:developerconnect/gitRepositoryLink:GitRepositoryLink default {{location}}/{{parent_connection}}/{{git_repository_link_id}}
576
+ ```
577
+
578
+ :param str resource_name: The name of the resource.
579
+ :param GitRepositoryLinkArgs args: The arguments to use to populate this resource's properties.
580
+ :param pulumi.ResourceOptions opts: Options for the resource.
581
+ """
582
+ ...
583
+ def __init__(__self__, resource_name: str, *args, **kwargs):
584
+ resource_args, opts = _utilities.get_resource_args_opts(GitRepositoryLinkArgs, pulumi.ResourceOptions, *args, **kwargs)
585
+ if resource_args is not None:
586
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
587
+ else:
588
+ __self__._internal_init(resource_name, *args, **kwargs)
589
+
590
+ def _internal_init(__self__,
591
+ resource_name: str,
592
+ opts: Optional[pulumi.ResourceOptions] = None,
593
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
594
+ clone_uri: Optional[pulumi.Input[str]] = None,
595
+ etag: Optional[pulumi.Input[str]] = None,
596
+ git_repository_link_id: Optional[pulumi.Input[str]] = None,
597
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
598
+ location: Optional[pulumi.Input[str]] = None,
599
+ parent_connection: Optional[pulumi.Input[str]] = None,
600
+ project: Optional[pulumi.Input[str]] = None,
601
+ __props__=None):
602
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
603
+ if not isinstance(opts, pulumi.ResourceOptions):
604
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
605
+ if opts.id is None:
606
+ if __props__ is not None:
607
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
608
+ __props__ = GitRepositoryLinkArgs.__new__(GitRepositoryLinkArgs)
609
+
610
+ __props__.__dict__["annotations"] = annotations
611
+ if clone_uri is None and not opts.urn:
612
+ raise TypeError("Missing required property 'clone_uri'")
613
+ __props__.__dict__["clone_uri"] = clone_uri
614
+ __props__.__dict__["etag"] = etag
615
+ if git_repository_link_id is None and not opts.urn:
616
+ raise TypeError("Missing required property 'git_repository_link_id'")
617
+ __props__.__dict__["git_repository_link_id"] = git_repository_link_id
618
+ __props__.__dict__["labels"] = labels
619
+ if location is None and not opts.urn:
620
+ raise TypeError("Missing required property 'location'")
621
+ __props__.__dict__["location"] = location
622
+ if parent_connection is None and not opts.urn:
623
+ raise TypeError("Missing required property 'parent_connection'")
624
+ __props__.__dict__["parent_connection"] = parent_connection
625
+ __props__.__dict__["project"] = project
626
+ __props__.__dict__["create_time"] = None
627
+ __props__.__dict__["delete_time"] = None
628
+ __props__.__dict__["effective_annotations"] = None
629
+ __props__.__dict__["effective_labels"] = None
630
+ __props__.__dict__["name"] = None
631
+ __props__.__dict__["pulumi_labels"] = None
632
+ __props__.__dict__["reconciling"] = None
633
+ __props__.__dict__["uid"] = None
634
+ __props__.__dict__["update_time"] = None
635
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
636
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
637
+ super(GitRepositoryLink, __self__).__init__(
638
+ 'gcp:developerconnect/gitRepositoryLink:GitRepositoryLink',
639
+ resource_name,
640
+ __props__,
641
+ opts)
642
+
643
+ @staticmethod
644
+ def get(resource_name: str,
645
+ id: pulumi.Input[str],
646
+ opts: Optional[pulumi.ResourceOptions] = None,
647
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
648
+ clone_uri: Optional[pulumi.Input[str]] = None,
649
+ create_time: Optional[pulumi.Input[str]] = None,
650
+ delete_time: Optional[pulumi.Input[str]] = None,
651
+ effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
652
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
653
+ etag: Optional[pulumi.Input[str]] = None,
654
+ git_repository_link_id: Optional[pulumi.Input[str]] = None,
655
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
656
+ location: Optional[pulumi.Input[str]] = None,
657
+ name: Optional[pulumi.Input[str]] = None,
658
+ parent_connection: Optional[pulumi.Input[str]] = None,
659
+ project: Optional[pulumi.Input[str]] = None,
660
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
661
+ reconciling: Optional[pulumi.Input[bool]] = None,
662
+ uid: Optional[pulumi.Input[str]] = None,
663
+ update_time: Optional[pulumi.Input[str]] = None) -> 'GitRepositoryLink':
664
+ """
665
+ Get an existing GitRepositoryLink resource's state with the given name, id, and optional extra
666
+ properties used to qualify the lookup.
667
+
668
+ :param str resource_name: The unique name of the resulting resource.
669
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
670
+ :param pulumi.ResourceOptions opts: Options for the resource.
671
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
672
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
673
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
674
+ :param pulumi.Input[str] clone_uri: Required. Git Clone URI.
675
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create timestamp
676
+ :param pulumi.Input[str] delete_time: Output only. [Output only] Delete timestamp
677
+ :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.
678
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value of other
679
+ fields, and may be sent on update and delete requests to ensure the
680
+ client has an up-to-date value before proceeding.
681
+ :param pulumi.Input[str] git_repository_link_id: Required. The ID to use for the repository, which will become the final component of
682
+ the repository's resource name. This ID should be unique in the connection.
683
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
684
+
685
+
686
+ - - -
687
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
688
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
689
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
690
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
691
+ :param pulumi.Input[str] name: Identifier. Resource name of the repository, in the format
692
+ `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.
693
+ :param pulumi.Input[str] parent_connection: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
694
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
695
+ If it is not provided, the provider project is used.
696
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
697
+ and default labels configured on the provider.
698
+ :param pulumi.Input[bool] reconciling: Output only. Set to true when the connection is being set up or updated in the
699
+ background.
700
+ :param pulumi.Input[str] uid: Output only. A system-assigned unique identifier for a the GitRepositoryLink.
701
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update timestamp
702
+ """
703
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
704
+
705
+ __props__ = _GitRepositoryLinkState.__new__(_GitRepositoryLinkState)
706
+
707
+ __props__.__dict__["annotations"] = annotations
708
+ __props__.__dict__["clone_uri"] = clone_uri
709
+ __props__.__dict__["create_time"] = create_time
710
+ __props__.__dict__["delete_time"] = delete_time
711
+ __props__.__dict__["effective_annotations"] = effective_annotations
712
+ __props__.__dict__["effective_labels"] = effective_labels
713
+ __props__.__dict__["etag"] = etag
714
+ __props__.__dict__["git_repository_link_id"] = git_repository_link_id
715
+ __props__.__dict__["labels"] = labels
716
+ __props__.__dict__["location"] = location
717
+ __props__.__dict__["name"] = name
718
+ __props__.__dict__["parent_connection"] = parent_connection
719
+ __props__.__dict__["project"] = project
720
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
721
+ __props__.__dict__["reconciling"] = reconciling
722
+ __props__.__dict__["uid"] = uid
723
+ __props__.__dict__["update_time"] = update_time
724
+ return GitRepositoryLink(resource_name, opts=opts, __props__=__props__)
725
+
726
+ @property
727
+ @pulumi.getter
728
+ def annotations(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
729
+ """
730
+ Optional. Allows clients to store small amounts of arbitrary data.
731
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
732
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
733
+ """
734
+ return pulumi.get(self, "annotations")
735
+
736
+ @property
737
+ @pulumi.getter(name="cloneUri")
738
+ def clone_uri(self) -> pulumi.Output[str]:
739
+ """
740
+ Required. Git Clone URI.
741
+ """
742
+ return pulumi.get(self, "clone_uri")
743
+
744
+ @property
745
+ @pulumi.getter(name="createTime")
746
+ def create_time(self) -> pulumi.Output[str]:
747
+ """
748
+ Output only. [Output only] Create timestamp
749
+ """
750
+ return pulumi.get(self, "create_time")
751
+
752
+ @property
753
+ @pulumi.getter(name="deleteTime")
754
+ def delete_time(self) -> pulumi.Output[str]:
755
+ """
756
+ Output only. [Output only] Delete timestamp
757
+ """
758
+ return pulumi.get(self, "delete_time")
759
+
760
+ @property
761
+ @pulumi.getter(name="effectiveAnnotations")
762
+ def effective_annotations(self) -> pulumi.Output[Mapping[str, str]]:
763
+ return pulumi.get(self, "effective_annotations")
764
+
765
+ @property
766
+ @pulumi.getter(name="effectiveLabels")
767
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
768
+ """
769
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
770
+ """
771
+ return pulumi.get(self, "effective_labels")
772
+
773
+ @property
774
+ @pulumi.getter
775
+ def etag(self) -> pulumi.Output[Optional[str]]:
776
+ """
777
+ Optional. This checksum is computed by the server based on the value of other
778
+ fields, and may be sent on update and delete requests to ensure the
779
+ client has an up-to-date value before proceeding.
780
+ """
781
+ return pulumi.get(self, "etag")
782
+
783
+ @property
784
+ @pulumi.getter(name="gitRepositoryLinkId")
785
+ def git_repository_link_id(self) -> pulumi.Output[str]:
786
+ """
787
+ Required. The ID to use for the repository, which will become the final component of
788
+ the repository's resource name. This ID should be unique in the connection.
789
+ Allows alphanumeric characters and any of -._~%!$&'()*+,;=@.
790
+
791
+
792
+ - - -
793
+ """
794
+ return pulumi.get(self, "git_repository_link_id")
795
+
796
+ @property
797
+ @pulumi.getter
798
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
799
+ """
800
+ Optional. Labels as key value pairs
801
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
802
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
803
+ """
804
+ return pulumi.get(self, "labels")
805
+
806
+ @property
807
+ @pulumi.getter
808
+ def location(self) -> pulumi.Output[str]:
809
+ """
810
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
811
+ """
812
+ return pulumi.get(self, "location")
813
+
814
+ @property
815
+ @pulumi.getter
816
+ def name(self) -> pulumi.Output[str]:
817
+ """
818
+ Identifier. Resource name of the repository, in the format
819
+ `projects/*/locations/*/connections/*/gitRepositoryLinks/*`.
820
+ """
821
+ return pulumi.get(self, "name")
822
+
823
+ @property
824
+ @pulumi.getter(name="parentConnection")
825
+ def parent_connection(self) -> pulumi.Output[str]:
826
+ """
827
+ Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
828
+ """
829
+ return pulumi.get(self, "parent_connection")
830
+
831
+ @property
832
+ @pulumi.getter
833
+ def project(self) -> pulumi.Output[str]:
834
+ """
835
+ The ID of the project in which the resource belongs.
836
+ If it is not provided, the provider project is used.
837
+ """
838
+ return pulumi.get(self, "project")
839
+
840
+ @property
841
+ @pulumi.getter(name="pulumiLabels")
842
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
843
+ """
844
+ The combination of labels configured directly on the resource
845
+ and default labels configured on the provider.
846
+ """
847
+ return pulumi.get(self, "pulumi_labels")
848
+
849
+ @property
850
+ @pulumi.getter
851
+ def reconciling(self) -> pulumi.Output[bool]:
852
+ """
853
+ Output only. Set to true when the connection is being set up or updated in the
854
+ background.
855
+ """
856
+ return pulumi.get(self, "reconciling")
857
+
858
+ @property
859
+ @pulumi.getter
860
+ def uid(self) -> pulumi.Output[str]:
861
+ """
862
+ Output only. A system-assigned unique identifier for a the GitRepositoryLink.
863
+ """
864
+ return pulumi.get(self, "uid")
865
+
866
+ @property
867
+ @pulumi.getter(name="updateTime")
868
+ def update_time(self) -> pulumi.Output[str]:
869
+ """
870
+ Output only. [Output only] Update timestamp
871
+ """
872
+ return pulumi.get(self, "update_time")
873
+