pulumi-gcp 8.11.0a1734348982__py3-none-any.whl → 8.11.0a1734385115__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 (142) hide show
  1. pulumi_gcp/__init__.py +91 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +29 -0
  3. pulumi_gcp/accesscontextmanager/outputs.py +18 -0
  4. pulumi_gcp/accesscontextmanager/service_perimeter.py +36 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +6 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +6 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +6 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +6 -0
  9. pulumi_gcp/apigee/app_group.py +7 -7
  10. pulumi_gcp/applicationintegration/client.py +8 -6
  11. pulumi_gcp/artifactregistry/_inputs.py +24 -15
  12. pulumi_gcp/artifactregistry/outputs.py +32 -20
  13. pulumi_gcp/artifactregistry/repository.py +128 -0
  14. pulumi_gcp/assuredworkloads/workload.py +7 -7
  15. pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
  16. pulumi_gcp/backupdisasterrecovery/backup_plan.py +2 -2
  17. pulumi_gcp/backupdisasterrecovery/backup_vault.py +12 -8
  18. pulumi_gcp/backupdisasterrecovery/get_backup.py +153 -0
  19. pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +415 -0
  20. pulumi_gcp/backupdisasterrecovery/outputs.py +63 -0
  21. pulumi_gcp/bigquery/app_profile.py +75 -0
  22. pulumi_gcp/billing/_inputs.py +6 -6
  23. pulumi_gcp/billing/outputs.py +4 -4
  24. pulumi_gcp/certificateauthority/_inputs.py +9 -9
  25. pulumi_gcp/certificateauthority/outputs.py +8 -8
  26. pulumi_gcp/cloudbuild/_inputs.py +53 -0
  27. pulumi_gcp/cloudbuild/outputs.py +50 -0
  28. pulumi_gcp/cloudbuild/worker_pool.py +47 -0
  29. pulumi_gcp/clouddeploy/_inputs.py +254 -0
  30. pulumi_gcp/clouddeploy/outputs.py +211 -0
  31. pulumi_gcp/clouddeploy/target.py +47 -0
  32. pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -6
  33. pulumi_gcp/cloudfunctionsv2/outputs.py +8 -8
  34. pulumi_gcp/cloudrunv2/job.py +4 -4
  35. pulumi_gcp/cloudrunv2/service.py +4 -4
  36. pulumi_gcp/composer/get_user_workloads_config_map.py +4 -0
  37. pulumi_gcp/composer/get_user_workloads_secret.py +4 -0
  38. pulumi_gcp/composer/user_workloads_config_map.py +14 -0
  39. pulumi_gcp/composer/user_workloads_secret.py +6 -0
  40. pulumi_gcp/compute/_inputs.py +566 -25
  41. pulumi_gcp/compute/disk.py +21 -7
  42. pulumi_gcp/compute/firewall_policy_rule.py +12 -0
  43. pulumi_gcp/compute/get_forwarding_rules.py +2 -2
  44. pulumi_gcp/compute/get_global_forwarding_rule.py +12 -1
  45. pulumi_gcp/compute/get_instance_group_manager.py +12 -1
  46. pulumi_gcp/compute/get_network.py +35 -1
  47. pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
  48. pulumi_gcp/compute/get_region_network_endpoint_group.py +12 -1
  49. pulumi_gcp/compute/global_forwarding_rule.py +28 -0
  50. pulumi_gcp/compute/instance_group_manager.py +28 -0
  51. pulumi_gcp/compute/network.py +75 -0
  52. pulumi_gcp/compute/outputs.py +655 -26
  53. pulumi_gcp/compute/region_health_check.py +28 -0
  54. pulumi_gcp/compute/region_instance_group_manager.py +28 -0
  55. pulumi_gcp/compute/region_network_endpoint.py +28 -0
  56. pulumi_gcp/compute/region_network_endpoint_group.py +70 -2
  57. pulumi_gcp/compute/subnetwork.py +30 -2
  58. pulumi_gcp/compute/url_map.py +7 -7
  59. pulumi_gcp/config/__init__.pyi +2 -0
  60. pulumi_gcp/config/vars.py +4 -0
  61. pulumi_gcp/container/_inputs.py +201 -3
  62. pulumi_gcp/container/cluster.py +68 -14
  63. pulumi_gcp/container/get_cluster.py +12 -1
  64. pulumi_gcp/container/outputs.py +249 -3
  65. pulumi_gcp/dataproc/_inputs.py +209 -1
  66. pulumi_gcp/dataproc/batch.py +76 -0
  67. pulumi_gcp/dataproc/outputs.py +169 -3
  68. pulumi_gcp/diagflow/_inputs.py +3 -3
  69. pulumi_gcp/diagflow/outputs.py +2 -2
  70. pulumi_gcp/discoveryengine/search_engine.py +7 -7
  71. pulumi_gcp/firebaserules/release.py +76 -0
  72. pulumi_gcp/firestore/field.py +4 -4
  73. pulumi_gcp/gemini/__init__.py +15 -0
  74. pulumi_gcp/gemini/_inputs.py +183 -0
  75. pulumi_gcp/gemini/code_repository_index.py +659 -0
  76. pulumi_gcp/gemini/get_repository_group_iam_policy.py +171 -0
  77. pulumi_gcp/gemini/outputs.py +130 -0
  78. pulumi_gcp/gemini/repository_group.py +586 -0
  79. pulumi_gcp/gemini/repository_group_iam_binding.py +604 -0
  80. pulumi_gcp/gemini/repository_group_iam_member.py +604 -0
  81. pulumi_gcp/gemini/repository_group_iam_policy.py +443 -0
  82. pulumi_gcp/gkehub/_inputs.py +30 -10
  83. pulumi_gcp/gkehub/membership_binding.py +6 -6
  84. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  85. pulumi_gcp/gkehub/namespace.py +4 -4
  86. pulumi_gcp/gkehub/outputs.py +21 -7
  87. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  88. pulumi_gcp/iam/__init__.py +1 -0
  89. pulumi_gcp/iam/_inputs.py +137 -0
  90. pulumi_gcp/iam/folders_policy_binding.py +16 -0
  91. pulumi_gcp/iam/organizations_policy_binding.py +16 -0
  92. pulumi_gcp/iam/outputs.py +99 -0
  93. pulumi_gcp/iam/principal_access_boundary_policy.py +16 -0
  94. pulumi_gcp/iam/projects_policy_binding.py +917 -0
  95. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  96. pulumi_gcp/integrationconnectors/_inputs.py +15 -15
  97. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  98. pulumi_gcp/integrationconnectors/outputs.py +10 -10
  99. pulumi_gcp/monitoring/_inputs.py +13 -6
  100. pulumi_gcp/monitoring/outputs.py +10 -4
  101. pulumi_gcp/netapp/_inputs.py +3 -3
  102. pulumi_gcp/netapp/active_directory.py +7 -7
  103. pulumi_gcp/netapp/outputs.py +2 -2
  104. pulumi_gcp/netapp/volume.py +11 -11
  105. pulumi_gcp/networkconnectivity/spoke.py +10 -10
  106. pulumi_gcp/networksecurity/__init__.py +4 -0
  107. pulumi_gcp/networksecurity/_inputs.py +115 -0
  108. pulumi_gcp/networksecurity/mirroring_deployment.py +848 -0
  109. pulumi_gcp/networksecurity/mirroring_deployment_group.py +752 -0
  110. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +737 -0
  111. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +840 -0
  112. pulumi_gcp/networksecurity/outputs.py +70 -0
  113. pulumi_gcp/oracledatabase/autonomous_database.py +42 -4
  114. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +42 -4
  115. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +50 -8
  116. pulumi_gcp/oracledatabase/get_autonomous_database.py +12 -1
  117. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +12 -1
  118. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +12 -1
  119. pulumi_gcp/oracledatabase/outputs.py +21 -0
  120. pulumi_gcp/orgpolicy/policy.py +2 -2
  121. pulumi_gcp/parallelstore/instance.py +4 -0
  122. pulumi_gcp/provider.py +20 -0
  123. pulumi_gcp/pubsub/subscription.py +6 -6
  124. pulumi_gcp/pulumi-plugin.json +1 -1
  125. pulumi_gcp/redis/_inputs.py +435 -3
  126. pulumi_gcp/redis/cluster.py +287 -16
  127. pulumi_gcp/redis/outputs.py +304 -2
  128. pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
  129. pulumi_gcp/serviceaccount/get_account_key.py +2 -2
  130. pulumi_gcp/storage/get_bucket.py +2 -2
  131. pulumi_gcp/storage/get_bucket_object_content.py +2 -2
  132. pulumi_gcp/tpu/__init__.py +1 -0
  133. pulumi_gcp/tpu/_inputs.py +188 -6
  134. pulumi_gcp/tpu/outputs.py +164 -4
  135. pulumi_gcp/tpu/v2_queued_resource.py +434 -0
  136. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  137. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  138. pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
  139. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/METADATA +1 -1
  140. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/RECORD +142 -125
  141. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/WHEEL +0 -0
  142. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.11.0a1734385115.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,659 @@
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__ = ['CodeRepositoryIndexArgs', 'CodeRepositoryIndex']
18
+
19
+ @pulumi.input_type
20
+ class CodeRepositoryIndexArgs:
21
+ def __init__(__self__, *,
22
+ code_repository_index_id: pulumi.Input[str],
23
+ location: pulumi.Input[str],
24
+ kms_key: Optional[pulumi.Input[str]] = None,
25
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
26
+ project: Optional[pulumi.Input[str]] = None):
27
+ """
28
+ The set of arguments for constructing a CodeRepositoryIndex resource.
29
+ :param pulumi.Input[str] code_repository_index_id: Required. Id of the Code Repository Index.
30
+
31
+
32
+ - - -
33
+ :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
34
+ :param pulumi.Input[str] kms_key: Optional. Immutable. Customer-managed encryption key name, in the format
35
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
36
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
37
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
38
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
39
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
40
+ If it is not provided, the provider project is used.
41
+ """
42
+ pulumi.set(__self__, "code_repository_index_id", code_repository_index_id)
43
+ pulumi.set(__self__, "location", location)
44
+ if kms_key is not None:
45
+ pulumi.set(__self__, "kms_key", kms_key)
46
+ if labels is not None:
47
+ pulumi.set(__self__, "labels", labels)
48
+ if project is not None:
49
+ pulumi.set(__self__, "project", project)
50
+
51
+ @property
52
+ @pulumi.getter(name="codeRepositoryIndexId")
53
+ def code_repository_index_id(self) -> pulumi.Input[str]:
54
+ """
55
+ Required. Id of the Code Repository Index.
56
+
57
+
58
+ - - -
59
+ """
60
+ return pulumi.get(self, "code_repository_index_id")
61
+
62
+ @code_repository_index_id.setter
63
+ def code_repository_index_id(self, value: pulumi.Input[str]):
64
+ pulumi.set(self, "code_repository_index_id", value)
65
+
66
+ @property
67
+ @pulumi.getter
68
+ def location(self) -> pulumi.Input[str]:
69
+ """
70
+ The location of the Code Repository Index, for example `us-central1`.
71
+ """
72
+ return pulumi.get(self, "location")
73
+
74
+ @location.setter
75
+ def location(self, value: pulumi.Input[str]):
76
+ pulumi.set(self, "location", value)
77
+
78
+ @property
79
+ @pulumi.getter(name="kmsKey")
80
+ def kms_key(self) -> Optional[pulumi.Input[str]]:
81
+ """
82
+ Optional. Immutable. Customer-managed encryption key name, in the format
83
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
84
+ """
85
+ return pulumi.get(self, "kms_key")
86
+
87
+ @kms_key.setter
88
+ def kms_key(self, value: Optional[pulumi.Input[str]]):
89
+ pulumi.set(self, "kms_key", value)
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
94
+ """
95
+ Optional. Labels as key value pairs.
96
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
97
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
98
+ """
99
+ return pulumi.get(self, "labels")
100
+
101
+ @labels.setter
102
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
103
+ pulumi.set(self, "labels", value)
104
+
105
+ @property
106
+ @pulumi.getter
107
+ def project(self) -> Optional[pulumi.Input[str]]:
108
+ """
109
+ The ID of the project in which the resource belongs.
110
+ If it is not provided, the provider project is used.
111
+ """
112
+ return pulumi.get(self, "project")
113
+
114
+ @project.setter
115
+ def project(self, value: Optional[pulumi.Input[str]]):
116
+ pulumi.set(self, "project", value)
117
+
118
+
119
+ @pulumi.input_type
120
+ class _CodeRepositoryIndexState:
121
+ def __init__(__self__, *,
122
+ code_repository_index_id: Optional[pulumi.Input[str]] = None,
123
+ create_time: Optional[pulumi.Input[str]] = None,
124
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
125
+ kms_key: Optional[pulumi.Input[str]] = None,
126
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
127
+ location: Optional[pulumi.Input[str]] = None,
128
+ name: Optional[pulumi.Input[str]] = None,
129
+ project: Optional[pulumi.Input[str]] = None,
130
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
131
+ state: Optional[pulumi.Input[str]] = None,
132
+ update_time: Optional[pulumi.Input[str]] = None):
133
+ """
134
+ Input properties used for looking up and filtering CodeRepositoryIndex resources.
135
+ :param pulumi.Input[str] code_repository_index_id: Required. Id of the Code Repository Index.
136
+
137
+
138
+ - - -
139
+ :param pulumi.Input[str] create_time: Output only. Create time stamp.
140
+ :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.
141
+ :param pulumi.Input[str] kms_key: Optional. Immutable. Customer-managed encryption key name, in the format
142
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
143
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
144
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
145
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
146
+ :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
147
+ :param pulumi.Input[str] name: Immutable. Identifier. Name of Code Repository Index.
148
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
149
+ If it is not provided, the provider project is used.
150
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
151
+ and default labels configured on the provider.
152
+ :param pulumi.Input[str] state: Output only. Code Repository Index instance State.
153
+ Possible values:
154
+ STATE_UNSPECIFIED
155
+ CREATING
156
+ ACTIVE
157
+ DELETING
158
+ SUSPENDED
159
+ :param pulumi.Input[str] update_time: Output only. Update time stamp.
160
+ """
161
+ if code_repository_index_id is not None:
162
+ pulumi.set(__self__, "code_repository_index_id", code_repository_index_id)
163
+ if create_time is not None:
164
+ pulumi.set(__self__, "create_time", create_time)
165
+ if effective_labels is not None:
166
+ pulumi.set(__self__, "effective_labels", effective_labels)
167
+ if kms_key is not None:
168
+ pulumi.set(__self__, "kms_key", kms_key)
169
+ if labels is not None:
170
+ pulumi.set(__self__, "labels", labels)
171
+ if location is not None:
172
+ pulumi.set(__self__, "location", location)
173
+ if name is not None:
174
+ pulumi.set(__self__, "name", name)
175
+ if project is not None:
176
+ pulumi.set(__self__, "project", project)
177
+ if pulumi_labels is not None:
178
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
179
+ if state is not None:
180
+ pulumi.set(__self__, "state", state)
181
+ if update_time is not None:
182
+ pulumi.set(__self__, "update_time", update_time)
183
+
184
+ @property
185
+ @pulumi.getter(name="codeRepositoryIndexId")
186
+ def code_repository_index_id(self) -> Optional[pulumi.Input[str]]:
187
+ """
188
+ Required. Id of the Code Repository Index.
189
+
190
+
191
+ - - -
192
+ """
193
+ return pulumi.get(self, "code_repository_index_id")
194
+
195
+ @code_repository_index_id.setter
196
+ def code_repository_index_id(self, value: Optional[pulumi.Input[str]]):
197
+ pulumi.set(self, "code_repository_index_id", value)
198
+
199
+ @property
200
+ @pulumi.getter(name="createTime")
201
+ def create_time(self) -> Optional[pulumi.Input[str]]:
202
+ """
203
+ Output only. Create time stamp.
204
+ """
205
+ return pulumi.get(self, "create_time")
206
+
207
+ @create_time.setter
208
+ def create_time(self, value: Optional[pulumi.Input[str]]):
209
+ pulumi.set(self, "create_time", value)
210
+
211
+ @property
212
+ @pulumi.getter(name="effectiveLabels")
213
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
214
+ """
215
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
216
+ """
217
+ return pulumi.get(self, "effective_labels")
218
+
219
+ @effective_labels.setter
220
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
221
+ pulumi.set(self, "effective_labels", value)
222
+
223
+ @property
224
+ @pulumi.getter(name="kmsKey")
225
+ def kms_key(self) -> Optional[pulumi.Input[str]]:
226
+ """
227
+ Optional. Immutable. Customer-managed encryption key name, in the format
228
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
229
+ """
230
+ return pulumi.get(self, "kms_key")
231
+
232
+ @kms_key.setter
233
+ def kms_key(self, value: Optional[pulumi.Input[str]]):
234
+ pulumi.set(self, "kms_key", value)
235
+
236
+ @property
237
+ @pulumi.getter
238
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
239
+ """
240
+ Optional. Labels as key value pairs.
241
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
242
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
243
+ """
244
+ return pulumi.get(self, "labels")
245
+
246
+ @labels.setter
247
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
248
+ pulumi.set(self, "labels", value)
249
+
250
+ @property
251
+ @pulumi.getter
252
+ def location(self) -> Optional[pulumi.Input[str]]:
253
+ """
254
+ The location of the Code Repository Index, for example `us-central1`.
255
+ """
256
+ return pulumi.get(self, "location")
257
+
258
+ @location.setter
259
+ def location(self, value: Optional[pulumi.Input[str]]):
260
+ pulumi.set(self, "location", value)
261
+
262
+ @property
263
+ @pulumi.getter
264
+ def name(self) -> Optional[pulumi.Input[str]]:
265
+ """
266
+ Immutable. Identifier. Name of Code Repository Index.
267
+ """
268
+ return pulumi.get(self, "name")
269
+
270
+ @name.setter
271
+ def name(self, value: Optional[pulumi.Input[str]]):
272
+ pulumi.set(self, "name", value)
273
+
274
+ @property
275
+ @pulumi.getter
276
+ def project(self) -> Optional[pulumi.Input[str]]:
277
+ """
278
+ The ID of the project in which the resource belongs.
279
+ If it is not provided, the provider project is used.
280
+ """
281
+ return pulumi.get(self, "project")
282
+
283
+ @project.setter
284
+ def project(self, value: Optional[pulumi.Input[str]]):
285
+ pulumi.set(self, "project", value)
286
+
287
+ @property
288
+ @pulumi.getter(name="pulumiLabels")
289
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
290
+ """
291
+ The combination of labels configured directly on the resource
292
+ and default labels configured on the provider.
293
+ """
294
+ return pulumi.get(self, "pulumi_labels")
295
+
296
+ @pulumi_labels.setter
297
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
298
+ pulumi.set(self, "pulumi_labels", value)
299
+
300
+ @property
301
+ @pulumi.getter
302
+ def state(self) -> Optional[pulumi.Input[str]]:
303
+ """
304
+ Output only. Code Repository Index instance State.
305
+ Possible values:
306
+ STATE_UNSPECIFIED
307
+ CREATING
308
+ ACTIVE
309
+ DELETING
310
+ SUSPENDED
311
+ """
312
+ return pulumi.get(self, "state")
313
+
314
+ @state.setter
315
+ def state(self, value: Optional[pulumi.Input[str]]):
316
+ pulumi.set(self, "state", value)
317
+
318
+ @property
319
+ @pulumi.getter(name="updateTime")
320
+ def update_time(self) -> Optional[pulumi.Input[str]]:
321
+ """
322
+ Output only. Update time stamp.
323
+ """
324
+ return pulumi.get(self, "update_time")
325
+
326
+ @update_time.setter
327
+ def update_time(self, value: Optional[pulumi.Input[str]]):
328
+ pulumi.set(self, "update_time", value)
329
+
330
+
331
+ class CodeRepositoryIndex(pulumi.CustomResource):
332
+ @overload
333
+ def __init__(__self__,
334
+ resource_name: str,
335
+ opts: Optional[pulumi.ResourceOptions] = None,
336
+ code_repository_index_id: Optional[pulumi.Input[str]] = None,
337
+ kms_key: Optional[pulumi.Input[str]] = None,
338
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
339
+ location: Optional[pulumi.Input[str]] = None,
340
+ project: Optional[pulumi.Input[str]] = None,
341
+ __props__=None):
342
+ """
343
+ ## Example Usage
344
+
345
+ ### Gemini Code Repository Index Basic
346
+
347
+ ```python
348
+ import pulumi
349
+ import pulumi_gcp as gcp
350
+
351
+ example = gcp.gemini.CodeRepositoryIndex("example",
352
+ location="us-central1",
353
+ code_repository_index_id="",
354
+ kms_key="projects/projectExample/locations/locationExample/keyRings/keyRingExample/cryptoKeys/cryptoKeyExample")
355
+ ```
356
+
357
+ ## Import
358
+
359
+ CodeRepositoryIndex can be imported using any of these accepted formats:
360
+
361
+ * `projects/{{project}}/locations/{{location}}/codeRepositoryIndexes/{{code_repository_index_id}}`
362
+
363
+ * `{{project}}/{{location}}/{{code_repository_index_id}}`
364
+
365
+ * `{{location}}/{{code_repository_index_id}}`
366
+
367
+ When using the `pulumi import` command, CodeRepositoryIndex can be imported using one of the formats above. For example:
368
+
369
+ ```sh
370
+ $ pulumi import gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex default projects/{{project}}/locations/{{location}}/codeRepositoryIndexes/{{code_repository_index_id}}
371
+ ```
372
+
373
+ ```sh
374
+ $ pulumi import gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex default {{project}}/{{location}}/{{code_repository_index_id}}
375
+ ```
376
+
377
+ ```sh
378
+ $ pulumi import gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex default {{location}}/{{code_repository_index_id}}
379
+ ```
380
+
381
+ :param str resource_name: The name of the resource.
382
+ :param pulumi.ResourceOptions opts: Options for the resource.
383
+ :param pulumi.Input[str] code_repository_index_id: Required. Id of the Code Repository Index.
384
+
385
+
386
+ - - -
387
+ :param pulumi.Input[str] kms_key: Optional. Immutable. Customer-managed encryption key name, in the format
388
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
389
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
390
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
391
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
392
+ :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
393
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
394
+ If it is not provided, the provider project is used.
395
+ """
396
+ ...
397
+ @overload
398
+ def __init__(__self__,
399
+ resource_name: str,
400
+ args: CodeRepositoryIndexArgs,
401
+ opts: Optional[pulumi.ResourceOptions] = None):
402
+ """
403
+ ## Example Usage
404
+
405
+ ### Gemini Code Repository Index Basic
406
+
407
+ ```python
408
+ import pulumi
409
+ import pulumi_gcp as gcp
410
+
411
+ example = gcp.gemini.CodeRepositoryIndex("example",
412
+ location="us-central1",
413
+ code_repository_index_id="",
414
+ kms_key="projects/projectExample/locations/locationExample/keyRings/keyRingExample/cryptoKeys/cryptoKeyExample")
415
+ ```
416
+
417
+ ## Import
418
+
419
+ CodeRepositoryIndex can be imported using any of these accepted formats:
420
+
421
+ * `projects/{{project}}/locations/{{location}}/codeRepositoryIndexes/{{code_repository_index_id}}`
422
+
423
+ * `{{project}}/{{location}}/{{code_repository_index_id}}`
424
+
425
+ * `{{location}}/{{code_repository_index_id}}`
426
+
427
+ When using the `pulumi import` command, CodeRepositoryIndex can be imported using one of the formats above. For example:
428
+
429
+ ```sh
430
+ $ pulumi import gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex default projects/{{project}}/locations/{{location}}/codeRepositoryIndexes/{{code_repository_index_id}}
431
+ ```
432
+
433
+ ```sh
434
+ $ pulumi import gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex default {{project}}/{{location}}/{{code_repository_index_id}}
435
+ ```
436
+
437
+ ```sh
438
+ $ pulumi import gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex default {{location}}/{{code_repository_index_id}}
439
+ ```
440
+
441
+ :param str resource_name: The name of the resource.
442
+ :param CodeRepositoryIndexArgs args: The arguments to use to populate this resource's properties.
443
+ :param pulumi.ResourceOptions opts: Options for the resource.
444
+ """
445
+ ...
446
+ def __init__(__self__, resource_name: str, *args, **kwargs):
447
+ resource_args, opts = _utilities.get_resource_args_opts(CodeRepositoryIndexArgs, pulumi.ResourceOptions, *args, **kwargs)
448
+ if resource_args is not None:
449
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
450
+ else:
451
+ __self__._internal_init(resource_name, *args, **kwargs)
452
+
453
+ def _internal_init(__self__,
454
+ resource_name: str,
455
+ opts: Optional[pulumi.ResourceOptions] = None,
456
+ code_repository_index_id: Optional[pulumi.Input[str]] = None,
457
+ kms_key: Optional[pulumi.Input[str]] = None,
458
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
459
+ location: Optional[pulumi.Input[str]] = None,
460
+ project: Optional[pulumi.Input[str]] = None,
461
+ __props__=None):
462
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
463
+ if not isinstance(opts, pulumi.ResourceOptions):
464
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
465
+ if opts.id is None:
466
+ if __props__ is not None:
467
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
468
+ __props__ = CodeRepositoryIndexArgs.__new__(CodeRepositoryIndexArgs)
469
+
470
+ if code_repository_index_id is None and not opts.urn:
471
+ raise TypeError("Missing required property 'code_repository_index_id'")
472
+ __props__.__dict__["code_repository_index_id"] = code_repository_index_id
473
+ __props__.__dict__["kms_key"] = kms_key
474
+ __props__.__dict__["labels"] = labels
475
+ if location is None and not opts.urn:
476
+ raise TypeError("Missing required property 'location'")
477
+ __props__.__dict__["location"] = location
478
+ __props__.__dict__["project"] = project
479
+ __props__.__dict__["create_time"] = None
480
+ __props__.__dict__["effective_labels"] = None
481
+ __props__.__dict__["name"] = None
482
+ __props__.__dict__["pulumi_labels"] = None
483
+ __props__.__dict__["state"] = None
484
+ __props__.__dict__["update_time"] = None
485
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
486
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
487
+ super(CodeRepositoryIndex, __self__).__init__(
488
+ 'gcp:gemini/codeRepositoryIndex:CodeRepositoryIndex',
489
+ resource_name,
490
+ __props__,
491
+ opts)
492
+
493
+ @staticmethod
494
+ def get(resource_name: str,
495
+ id: pulumi.Input[str],
496
+ opts: Optional[pulumi.ResourceOptions] = None,
497
+ code_repository_index_id: Optional[pulumi.Input[str]] = None,
498
+ create_time: Optional[pulumi.Input[str]] = None,
499
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
500
+ kms_key: Optional[pulumi.Input[str]] = None,
501
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
502
+ location: Optional[pulumi.Input[str]] = None,
503
+ name: Optional[pulumi.Input[str]] = None,
504
+ project: Optional[pulumi.Input[str]] = None,
505
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
506
+ state: Optional[pulumi.Input[str]] = None,
507
+ update_time: Optional[pulumi.Input[str]] = None) -> 'CodeRepositoryIndex':
508
+ """
509
+ Get an existing CodeRepositoryIndex resource's state with the given name, id, and optional extra
510
+ properties used to qualify the lookup.
511
+
512
+ :param str resource_name: The unique name of the resulting resource.
513
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
514
+ :param pulumi.ResourceOptions opts: Options for the resource.
515
+ :param pulumi.Input[str] code_repository_index_id: Required. Id of the Code Repository Index.
516
+
517
+
518
+ - - -
519
+ :param pulumi.Input[str] create_time: Output only. Create time stamp.
520
+ :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.
521
+ :param pulumi.Input[str] kms_key: Optional. Immutable. Customer-managed encryption key name, in the format
522
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
523
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Labels as key value pairs.
524
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
525
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
526
+ :param pulumi.Input[str] location: The location of the Code Repository Index, for example `us-central1`.
527
+ :param pulumi.Input[str] name: Immutable. Identifier. Name of Code Repository Index.
528
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
529
+ If it is not provided, the provider project is used.
530
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
531
+ and default labels configured on the provider.
532
+ :param pulumi.Input[str] state: Output only. Code Repository Index instance State.
533
+ Possible values:
534
+ STATE_UNSPECIFIED
535
+ CREATING
536
+ ACTIVE
537
+ DELETING
538
+ SUSPENDED
539
+ :param pulumi.Input[str] update_time: Output only. Update time stamp.
540
+ """
541
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
542
+
543
+ __props__ = _CodeRepositoryIndexState.__new__(_CodeRepositoryIndexState)
544
+
545
+ __props__.__dict__["code_repository_index_id"] = code_repository_index_id
546
+ __props__.__dict__["create_time"] = create_time
547
+ __props__.__dict__["effective_labels"] = effective_labels
548
+ __props__.__dict__["kms_key"] = kms_key
549
+ __props__.__dict__["labels"] = labels
550
+ __props__.__dict__["location"] = location
551
+ __props__.__dict__["name"] = name
552
+ __props__.__dict__["project"] = project
553
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
554
+ __props__.__dict__["state"] = state
555
+ __props__.__dict__["update_time"] = update_time
556
+ return CodeRepositoryIndex(resource_name, opts=opts, __props__=__props__)
557
+
558
+ @property
559
+ @pulumi.getter(name="codeRepositoryIndexId")
560
+ def code_repository_index_id(self) -> pulumi.Output[str]:
561
+ """
562
+ Required. Id of the Code Repository Index.
563
+
564
+
565
+ - - -
566
+ """
567
+ return pulumi.get(self, "code_repository_index_id")
568
+
569
+ @property
570
+ @pulumi.getter(name="createTime")
571
+ def create_time(self) -> pulumi.Output[str]:
572
+ """
573
+ Output only. Create time stamp.
574
+ """
575
+ return pulumi.get(self, "create_time")
576
+
577
+ @property
578
+ @pulumi.getter(name="effectiveLabels")
579
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
580
+ """
581
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
582
+ """
583
+ return pulumi.get(self, "effective_labels")
584
+
585
+ @property
586
+ @pulumi.getter(name="kmsKey")
587
+ def kms_key(self) -> pulumi.Output[Optional[str]]:
588
+ """
589
+ Optional. Immutable. Customer-managed encryption key name, in the format
590
+ projects/*/locations/*/keyRings/*/cryptoKeys/*.
591
+ """
592
+ return pulumi.get(self, "kms_key")
593
+
594
+ @property
595
+ @pulumi.getter
596
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
597
+ """
598
+ Optional. Labels as key value pairs.
599
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
600
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
601
+ """
602
+ return pulumi.get(self, "labels")
603
+
604
+ @property
605
+ @pulumi.getter
606
+ def location(self) -> pulumi.Output[str]:
607
+ """
608
+ The location of the Code Repository Index, for example `us-central1`.
609
+ """
610
+ return pulumi.get(self, "location")
611
+
612
+ @property
613
+ @pulumi.getter
614
+ def name(self) -> pulumi.Output[str]:
615
+ """
616
+ Immutable. Identifier. Name of Code Repository Index.
617
+ """
618
+ return pulumi.get(self, "name")
619
+
620
+ @property
621
+ @pulumi.getter
622
+ def project(self) -> pulumi.Output[str]:
623
+ """
624
+ The ID of the project in which the resource belongs.
625
+ If it is not provided, the provider project is used.
626
+ """
627
+ return pulumi.get(self, "project")
628
+
629
+ @property
630
+ @pulumi.getter(name="pulumiLabels")
631
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
632
+ """
633
+ The combination of labels configured directly on the resource
634
+ and default labels configured on the provider.
635
+ """
636
+ return pulumi.get(self, "pulumi_labels")
637
+
638
+ @property
639
+ @pulumi.getter
640
+ def state(self) -> pulumi.Output[str]:
641
+ """
642
+ Output only. Code Repository Index instance State.
643
+ Possible values:
644
+ STATE_UNSPECIFIED
645
+ CREATING
646
+ ACTIVE
647
+ DELETING
648
+ SUSPENDED
649
+ """
650
+ return pulumi.get(self, "state")
651
+
652
+ @property
653
+ @pulumi.getter(name="updateTime")
654
+ def update_time(self) -> pulumi.Output[str]:
655
+ """
656
+ Output only. Update time stamp.
657
+ """
658
+ return pulumi.get(self, "update_time")
659
+