pulumi-gcp 8.2.0a1726671837__py3-none-any.whl → 8.3.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 (100) hide show
  1. pulumi_gcp/__init__.py +158 -0
  2. pulumi_gcp/alloydb/_inputs.py +20 -0
  3. pulumi_gcp/alloydb/instance.py +36 -0
  4. pulumi_gcp/alloydb/outputs.py +14 -0
  5. pulumi_gcp/bigquery/__init__.py +1 -0
  6. pulumi_gcp/bigquery/get_tables.py +143 -0
  7. pulumi_gcp/bigquery/outputs.py +30 -0
  8. pulumi_gcp/compute/__init__.py +2 -0
  9. pulumi_gcp/compute/_inputs.py +12481 -9158
  10. pulumi_gcp/compute/attached_disk.py +103 -0
  11. pulumi_gcp/compute/backend_service.py +29 -22
  12. pulumi_gcp/compute/firewall_policy_with_rules.py +769 -0
  13. pulumi_gcp/compute/get_instance.py +3 -0
  14. pulumi_gcp/compute/network_firewall_policy_with_rules.py +826 -0
  15. pulumi_gcp/compute/outputs.py +3695 -1293
  16. pulumi_gcp/compute/region_backend_service.py +29 -22
  17. pulumi_gcp/compute/region_target_http_proxy.py +159 -0
  18. pulumi_gcp/compute/region_target_https_proxy.py +175 -0
  19. pulumi_gcp/compute/router_nat.py +27 -66
  20. pulumi_gcp/compute/service_attachment.py +75 -0
  21. pulumi_gcp/compute/target_http_proxy.py +49 -28
  22. pulumi_gcp/compute/target_https_proxy.py +49 -28
  23. pulumi_gcp/config/__init__.pyi +6 -0
  24. pulumi_gcp/config/vars.py +12 -0
  25. pulumi_gcp/container/_inputs.py +168 -99
  26. pulumi_gcp/container/attached_cluster.py +54 -1
  27. pulumi_gcp/container/outputs.py +155 -70
  28. pulumi_gcp/databasemigrationservice/__init__.py +1 -0
  29. pulumi_gcp/databasemigrationservice/_inputs.py +362 -0
  30. pulumi_gcp/databasemigrationservice/migration_job.py +1739 -0
  31. pulumi_gcp/databasemigrationservice/outputs.py +268 -0
  32. pulumi_gcp/dataproc/get_metastore_service.py +11 -1
  33. pulumi_gcp/dataproc/metastore_federation.py +8 -8
  34. pulumi_gcp/dataproc/metastore_service.py +95 -0
  35. pulumi_gcp/datastream/stream.py +21 -14
  36. pulumi_gcp/developerconnect/__init__.py +11 -0
  37. pulumi_gcp/developerconnect/_inputs.py +304 -0
  38. pulumi_gcp/developerconnect/connection.py +1037 -0
  39. pulumi_gcp/developerconnect/git_repository_link.py +873 -0
  40. pulumi_gcp/developerconnect/outputs.py +249 -0
  41. pulumi_gcp/discoveryengine/__init__.py +1 -0
  42. pulumi_gcp/discoveryengine/_inputs.py +131 -0
  43. pulumi_gcp/discoveryengine/outputs.py +131 -0
  44. pulumi_gcp/discoveryengine/target_site.py +870 -0
  45. pulumi_gcp/dns/managed_zone.py +1 -1
  46. pulumi_gcp/filestore/get_instance.py +21 -1
  47. pulumi_gcp/filestore/instance.py +94 -0
  48. pulumi_gcp/gkehub/feature_membership.py +140 -62
  49. pulumi_gcp/gkeonprem/_inputs.py +3 -3
  50. pulumi_gcp/gkeonprem/outputs.py +2 -2
  51. pulumi_gcp/healthcare/__init__.py +1 -0
  52. pulumi_gcp/healthcare/_inputs.py +39 -0
  53. pulumi_gcp/healthcare/outputs.py +40 -0
  54. pulumi_gcp/healthcare/workspace.py +465 -0
  55. pulumi_gcp/looker/instance.py +81 -0
  56. pulumi_gcp/memorystore/__init__.py +10 -0
  57. pulumi_gcp/memorystore/_inputs.py +731 -0
  58. pulumi_gcp/memorystore/instance.py +1663 -0
  59. pulumi_gcp/memorystore/outputs.py +598 -0
  60. pulumi_gcp/netapp/_inputs.py +63 -0
  61. pulumi_gcp/netapp/outputs.py +57 -0
  62. pulumi_gcp/netapp/storage_pool.py +54 -0
  63. pulumi_gcp/netapp/volume.py +183 -0
  64. pulumi_gcp/organizations/folder.py +52 -33
  65. pulumi_gcp/provider.py +60 -0
  66. pulumi_gcp/pubsub/subscription.py +43 -7
  67. pulumi_gcp/pulumi-plugin.json +1 -1
  68. pulumi_gcp/secretmanager/__init__.py +8 -0
  69. pulumi_gcp/secretmanager/_inputs.py +308 -0
  70. pulumi_gcp/secretmanager/get_regional_secret.py +279 -0
  71. pulumi_gcp/secretmanager/get_regional_secret_iam_policy.py +173 -0
  72. pulumi_gcp/secretmanager/get_regional_secret_version.py +241 -0
  73. pulumi_gcp/secretmanager/outputs.py +336 -0
  74. pulumi_gcp/secretmanager/regional_secret.py +1433 -0
  75. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +1082 -0
  76. pulumi_gcp/secretmanager/regional_secret_iam_member.py +1082 -0
  77. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +901 -0
  78. pulumi_gcp/secretmanager/regional_secret_version.py +753 -0
  79. pulumi_gcp/securitycenter/__init__.py +4 -0
  80. pulumi_gcp/securitycenter/folder_scc_big_query_export.py +795 -0
  81. pulumi_gcp/securitycenter/organization_scc_big_query_export.py +738 -0
  82. pulumi_gcp/securitycenter/project_scc_big_query_export.py +749 -0
  83. pulumi_gcp/securitycenter/v2_organization_scc_big_query_export.py +862 -0
  84. pulumi_gcp/securitycenter/v2_organization_scc_big_query_exports.py +6 -2
  85. pulumi_gcp/securitycenter/v2_project_mute_config.py +2 -2
  86. pulumi_gcp/siteverification/__init__.py +3 -0
  87. pulumi_gcp/siteverification/_inputs.py +85 -0
  88. pulumi_gcp/siteverification/outputs.py +57 -0
  89. pulumi_gcp/siteverification/web_resource.py +398 -0
  90. pulumi_gcp/spanner/__init__.py +1 -0
  91. pulumi_gcp/spanner/_inputs.py +129 -0
  92. pulumi_gcp/spanner/backup_schedule.py +748 -0
  93. pulumi_gcp/spanner/get_instance.py +11 -1
  94. pulumi_gcp/spanner/instance.py +56 -0
  95. pulumi_gcp/spanner/outputs.py +93 -0
  96. pulumi_gcp/vpcaccess/connector.py +21 -28
  97. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/METADATA +1 -1
  98. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/RECORD +100 -69
  99. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/WHEEL +0 -0
  100. {pulumi_gcp-8.2.0a1726671837.dist-info → pulumi_gcp-8.3.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1037 @@
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__ = ['ConnectionArgs', 'Connection']
20
+
21
+ @pulumi.input_type
22
+ class ConnectionArgs:
23
+ def __init__(__self__, *,
24
+ connection_id: pulumi.Input[str],
25
+ location: pulumi.Input[str],
26
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
+ disabled: Optional[pulumi.Input[bool]] = None,
28
+ etag: Optional[pulumi.Input[str]] = None,
29
+ github_config: Optional[pulumi.Input['ConnectionGithubConfigArgs']] = None,
30
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
31
+ project: Optional[pulumi.Input[str]] = None):
32
+ """
33
+ The set of arguments for constructing a Connection resource.
34
+ :param pulumi.Input[str] connection_id: Required. Id of the requesting object. If auto-generating Id server-side,
35
+ remove this field and connection_id from the method_signature of Create RPC.
36
+
37
+
38
+ - - -
39
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource
40
+ within its parent collection as described in https://google.aip.dev/122. See documentation
41
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
42
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
43
+
44
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
45
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
46
+ :param pulumi.Input[bool] disabled: Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
47
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value
48
+ of other fields, and may be sent on update and delete requests to ensure the
49
+ client has an up-to-date value before proceeding.
50
+ :param pulumi.Input['ConnectionGithubConfigArgs'] github_config: Configuration for connections to github.com.
51
+ Structure is documented below.
52
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
53
+
54
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
55
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
56
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
57
+ If it is not provided, the provider project is used.
58
+ """
59
+ pulumi.set(__self__, "connection_id", connection_id)
60
+ pulumi.set(__self__, "location", location)
61
+ if annotations is not None:
62
+ pulumi.set(__self__, "annotations", annotations)
63
+ if disabled is not None:
64
+ pulumi.set(__self__, "disabled", disabled)
65
+ if etag is not None:
66
+ pulumi.set(__self__, "etag", etag)
67
+ if github_config is not None:
68
+ pulumi.set(__self__, "github_config", github_config)
69
+ if labels is not None:
70
+ pulumi.set(__self__, "labels", labels)
71
+ if project is not None:
72
+ pulumi.set(__self__, "project", project)
73
+
74
+ @property
75
+ @pulumi.getter(name="connectionId")
76
+ def connection_id(self) -> pulumi.Input[str]:
77
+ """
78
+ Required. Id of the requesting object. If auto-generating Id server-side,
79
+ remove this field and connection_id from the method_signature of Create RPC.
80
+
81
+
82
+ - - -
83
+ """
84
+ return pulumi.get(self, "connection_id")
85
+
86
+ @connection_id.setter
87
+ def connection_id(self, value: pulumi.Input[str]):
88
+ pulumi.set(self, "connection_id", value)
89
+
90
+ @property
91
+ @pulumi.getter
92
+ def location(self) -> pulumi.Input[str]:
93
+ """
94
+ Resource ID segment making up resource `name`. It identifies the resource
95
+ within its parent collection as described in https://google.aip.dev/122. See documentation
96
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
97
+ """
98
+ return pulumi.get(self, "location")
99
+
100
+ @location.setter
101
+ def location(self, value: pulumi.Input[str]):
102
+ pulumi.set(self, "location", value)
103
+
104
+ @property
105
+ @pulumi.getter
106
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
107
+ """
108
+ Optional. Allows clients to store small amounts of arbitrary data.
109
+
110
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
111
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
112
+ """
113
+ return pulumi.get(self, "annotations")
114
+
115
+ @annotations.setter
116
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
117
+ pulumi.set(self, "annotations", value)
118
+
119
+ @property
120
+ @pulumi.getter
121
+ def disabled(self) -> Optional[pulumi.Input[bool]]:
122
+ """
123
+ Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
124
+ """
125
+ return pulumi.get(self, "disabled")
126
+
127
+ @disabled.setter
128
+ def disabled(self, value: Optional[pulumi.Input[bool]]):
129
+ pulumi.set(self, "disabled", value)
130
+
131
+ @property
132
+ @pulumi.getter
133
+ def etag(self) -> Optional[pulumi.Input[str]]:
134
+ """
135
+ Optional. This checksum is computed by the server based on the value
136
+ of other fields, and may be sent on update and delete requests to ensure the
137
+ client has an up-to-date value before proceeding.
138
+ """
139
+ return pulumi.get(self, "etag")
140
+
141
+ @etag.setter
142
+ def etag(self, value: Optional[pulumi.Input[str]]):
143
+ pulumi.set(self, "etag", value)
144
+
145
+ @property
146
+ @pulumi.getter(name="githubConfig")
147
+ def github_config(self) -> Optional[pulumi.Input['ConnectionGithubConfigArgs']]:
148
+ """
149
+ Configuration for connections to github.com.
150
+ Structure is documented below.
151
+ """
152
+ return pulumi.get(self, "github_config")
153
+
154
+ @github_config.setter
155
+ def github_config(self, value: Optional[pulumi.Input['ConnectionGithubConfigArgs']]):
156
+ pulumi.set(self, "github_config", value)
157
+
158
+ @property
159
+ @pulumi.getter
160
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
161
+ """
162
+ Optional. Labels as key value pairs
163
+
164
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
165
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
166
+ """
167
+ return pulumi.get(self, "labels")
168
+
169
+ @labels.setter
170
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
171
+ pulumi.set(self, "labels", value)
172
+
173
+ @property
174
+ @pulumi.getter
175
+ def project(self) -> Optional[pulumi.Input[str]]:
176
+ """
177
+ The ID of the project in which the resource belongs.
178
+ If it is not provided, the provider project is used.
179
+ """
180
+ return pulumi.get(self, "project")
181
+
182
+ @project.setter
183
+ def project(self, value: Optional[pulumi.Input[str]]):
184
+ pulumi.set(self, "project", value)
185
+
186
+
187
+ @pulumi.input_type
188
+ class _ConnectionState:
189
+ def __init__(__self__, *,
190
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
191
+ connection_id: Optional[pulumi.Input[str]] = None,
192
+ create_time: Optional[pulumi.Input[str]] = None,
193
+ delete_time: Optional[pulumi.Input[str]] = None,
194
+ disabled: Optional[pulumi.Input[bool]] = None,
195
+ effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
196
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
197
+ etag: Optional[pulumi.Input[str]] = None,
198
+ github_config: Optional[pulumi.Input['ConnectionGithubConfigArgs']] = None,
199
+ installation_states: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionInstallationStateArgs']]]] = None,
200
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
201
+ location: Optional[pulumi.Input[str]] = None,
202
+ name: Optional[pulumi.Input[str]] = None,
203
+ project: Optional[pulumi.Input[str]] = None,
204
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
205
+ reconciling: Optional[pulumi.Input[bool]] = None,
206
+ uid: Optional[pulumi.Input[str]] = None,
207
+ update_time: Optional[pulumi.Input[str]] = None):
208
+ """
209
+ Input properties used for looking up and filtering Connection resources.
210
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
211
+
212
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
213
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
214
+ :param pulumi.Input[str] connection_id: Required. Id of the requesting object. If auto-generating Id server-side,
215
+ remove this field and connection_id from the method_signature of Create RPC.
216
+
217
+
218
+ - - -
219
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create timestamp
220
+ :param pulumi.Input[str] delete_time: Output only. [Output only] Delete timestamp
221
+ :param pulumi.Input[bool] disabled: Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
222
+ :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.
223
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value
224
+ of other fields, and may be sent on update and delete requests to ensure the
225
+ client has an up-to-date value before proceeding.
226
+ :param pulumi.Input['ConnectionGithubConfigArgs'] github_config: Configuration for connections to github.com.
227
+ Structure is documented below.
228
+ :param pulumi.Input[Sequence[pulumi.Input['ConnectionInstallationStateArgs']]] installation_states: Describes stage and necessary actions to be taken by the user to complete the installation.
229
+ Used for GitHub and GitHub Enterprise based connections.
230
+ Structure is documented below.
231
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
232
+
233
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
234
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
235
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource
236
+ within its parent collection as described in https://google.aip.dev/122. See documentation
237
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
238
+ :param pulumi.Input[str] name: Identifier. The resource name of the connection, in the format
239
+ `projects/{project}/locations/{location}/connections/{connection_id}`.
240
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
241
+ If it is not provided, the provider project is used.
242
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
243
+ and default labels configured on the provider.
244
+ :param pulumi.Input[bool] reconciling: Output only. Set to true when the connection is being set up or updated
245
+ in the background.
246
+ :param pulumi.Input[str] uid: Output only. A system-assigned unique identifier for a the GitRepositoryLink.
247
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update timestamp
248
+ """
249
+ if annotations is not None:
250
+ pulumi.set(__self__, "annotations", annotations)
251
+ if connection_id is not None:
252
+ pulumi.set(__self__, "connection_id", connection_id)
253
+ if create_time is not None:
254
+ pulumi.set(__self__, "create_time", create_time)
255
+ if delete_time is not None:
256
+ pulumi.set(__self__, "delete_time", delete_time)
257
+ if disabled is not None:
258
+ pulumi.set(__self__, "disabled", disabled)
259
+ if effective_annotations is not None:
260
+ pulumi.set(__self__, "effective_annotations", effective_annotations)
261
+ if effective_labels is not None:
262
+ pulumi.set(__self__, "effective_labels", effective_labels)
263
+ if etag is not None:
264
+ pulumi.set(__self__, "etag", etag)
265
+ if github_config is not None:
266
+ pulumi.set(__self__, "github_config", github_config)
267
+ if installation_states is not None:
268
+ pulumi.set(__self__, "installation_states", installation_states)
269
+ if labels is not None:
270
+ pulumi.set(__self__, "labels", labels)
271
+ if location is not None:
272
+ pulumi.set(__self__, "location", location)
273
+ if name is not None:
274
+ pulumi.set(__self__, "name", name)
275
+ if project is not None:
276
+ pulumi.set(__self__, "project", project)
277
+ if pulumi_labels is not None:
278
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
279
+ if reconciling is not None:
280
+ pulumi.set(__self__, "reconciling", reconciling)
281
+ if uid is not None:
282
+ pulumi.set(__self__, "uid", uid)
283
+ if update_time is not None:
284
+ pulumi.set(__self__, "update_time", update_time)
285
+
286
+ @property
287
+ @pulumi.getter
288
+ def annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
289
+ """
290
+ Optional. Allows clients to store small amounts of arbitrary data.
291
+
292
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
293
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
294
+ """
295
+ return pulumi.get(self, "annotations")
296
+
297
+ @annotations.setter
298
+ def annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
299
+ pulumi.set(self, "annotations", value)
300
+
301
+ @property
302
+ @pulumi.getter(name="connectionId")
303
+ def connection_id(self) -> Optional[pulumi.Input[str]]:
304
+ """
305
+ Required. Id of the requesting object. If auto-generating Id server-side,
306
+ remove this field and connection_id from the method_signature of Create RPC.
307
+
308
+
309
+ - - -
310
+ """
311
+ return pulumi.get(self, "connection_id")
312
+
313
+ @connection_id.setter
314
+ def connection_id(self, value: Optional[pulumi.Input[str]]):
315
+ pulumi.set(self, "connection_id", value)
316
+
317
+ @property
318
+ @pulumi.getter(name="createTime")
319
+ def create_time(self) -> Optional[pulumi.Input[str]]:
320
+ """
321
+ Output only. [Output only] Create timestamp
322
+ """
323
+ return pulumi.get(self, "create_time")
324
+
325
+ @create_time.setter
326
+ def create_time(self, value: Optional[pulumi.Input[str]]):
327
+ pulumi.set(self, "create_time", value)
328
+
329
+ @property
330
+ @pulumi.getter(name="deleteTime")
331
+ def delete_time(self) -> Optional[pulumi.Input[str]]:
332
+ """
333
+ Output only. [Output only] Delete timestamp
334
+ """
335
+ return pulumi.get(self, "delete_time")
336
+
337
+ @delete_time.setter
338
+ def delete_time(self, value: Optional[pulumi.Input[str]]):
339
+ pulumi.set(self, "delete_time", value)
340
+
341
+ @property
342
+ @pulumi.getter
343
+ def disabled(self) -> Optional[pulumi.Input[bool]]:
344
+ """
345
+ Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
346
+ """
347
+ return pulumi.get(self, "disabled")
348
+
349
+ @disabled.setter
350
+ def disabled(self, value: Optional[pulumi.Input[bool]]):
351
+ pulumi.set(self, "disabled", value)
352
+
353
+ @property
354
+ @pulumi.getter(name="effectiveAnnotations")
355
+ def effective_annotations(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
356
+ return pulumi.get(self, "effective_annotations")
357
+
358
+ @effective_annotations.setter
359
+ def effective_annotations(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
360
+ pulumi.set(self, "effective_annotations", value)
361
+
362
+ @property
363
+ @pulumi.getter(name="effectiveLabels")
364
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
365
+ """
366
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
367
+ """
368
+ return pulumi.get(self, "effective_labels")
369
+
370
+ @effective_labels.setter
371
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
372
+ pulumi.set(self, "effective_labels", value)
373
+
374
+ @property
375
+ @pulumi.getter
376
+ def etag(self) -> Optional[pulumi.Input[str]]:
377
+ """
378
+ Optional. This checksum is computed by the server based on the value
379
+ of other fields, and may be sent on update and delete requests to ensure the
380
+ client has an up-to-date value before proceeding.
381
+ """
382
+ return pulumi.get(self, "etag")
383
+
384
+ @etag.setter
385
+ def etag(self, value: Optional[pulumi.Input[str]]):
386
+ pulumi.set(self, "etag", value)
387
+
388
+ @property
389
+ @pulumi.getter(name="githubConfig")
390
+ def github_config(self) -> Optional[pulumi.Input['ConnectionGithubConfigArgs']]:
391
+ """
392
+ Configuration for connections to github.com.
393
+ Structure is documented below.
394
+ """
395
+ return pulumi.get(self, "github_config")
396
+
397
+ @github_config.setter
398
+ def github_config(self, value: Optional[pulumi.Input['ConnectionGithubConfigArgs']]):
399
+ pulumi.set(self, "github_config", value)
400
+
401
+ @property
402
+ @pulumi.getter(name="installationStates")
403
+ def installation_states(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionInstallationStateArgs']]]]:
404
+ """
405
+ Describes stage and necessary actions to be taken by the user to complete the installation.
406
+ Used for GitHub and GitHub Enterprise based connections.
407
+ Structure is documented below.
408
+ """
409
+ return pulumi.get(self, "installation_states")
410
+
411
+ @installation_states.setter
412
+ def installation_states(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectionInstallationStateArgs']]]]):
413
+ pulumi.set(self, "installation_states", value)
414
+
415
+ @property
416
+ @pulumi.getter
417
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
418
+ """
419
+ Optional. Labels as key value pairs
420
+
421
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
422
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
423
+ """
424
+ return pulumi.get(self, "labels")
425
+
426
+ @labels.setter
427
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
428
+ pulumi.set(self, "labels", value)
429
+
430
+ @property
431
+ @pulumi.getter
432
+ def location(self) -> Optional[pulumi.Input[str]]:
433
+ """
434
+ Resource ID segment making up resource `name`. It identifies the resource
435
+ within its parent collection as described in https://google.aip.dev/122. See documentation
436
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
437
+ """
438
+ return pulumi.get(self, "location")
439
+
440
+ @location.setter
441
+ def location(self, value: Optional[pulumi.Input[str]]):
442
+ pulumi.set(self, "location", value)
443
+
444
+ @property
445
+ @pulumi.getter
446
+ def name(self) -> Optional[pulumi.Input[str]]:
447
+ """
448
+ Identifier. The resource name of the connection, in the format
449
+ `projects/{project}/locations/{location}/connections/{connection_id}`.
450
+ """
451
+ return pulumi.get(self, "name")
452
+
453
+ @name.setter
454
+ def name(self, value: Optional[pulumi.Input[str]]):
455
+ pulumi.set(self, "name", value)
456
+
457
+ @property
458
+ @pulumi.getter
459
+ def project(self) -> Optional[pulumi.Input[str]]:
460
+ """
461
+ The ID of the project in which the resource belongs.
462
+ If it is not provided, the provider project is used.
463
+ """
464
+ return pulumi.get(self, "project")
465
+
466
+ @project.setter
467
+ def project(self, value: Optional[pulumi.Input[str]]):
468
+ pulumi.set(self, "project", value)
469
+
470
+ @property
471
+ @pulumi.getter(name="pulumiLabels")
472
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
473
+ """
474
+ The combination of labels configured directly on the resource
475
+ and default labels configured on the provider.
476
+ """
477
+ return pulumi.get(self, "pulumi_labels")
478
+
479
+ @pulumi_labels.setter
480
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
481
+ pulumi.set(self, "pulumi_labels", value)
482
+
483
+ @property
484
+ @pulumi.getter
485
+ def reconciling(self) -> Optional[pulumi.Input[bool]]:
486
+ """
487
+ Output only. Set to true when the connection is being set up or updated
488
+ in the background.
489
+ """
490
+ return pulumi.get(self, "reconciling")
491
+
492
+ @reconciling.setter
493
+ def reconciling(self, value: Optional[pulumi.Input[bool]]):
494
+ pulumi.set(self, "reconciling", value)
495
+
496
+ @property
497
+ @pulumi.getter
498
+ def uid(self) -> Optional[pulumi.Input[str]]:
499
+ """
500
+ Output only. A system-assigned unique identifier for a the GitRepositoryLink.
501
+ """
502
+ return pulumi.get(self, "uid")
503
+
504
+ @uid.setter
505
+ def uid(self, value: Optional[pulumi.Input[str]]):
506
+ pulumi.set(self, "uid", value)
507
+
508
+ @property
509
+ @pulumi.getter(name="updateTime")
510
+ def update_time(self) -> Optional[pulumi.Input[str]]:
511
+ """
512
+ Output only. [Output only] Update timestamp
513
+ """
514
+ return pulumi.get(self, "update_time")
515
+
516
+ @update_time.setter
517
+ def update_time(self, value: Optional[pulumi.Input[str]]):
518
+ pulumi.set(self, "update_time", value)
519
+
520
+
521
+ class Connection(pulumi.CustomResource):
522
+ @overload
523
+ def __init__(__self__,
524
+ resource_name: str,
525
+ opts: Optional[pulumi.ResourceOptions] = None,
526
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
527
+ connection_id: Optional[pulumi.Input[str]] = None,
528
+ disabled: Optional[pulumi.Input[bool]] = None,
529
+ etag: Optional[pulumi.Input[str]] = None,
530
+ github_config: Optional[pulumi.Input[Union['ConnectionGithubConfigArgs', 'ConnectionGithubConfigArgsDict']]] = None,
531
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
532
+ location: Optional[pulumi.Input[str]] = None,
533
+ project: Optional[pulumi.Input[str]] = None,
534
+ __props__=None):
535
+ """
536
+ ## Example Usage
537
+
538
+ ### Developer Connect Connection Basic
539
+
540
+ ```python
541
+ import pulumi
542
+ import pulumi_gcp as gcp
543
+
544
+ my_connection = gcp.developerconnect.Connection("my-connection",
545
+ location="us-central1",
546
+ connection_id="tf-test-connection",
547
+ github_config={
548
+ "github_app": "DEVELOPER_CONNECT",
549
+ "authorizer_credential": {
550
+ "oauth_token_secret_version": "projects/devconnect-terraform-creds/secrets/tf-test-do-not-change-github-oauthtoken-e0b9e7/versions/1",
551
+ },
552
+ })
553
+ ```
554
+ ### Developer Connect Connection Github Doc
555
+
556
+ ```python
557
+ import pulumi
558
+ import pulumi_gcp as gcp
559
+ import pulumi_std as std
560
+
561
+ github_token_secret = gcp.secretmanager.Secret("github-token-secret",
562
+ secret_id="github-token-secret",
563
+ replication={
564
+ "auto": {},
565
+ })
566
+ github_token_secret_version = gcp.secretmanager.SecretVersion("github-token-secret-version",
567
+ secret=github_token_secret.id,
568
+ secret_data=std.file(input="my-github-token.txt").result)
569
+ p4sa_secret_accessor = gcp.organizations.get_iam_policy(bindings=[{
570
+ "role": "roles/secretmanager.secretAccessor",
571
+ "members": ["serviceAccount:service-123456789@gcp-sa-devconnect.iam.gserviceaccount.com"],
572
+ }])
573
+ policy = gcp.secretmanager.SecretIamPolicy("policy",
574
+ secret_id=github_token_secret.secret_id,
575
+ policy_data=p4sa_secret_accessor.policy_data)
576
+ my_connection = gcp.developerconnect.Connection("my-connection",
577
+ location="us-central1",
578
+ connection_id="my-connection",
579
+ github_config={
580
+ "github_app": "DEVELOPER_CONNECT",
581
+ "app_installation_id": "123123",
582
+ "authorizer_credential": {
583
+ "oauth_token_secret_version": github_token_secret_version.id,
584
+ },
585
+ })
586
+ ```
587
+
588
+ ## Import
589
+
590
+ Connection can be imported using any of these accepted formats:
591
+
592
+ * `projects/{{project}}/locations/{{location}}/connections/{{connection_id}}`
593
+
594
+ * `{{project}}/{{location}}/{{connection_id}}`
595
+
596
+ * `{{location}}/{{connection_id}}`
597
+
598
+ When using the `pulumi import` command, Connection can be imported using one of the formats above. For example:
599
+
600
+ ```sh
601
+ $ pulumi import gcp:developerconnect/connection:Connection default projects/{{project}}/locations/{{location}}/connections/{{connection_id}}
602
+ ```
603
+
604
+ ```sh
605
+ $ pulumi import gcp:developerconnect/connection:Connection default {{project}}/{{location}}/{{connection_id}}
606
+ ```
607
+
608
+ ```sh
609
+ $ pulumi import gcp:developerconnect/connection:Connection default {{location}}/{{connection_id}}
610
+ ```
611
+
612
+ :param str resource_name: The name of the resource.
613
+ :param pulumi.ResourceOptions opts: Options for the resource.
614
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
615
+
616
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
617
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
618
+ :param pulumi.Input[str] connection_id: Required. Id of the requesting object. If auto-generating Id server-side,
619
+ remove this field and connection_id from the method_signature of Create RPC.
620
+
621
+
622
+ - - -
623
+ :param pulumi.Input[bool] disabled: Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
624
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value
625
+ of other fields, and may be sent on update and delete requests to ensure the
626
+ client has an up-to-date value before proceeding.
627
+ :param pulumi.Input[Union['ConnectionGithubConfigArgs', 'ConnectionGithubConfigArgsDict']] github_config: Configuration for connections to github.com.
628
+ Structure is documented below.
629
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
630
+
631
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
632
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
633
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource
634
+ within its parent collection as described in https://google.aip.dev/122. See documentation
635
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
636
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
637
+ If it is not provided, the provider project is used.
638
+ """
639
+ ...
640
+ @overload
641
+ def __init__(__self__,
642
+ resource_name: str,
643
+ args: ConnectionArgs,
644
+ opts: Optional[pulumi.ResourceOptions] = None):
645
+ """
646
+ ## Example Usage
647
+
648
+ ### Developer Connect Connection Basic
649
+
650
+ ```python
651
+ import pulumi
652
+ import pulumi_gcp as gcp
653
+
654
+ my_connection = gcp.developerconnect.Connection("my-connection",
655
+ location="us-central1",
656
+ connection_id="tf-test-connection",
657
+ github_config={
658
+ "github_app": "DEVELOPER_CONNECT",
659
+ "authorizer_credential": {
660
+ "oauth_token_secret_version": "projects/devconnect-terraform-creds/secrets/tf-test-do-not-change-github-oauthtoken-e0b9e7/versions/1",
661
+ },
662
+ })
663
+ ```
664
+ ### Developer Connect Connection Github Doc
665
+
666
+ ```python
667
+ import pulumi
668
+ import pulumi_gcp as gcp
669
+ import pulumi_std as std
670
+
671
+ github_token_secret = gcp.secretmanager.Secret("github-token-secret",
672
+ secret_id="github-token-secret",
673
+ replication={
674
+ "auto": {},
675
+ })
676
+ github_token_secret_version = gcp.secretmanager.SecretVersion("github-token-secret-version",
677
+ secret=github_token_secret.id,
678
+ secret_data=std.file(input="my-github-token.txt").result)
679
+ p4sa_secret_accessor = gcp.organizations.get_iam_policy(bindings=[{
680
+ "role": "roles/secretmanager.secretAccessor",
681
+ "members": ["serviceAccount:service-123456789@gcp-sa-devconnect.iam.gserviceaccount.com"],
682
+ }])
683
+ policy = gcp.secretmanager.SecretIamPolicy("policy",
684
+ secret_id=github_token_secret.secret_id,
685
+ policy_data=p4sa_secret_accessor.policy_data)
686
+ my_connection = gcp.developerconnect.Connection("my-connection",
687
+ location="us-central1",
688
+ connection_id="my-connection",
689
+ github_config={
690
+ "github_app": "DEVELOPER_CONNECT",
691
+ "app_installation_id": "123123",
692
+ "authorizer_credential": {
693
+ "oauth_token_secret_version": github_token_secret_version.id,
694
+ },
695
+ })
696
+ ```
697
+
698
+ ## Import
699
+
700
+ Connection can be imported using any of these accepted formats:
701
+
702
+ * `projects/{{project}}/locations/{{location}}/connections/{{connection_id}}`
703
+
704
+ * `{{project}}/{{location}}/{{connection_id}}`
705
+
706
+ * `{{location}}/{{connection_id}}`
707
+
708
+ When using the `pulumi import` command, Connection can be imported using one of the formats above. For example:
709
+
710
+ ```sh
711
+ $ pulumi import gcp:developerconnect/connection:Connection default projects/{{project}}/locations/{{location}}/connections/{{connection_id}}
712
+ ```
713
+
714
+ ```sh
715
+ $ pulumi import gcp:developerconnect/connection:Connection default {{project}}/{{location}}/{{connection_id}}
716
+ ```
717
+
718
+ ```sh
719
+ $ pulumi import gcp:developerconnect/connection:Connection default {{location}}/{{connection_id}}
720
+ ```
721
+
722
+ :param str resource_name: The name of the resource.
723
+ :param ConnectionArgs args: The arguments to use to populate this resource's properties.
724
+ :param pulumi.ResourceOptions opts: Options for the resource.
725
+ """
726
+ ...
727
+ def __init__(__self__, resource_name: str, *args, **kwargs):
728
+ resource_args, opts = _utilities.get_resource_args_opts(ConnectionArgs, pulumi.ResourceOptions, *args, **kwargs)
729
+ if resource_args is not None:
730
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
731
+ else:
732
+ __self__._internal_init(resource_name, *args, **kwargs)
733
+
734
+ def _internal_init(__self__,
735
+ resource_name: str,
736
+ opts: Optional[pulumi.ResourceOptions] = None,
737
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
738
+ connection_id: Optional[pulumi.Input[str]] = None,
739
+ disabled: Optional[pulumi.Input[bool]] = None,
740
+ etag: Optional[pulumi.Input[str]] = None,
741
+ github_config: Optional[pulumi.Input[Union['ConnectionGithubConfigArgs', 'ConnectionGithubConfigArgsDict']]] = None,
742
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
743
+ location: Optional[pulumi.Input[str]] = None,
744
+ project: Optional[pulumi.Input[str]] = None,
745
+ __props__=None):
746
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
747
+ if not isinstance(opts, pulumi.ResourceOptions):
748
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
749
+ if opts.id is None:
750
+ if __props__ is not None:
751
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
752
+ __props__ = ConnectionArgs.__new__(ConnectionArgs)
753
+
754
+ __props__.__dict__["annotations"] = annotations
755
+ if connection_id is None and not opts.urn:
756
+ raise TypeError("Missing required property 'connection_id'")
757
+ __props__.__dict__["connection_id"] = connection_id
758
+ __props__.__dict__["disabled"] = disabled
759
+ __props__.__dict__["etag"] = etag
760
+ __props__.__dict__["github_config"] = github_config
761
+ __props__.__dict__["labels"] = labels
762
+ if location is None and not opts.urn:
763
+ raise TypeError("Missing required property 'location'")
764
+ __props__.__dict__["location"] = location
765
+ __props__.__dict__["project"] = project
766
+ __props__.__dict__["create_time"] = None
767
+ __props__.__dict__["delete_time"] = None
768
+ __props__.__dict__["effective_annotations"] = None
769
+ __props__.__dict__["effective_labels"] = None
770
+ __props__.__dict__["installation_states"] = None
771
+ __props__.__dict__["name"] = None
772
+ __props__.__dict__["pulumi_labels"] = None
773
+ __props__.__dict__["reconciling"] = None
774
+ __props__.__dict__["uid"] = None
775
+ __props__.__dict__["update_time"] = None
776
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
777
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
778
+ super(Connection, __self__).__init__(
779
+ 'gcp:developerconnect/connection:Connection',
780
+ resource_name,
781
+ __props__,
782
+ opts)
783
+
784
+ @staticmethod
785
+ def get(resource_name: str,
786
+ id: pulumi.Input[str],
787
+ opts: Optional[pulumi.ResourceOptions] = None,
788
+ annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
789
+ connection_id: Optional[pulumi.Input[str]] = None,
790
+ create_time: Optional[pulumi.Input[str]] = None,
791
+ delete_time: Optional[pulumi.Input[str]] = None,
792
+ disabled: Optional[pulumi.Input[bool]] = None,
793
+ effective_annotations: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
794
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
795
+ etag: Optional[pulumi.Input[str]] = None,
796
+ github_config: Optional[pulumi.Input[Union['ConnectionGithubConfigArgs', 'ConnectionGithubConfigArgsDict']]] = None,
797
+ installation_states: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConnectionInstallationStateArgs', 'ConnectionInstallationStateArgsDict']]]]] = None,
798
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
799
+ location: Optional[pulumi.Input[str]] = None,
800
+ name: Optional[pulumi.Input[str]] = None,
801
+ project: Optional[pulumi.Input[str]] = None,
802
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
803
+ reconciling: Optional[pulumi.Input[bool]] = None,
804
+ uid: Optional[pulumi.Input[str]] = None,
805
+ update_time: Optional[pulumi.Input[str]] = None) -> 'Connection':
806
+ """
807
+ Get an existing Connection resource's state with the given name, id, and optional extra
808
+ properties used to qualify the lookup.
809
+
810
+ :param str resource_name: The unique name of the resulting resource.
811
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
812
+ :param pulumi.ResourceOptions opts: Options for the resource.
813
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] annotations: Optional. Allows clients to store small amounts of arbitrary data.
814
+
815
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
816
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
817
+ :param pulumi.Input[str] connection_id: Required. Id of the requesting object. If auto-generating Id server-side,
818
+ remove this field and connection_id from the method_signature of Create RPC.
819
+
820
+
821
+ - - -
822
+ :param pulumi.Input[str] create_time: Output only. [Output only] Create timestamp
823
+ :param pulumi.Input[str] delete_time: Output only. [Output only] Delete timestamp
824
+ :param pulumi.Input[bool] disabled: Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
825
+ :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.
826
+ :param pulumi.Input[str] etag: Optional. This checksum is computed by the server based on the value
827
+ of other fields, and may be sent on update and delete requests to ensure the
828
+ client has an up-to-date value before proceeding.
829
+ :param pulumi.Input[Union['ConnectionGithubConfigArgs', 'ConnectionGithubConfigArgsDict']] github_config: Configuration for connections to github.com.
830
+ Structure is documented below.
831
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConnectionInstallationStateArgs', 'ConnectionInstallationStateArgsDict']]]] installation_states: Describes stage and necessary actions to be taken by the user to complete the installation.
832
+ Used for GitHub and GitHub Enterprise based connections.
833
+ Structure is documented below.
834
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs
835
+
836
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
837
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
838
+ :param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource
839
+ within its parent collection as described in https://google.aip.dev/122. See documentation
840
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
841
+ :param pulumi.Input[str] name: Identifier. The resource name of the connection, in the format
842
+ `projects/{project}/locations/{location}/connections/{connection_id}`.
843
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
844
+ If it is not provided, the provider project is used.
845
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
846
+ and default labels configured on the provider.
847
+ :param pulumi.Input[bool] reconciling: Output only. Set to true when the connection is being set up or updated
848
+ in the background.
849
+ :param pulumi.Input[str] uid: Output only. A system-assigned unique identifier for a the GitRepositoryLink.
850
+ :param pulumi.Input[str] update_time: Output only. [Output only] Update timestamp
851
+ """
852
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
853
+
854
+ __props__ = _ConnectionState.__new__(_ConnectionState)
855
+
856
+ __props__.__dict__["annotations"] = annotations
857
+ __props__.__dict__["connection_id"] = connection_id
858
+ __props__.__dict__["create_time"] = create_time
859
+ __props__.__dict__["delete_time"] = delete_time
860
+ __props__.__dict__["disabled"] = disabled
861
+ __props__.__dict__["effective_annotations"] = effective_annotations
862
+ __props__.__dict__["effective_labels"] = effective_labels
863
+ __props__.__dict__["etag"] = etag
864
+ __props__.__dict__["github_config"] = github_config
865
+ __props__.__dict__["installation_states"] = installation_states
866
+ __props__.__dict__["labels"] = labels
867
+ __props__.__dict__["location"] = location
868
+ __props__.__dict__["name"] = name
869
+ __props__.__dict__["project"] = project
870
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
871
+ __props__.__dict__["reconciling"] = reconciling
872
+ __props__.__dict__["uid"] = uid
873
+ __props__.__dict__["update_time"] = update_time
874
+ return Connection(resource_name, opts=opts, __props__=__props__)
875
+
876
+ @property
877
+ @pulumi.getter
878
+ def annotations(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
879
+ """
880
+ Optional. Allows clients to store small amounts of arbitrary data.
881
+
882
+ **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration.
883
+ Please refer to the field `effective_annotations` for all of the annotations present on the resource.
884
+ """
885
+ return pulumi.get(self, "annotations")
886
+
887
+ @property
888
+ @pulumi.getter(name="connectionId")
889
+ def connection_id(self) -> pulumi.Output[str]:
890
+ """
891
+ Required. Id of the requesting object. If auto-generating Id server-side,
892
+ remove this field and connection_id from the method_signature of Create RPC.
893
+
894
+
895
+ - - -
896
+ """
897
+ return pulumi.get(self, "connection_id")
898
+
899
+ @property
900
+ @pulumi.getter(name="createTime")
901
+ def create_time(self) -> pulumi.Output[str]:
902
+ """
903
+ Output only. [Output only] Create timestamp
904
+ """
905
+ return pulumi.get(self, "create_time")
906
+
907
+ @property
908
+ @pulumi.getter(name="deleteTime")
909
+ def delete_time(self) -> pulumi.Output[str]:
910
+ """
911
+ Output only. [Output only] Delete timestamp
912
+ """
913
+ return pulumi.get(self, "delete_time")
914
+
915
+ @property
916
+ @pulumi.getter
917
+ def disabled(self) -> pulumi.Output[Optional[bool]]:
918
+ """
919
+ Optional. If disabled is set to true, functionality is disabled for this connection. Repository based API methods and webhooks processing for repositories in this connection will be disabled.
920
+ """
921
+ return pulumi.get(self, "disabled")
922
+
923
+ @property
924
+ @pulumi.getter(name="effectiveAnnotations")
925
+ def effective_annotations(self) -> pulumi.Output[Mapping[str, str]]:
926
+ return pulumi.get(self, "effective_annotations")
927
+
928
+ @property
929
+ @pulumi.getter(name="effectiveLabels")
930
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
931
+ """
932
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
933
+ """
934
+ return pulumi.get(self, "effective_labels")
935
+
936
+ @property
937
+ @pulumi.getter
938
+ def etag(self) -> pulumi.Output[Optional[str]]:
939
+ """
940
+ Optional. This checksum is computed by the server based on the value
941
+ of other fields, and may be sent on update and delete requests to ensure the
942
+ client has an up-to-date value before proceeding.
943
+ """
944
+ return pulumi.get(self, "etag")
945
+
946
+ @property
947
+ @pulumi.getter(name="githubConfig")
948
+ def github_config(self) -> pulumi.Output[Optional['outputs.ConnectionGithubConfig']]:
949
+ """
950
+ Configuration for connections to github.com.
951
+ Structure is documented below.
952
+ """
953
+ return pulumi.get(self, "github_config")
954
+
955
+ @property
956
+ @pulumi.getter(name="installationStates")
957
+ def installation_states(self) -> pulumi.Output[Sequence['outputs.ConnectionInstallationState']]:
958
+ """
959
+ Describes stage and necessary actions to be taken by the user to complete the installation.
960
+ Used for GitHub and GitHub Enterprise based connections.
961
+ Structure is documented below.
962
+ """
963
+ return pulumi.get(self, "installation_states")
964
+
965
+ @property
966
+ @pulumi.getter
967
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
968
+ """
969
+ Optional. Labels as key value pairs
970
+
971
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
972
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
973
+ """
974
+ return pulumi.get(self, "labels")
975
+
976
+ @property
977
+ @pulumi.getter
978
+ def location(self) -> pulumi.Output[str]:
979
+ """
980
+ Resource ID segment making up resource `name`. It identifies the resource
981
+ within its parent collection as described in https://google.aip.dev/122. See documentation
982
+ for resource type `developerconnect.googleapis.com/GitRepositoryLink`.
983
+ """
984
+ return pulumi.get(self, "location")
985
+
986
+ @property
987
+ @pulumi.getter
988
+ def name(self) -> pulumi.Output[str]:
989
+ """
990
+ Identifier. The resource name of the connection, in the format
991
+ `projects/{project}/locations/{location}/connections/{connection_id}`.
992
+ """
993
+ return pulumi.get(self, "name")
994
+
995
+ @property
996
+ @pulumi.getter
997
+ def project(self) -> pulumi.Output[str]:
998
+ """
999
+ The ID of the project in which the resource belongs.
1000
+ If it is not provided, the provider project is used.
1001
+ """
1002
+ return pulumi.get(self, "project")
1003
+
1004
+ @property
1005
+ @pulumi.getter(name="pulumiLabels")
1006
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
1007
+ """
1008
+ The combination of labels configured directly on the resource
1009
+ and default labels configured on the provider.
1010
+ """
1011
+ return pulumi.get(self, "pulumi_labels")
1012
+
1013
+ @property
1014
+ @pulumi.getter
1015
+ def reconciling(self) -> pulumi.Output[bool]:
1016
+ """
1017
+ Output only. Set to true when the connection is being set up or updated
1018
+ in the background.
1019
+ """
1020
+ return pulumi.get(self, "reconciling")
1021
+
1022
+ @property
1023
+ @pulumi.getter
1024
+ def uid(self) -> pulumi.Output[str]:
1025
+ """
1026
+ Output only. A system-assigned unique identifier for a the GitRepositoryLink.
1027
+ """
1028
+ return pulumi.get(self, "uid")
1029
+
1030
+ @property
1031
+ @pulumi.getter(name="updateTime")
1032
+ def update_time(self) -> pulumi.Output[str]:
1033
+ """
1034
+ Output only. [Output only] Update timestamp
1035
+ """
1036
+ return pulumi.get(self, "update_time")
1037
+