pulumi-harness 0.6.0a1739339279__py3-none-any.whl → 0.6.0a1739425612__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.

Potentially problematic release.


This version of pulumi-harness might be problematic. Click here for more details.

@@ -0,0 +1,964 @@
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__ = ['ConnectorGcpKmsArgs', 'ConnectorGcpKms']
20
+
21
+ @pulumi.input_type
22
+ class ConnectorGcpKmsArgs:
23
+ def __init__(__self__, *,
24
+ gcp_project_id: pulumi.Input[str],
25
+ identifier: pulumi.Input[str],
26
+ key_name: pulumi.Input[str],
27
+ key_ring: pulumi.Input[str],
28
+ region: pulumi.Input[str],
29
+ default: Optional[pulumi.Input[bool]] = None,
30
+ description: Optional[pulumi.Input[str]] = None,
31
+ execute_on_delegate: Optional[pulumi.Input[bool]] = None,
32
+ manual: Optional[pulumi.Input['ConnectorGcpKmsManualArgs']] = None,
33
+ name: Optional[pulumi.Input[str]] = None,
34
+ oidc_authentications: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]]] = None,
35
+ org_id: Optional[pulumi.Input[str]] = None,
36
+ project_id: Optional[pulumi.Input[str]] = None,
37
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
38
+ """
39
+ The set of arguments for constructing a ConnectorGcpKms resource.
40
+ :param pulumi.Input[str] gcp_project_id: The project ID of the GCP KMS.
41
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
42
+ :param pulumi.Input[str] key_name: The key name of the GCP KMS.
43
+ :param pulumi.Input[str] key_ring: The key ring of the GCP KMS.
44
+ :param pulumi.Input[str] region: The region of the GCP KMS.
45
+ :param pulumi.Input[bool] default: Set this flag to set this secret manager as default secret manager.
46
+ :param pulumi.Input[str] description: Description of the resource.
47
+ :param pulumi.Input[bool] execute_on_delegate: Enable this flag to execute on Delegate.
48
+ :param pulumi.Input['ConnectorGcpKmsManualArgs'] manual: Manual credential configuration.
49
+ :param pulumi.Input[str] name: Name of the resource.
50
+ :param pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]] oidc_authentications: Authentication using harness oidc.
51
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
52
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
53
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
54
+ """
55
+ pulumi.set(__self__, "gcp_project_id", gcp_project_id)
56
+ pulumi.set(__self__, "identifier", identifier)
57
+ pulumi.set(__self__, "key_name", key_name)
58
+ pulumi.set(__self__, "key_ring", key_ring)
59
+ pulumi.set(__self__, "region", region)
60
+ if default is not None:
61
+ pulumi.set(__self__, "default", default)
62
+ if description is not None:
63
+ pulumi.set(__self__, "description", description)
64
+ if execute_on_delegate is not None:
65
+ pulumi.set(__self__, "execute_on_delegate", execute_on_delegate)
66
+ if manual is not None:
67
+ pulumi.set(__self__, "manual", manual)
68
+ if name is not None:
69
+ pulumi.set(__self__, "name", name)
70
+ if oidc_authentications is not None:
71
+ pulumi.set(__self__, "oidc_authentications", oidc_authentications)
72
+ if org_id is not None:
73
+ pulumi.set(__self__, "org_id", org_id)
74
+ if project_id is not None:
75
+ pulumi.set(__self__, "project_id", project_id)
76
+ if tags is not None:
77
+ pulumi.set(__self__, "tags", tags)
78
+
79
+ @property
80
+ @pulumi.getter(name="gcpProjectId")
81
+ def gcp_project_id(self) -> pulumi.Input[str]:
82
+ """
83
+ The project ID of the GCP KMS.
84
+ """
85
+ return pulumi.get(self, "gcp_project_id")
86
+
87
+ @gcp_project_id.setter
88
+ def gcp_project_id(self, value: pulumi.Input[str]):
89
+ pulumi.set(self, "gcp_project_id", value)
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def identifier(self) -> pulumi.Input[str]:
94
+ """
95
+ Unique identifier of the resource.
96
+ """
97
+ return pulumi.get(self, "identifier")
98
+
99
+ @identifier.setter
100
+ def identifier(self, value: pulumi.Input[str]):
101
+ pulumi.set(self, "identifier", value)
102
+
103
+ @property
104
+ @pulumi.getter(name="keyName")
105
+ def key_name(self) -> pulumi.Input[str]:
106
+ """
107
+ The key name of the GCP KMS.
108
+ """
109
+ return pulumi.get(self, "key_name")
110
+
111
+ @key_name.setter
112
+ def key_name(self, value: pulumi.Input[str]):
113
+ pulumi.set(self, "key_name", value)
114
+
115
+ @property
116
+ @pulumi.getter(name="keyRing")
117
+ def key_ring(self) -> pulumi.Input[str]:
118
+ """
119
+ The key ring of the GCP KMS.
120
+ """
121
+ return pulumi.get(self, "key_ring")
122
+
123
+ @key_ring.setter
124
+ def key_ring(self, value: pulumi.Input[str]):
125
+ pulumi.set(self, "key_ring", value)
126
+
127
+ @property
128
+ @pulumi.getter
129
+ def region(self) -> pulumi.Input[str]:
130
+ """
131
+ The region of the GCP KMS.
132
+ """
133
+ return pulumi.get(self, "region")
134
+
135
+ @region.setter
136
+ def region(self, value: pulumi.Input[str]):
137
+ pulumi.set(self, "region", value)
138
+
139
+ @property
140
+ @pulumi.getter
141
+ def default(self) -> Optional[pulumi.Input[bool]]:
142
+ """
143
+ Set this flag to set this secret manager as default secret manager.
144
+ """
145
+ return pulumi.get(self, "default")
146
+
147
+ @default.setter
148
+ def default(self, value: Optional[pulumi.Input[bool]]):
149
+ pulumi.set(self, "default", value)
150
+
151
+ @property
152
+ @pulumi.getter
153
+ def description(self) -> Optional[pulumi.Input[str]]:
154
+ """
155
+ Description of the resource.
156
+ """
157
+ return pulumi.get(self, "description")
158
+
159
+ @description.setter
160
+ def description(self, value: Optional[pulumi.Input[str]]):
161
+ pulumi.set(self, "description", value)
162
+
163
+ @property
164
+ @pulumi.getter(name="executeOnDelegate")
165
+ def execute_on_delegate(self) -> Optional[pulumi.Input[bool]]:
166
+ """
167
+ Enable this flag to execute on Delegate.
168
+ """
169
+ return pulumi.get(self, "execute_on_delegate")
170
+
171
+ @execute_on_delegate.setter
172
+ def execute_on_delegate(self, value: Optional[pulumi.Input[bool]]):
173
+ pulumi.set(self, "execute_on_delegate", value)
174
+
175
+ @property
176
+ @pulumi.getter
177
+ def manual(self) -> Optional[pulumi.Input['ConnectorGcpKmsManualArgs']]:
178
+ """
179
+ Manual credential configuration.
180
+ """
181
+ return pulumi.get(self, "manual")
182
+
183
+ @manual.setter
184
+ def manual(self, value: Optional[pulumi.Input['ConnectorGcpKmsManualArgs']]):
185
+ pulumi.set(self, "manual", value)
186
+
187
+ @property
188
+ @pulumi.getter
189
+ def name(self) -> Optional[pulumi.Input[str]]:
190
+ """
191
+ Name of the resource.
192
+ """
193
+ return pulumi.get(self, "name")
194
+
195
+ @name.setter
196
+ def name(self, value: Optional[pulumi.Input[str]]):
197
+ pulumi.set(self, "name", value)
198
+
199
+ @property
200
+ @pulumi.getter(name="oidcAuthentications")
201
+ def oidc_authentications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]]]:
202
+ """
203
+ Authentication using harness oidc.
204
+ """
205
+ return pulumi.get(self, "oidc_authentications")
206
+
207
+ @oidc_authentications.setter
208
+ def oidc_authentications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]]]):
209
+ pulumi.set(self, "oidc_authentications", value)
210
+
211
+ @property
212
+ @pulumi.getter(name="orgId")
213
+ def org_id(self) -> Optional[pulumi.Input[str]]:
214
+ """
215
+ Unique identifier of the organization.
216
+ """
217
+ return pulumi.get(self, "org_id")
218
+
219
+ @org_id.setter
220
+ def org_id(self, value: Optional[pulumi.Input[str]]):
221
+ pulumi.set(self, "org_id", value)
222
+
223
+ @property
224
+ @pulumi.getter(name="projectId")
225
+ def project_id(self) -> Optional[pulumi.Input[str]]:
226
+ """
227
+ Unique identifier of the project.
228
+ """
229
+ return pulumi.get(self, "project_id")
230
+
231
+ @project_id.setter
232
+ def project_id(self, value: Optional[pulumi.Input[str]]):
233
+ pulumi.set(self, "project_id", value)
234
+
235
+ @property
236
+ @pulumi.getter
237
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
238
+ """
239
+ Tags to associate with the resource.
240
+ """
241
+ return pulumi.get(self, "tags")
242
+
243
+ @tags.setter
244
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
245
+ pulumi.set(self, "tags", value)
246
+
247
+
248
+ @pulumi.input_type
249
+ class _ConnectorGcpKmsState:
250
+ def __init__(__self__, *,
251
+ default: Optional[pulumi.Input[bool]] = None,
252
+ description: Optional[pulumi.Input[str]] = None,
253
+ execute_on_delegate: Optional[pulumi.Input[bool]] = None,
254
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
255
+ identifier: Optional[pulumi.Input[str]] = None,
256
+ key_name: Optional[pulumi.Input[str]] = None,
257
+ key_ring: Optional[pulumi.Input[str]] = None,
258
+ manual: Optional[pulumi.Input['ConnectorGcpKmsManualArgs']] = None,
259
+ name: Optional[pulumi.Input[str]] = None,
260
+ oidc_authentications: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]]] = None,
261
+ org_id: Optional[pulumi.Input[str]] = None,
262
+ project_id: Optional[pulumi.Input[str]] = None,
263
+ region: Optional[pulumi.Input[str]] = None,
264
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
265
+ """
266
+ Input properties used for looking up and filtering ConnectorGcpKms resources.
267
+ :param pulumi.Input[bool] default: Set this flag to set this secret manager as default secret manager.
268
+ :param pulumi.Input[str] description: Description of the resource.
269
+ :param pulumi.Input[bool] execute_on_delegate: Enable this flag to execute on Delegate.
270
+ :param pulumi.Input[str] gcp_project_id: The project ID of the GCP KMS.
271
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
272
+ :param pulumi.Input[str] key_name: The key name of the GCP KMS.
273
+ :param pulumi.Input[str] key_ring: The key ring of the GCP KMS.
274
+ :param pulumi.Input['ConnectorGcpKmsManualArgs'] manual: Manual credential configuration.
275
+ :param pulumi.Input[str] name: Name of the resource.
276
+ :param pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]] oidc_authentications: Authentication using harness oidc.
277
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
278
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
279
+ :param pulumi.Input[str] region: The region of the GCP KMS.
280
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
281
+ """
282
+ if default is not None:
283
+ pulumi.set(__self__, "default", default)
284
+ if description is not None:
285
+ pulumi.set(__self__, "description", description)
286
+ if execute_on_delegate is not None:
287
+ pulumi.set(__self__, "execute_on_delegate", execute_on_delegate)
288
+ if gcp_project_id is not None:
289
+ pulumi.set(__self__, "gcp_project_id", gcp_project_id)
290
+ if identifier is not None:
291
+ pulumi.set(__self__, "identifier", identifier)
292
+ if key_name is not None:
293
+ pulumi.set(__self__, "key_name", key_name)
294
+ if key_ring is not None:
295
+ pulumi.set(__self__, "key_ring", key_ring)
296
+ if manual is not None:
297
+ pulumi.set(__self__, "manual", manual)
298
+ if name is not None:
299
+ pulumi.set(__self__, "name", name)
300
+ if oidc_authentications is not None:
301
+ pulumi.set(__self__, "oidc_authentications", oidc_authentications)
302
+ if org_id is not None:
303
+ pulumi.set(__self__, "org_id", org_id)
304
+ if project_id is not None:
305
+ pulumi.set(__self__, "project_id", project_id)
306
+ if region is not None:
307
+ pulumi.set(__self__, "region", region)
308
+ if tags is not None:
309
+ pulumi.set(__self__, "tags", tags)
310
+
311
+ @property
312
+ @pulumi.getter
313
+ def default(self) -> Optional[pulumi.Input[bool]]:
314
+ """
315
+ Set this flag to set this secret manager as default secret manager.
316
+ """
317
+ return pulumi.get(self, "default")
318
+
319
+ @default.setter
320
+ def default(self, value: Optional[pulumi.Input[bool]]):
321
+ pulumi.set(self, "default", value)
322
+
323
+ @property
324
+ @pulumi.getter
325
+ def description(self) -> Optional[pulumi.Input[str]]:
326
+ """
327
+ Description of the resource.
328
+ """
329
+ return pulumi.get(self, "description")
330
+
331
+ @description.setter
332
+ def description(self, value: Optional[pulumi.Input[str]]):
333
+ pulumi.set(self, "description", value)
334
+
335
+ @property
336
+ @pulumi.getter(name="executeOnDelegate")
337
+ def execute_on_delegate(self) -> Optional[pulumi.Input[bool]]:
338
+ """
339
+ Enable this flag to execute on Delegate.
340
+ """
341
+ return pulumi.get(self, "execute_on_delegate")
342
+
343
+ @execute_on_delegate.setter
344
+ def execute_on_delegate(self, value: Optional[pulumi.Input[bool]]):
345
+ pulumi.set(self, "execute_on_delegate", value)
346
+
347
+ @property
348
+ @pulumi.getter(name="gcpProjectId")
349
+ def gcp_project_id(self) -> Optional[pulumi.Input[str]]:
350
+ """
351
+ The project ID of the GCP KMS.
352
+ """
353
+ return pulumi.get(self, "gcp_project_id")
354
+
355
+ @gcp_project_id.setter
356
+ def gcp_project_id(self, value: Optional[pulumi.Input[str]]):
357
+ pulumi.set(self, "gcp_project_id", value)
358
+
359
+ @property
360
+ @pulumi.getter
361
+ def identifier(self) -> Optional[pulumi.Input[str]]:
362
+ """
363
+ Unique identifier of the resource.
364
+ """
365
+ return pulumi.get(self, "identifier")
366
+
367
+ @identifier.setter
368
+ def identifier(self, value: Optional[pulumi.Input[str]]):
369
+ pulumi.set(self, "identifier", value)
370
+
371
+ @property
372
+ @pulumi.getter(name="keyName")
373
+ def key_name(self) -> Optional[pulumi.Input[str]]:
374
+ """
375
+ The key name of the GCP KMS.
376
+ """
377
+ return pulumi.get(self, "key_name")
378
+
379
+ @key_name.setter
380
+ def key_name(self, value: Optional[pulumi.Input[str]]):
381
+ pulumi.set(self, "key_name", value)
382
+
383
+ @property
384
+ @pulumi.getter(name="keyRing")
385
+ def key_ring(self) -> Optional[pulumi.Input[str]]:
386
+ """
387
+ The key ring of the GCP KMS.
388
+ """
389
+ return pulumi.get(self, "key_ring")
390
+
391
+ @key_ring.setter
392
+ def key_ring(self, value: Optional[pulumi.Input[str]]):
393
+ pulumi.set(self, "key_ring", value)
394
+
395
+ @property
396
+ @pulumi.getter
397
+ def manual(self) -> Optional[pulumi.Input['ConnectorGcpKmsManualArgs']]:
398
+ """
399
+ Manual credential configuration.
400
+ """
401
+ return pulumi.get(self, "manual")
402
+
403
+ @manual.setter
404
+ def manual(self, value: Optional[pulumi.Input['ConnectorGcpKmsManualArgs']]):
405
+ pulumi.set(self, "manual", value)
406
+
407
+ @property
408
+ @pulumi.getter
409
+ def name(self) -> Optional[pulumi.Input[str]]:
410
+ """
411
+ Name of the resource.
412
+ """
413
+ return pulumi.get(self, "name")
414
+
415
+ @name.setter
416
+ def name(self, value: Optional[pulumi.Input[str]]):
417
+ pulumi.set(self, "name", value)
418
+
419
+ @property
420
+ @pulumi.getter(name="oidcAuthentications")
421
+ def oidc_authentications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]]]:
422
+ """
423
+ Authentication using harness oidc.
424
+ """
425
+ return pulumi.get(self, "oidc_authentications")
426
+
427
+ @oidc_authentications.setter
428
+ def oidc_authentications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConnectorGcpKmsOidcAuthenticationArgs']]]]):
429
+ pulumi.set(self, "oidc_authentications", value)
430
+
431
+ @property
432
+ @pulumi.getter(name="orgId")
433
+ def org_id(self) -> Optional[pulumi.Input[str]]:
434
+ """
435
+ Unique identifier of the organization.
436
+ """
437
+ return pulumi.get(self, "org_id")
438
+
439
+ @org_id.setter
440
+ def org_id(self, value: Optional[pulumi.Input[str]]):
441
+ pulumi.set(self, "org_id", value)
442
+
443
+ @property
444
+ @pulumi.getter(name="projectId")
445
+ def project_id(self) -> Optional[pulumi.Input[str]]:
446
+ """
447
+ Unique identifier of the project.
448
+ """
449
+ return pulumi.get(self, "project_id")
450
+
451
+ @project_id.setter
452
+ def project_id(self, value: Optional[pulumi.Input[str]]):
453
+ pulumi.set(self, "project_id", value)
454
+
455
+ @property
456
+ @pulumi.getter
457
+ def region(self) -> Optional[pulumi.Input[str]]:
458
+ """
459
+ The region of the GCP KMS.
460
+ """
461
+ return pulumi.get(self, "region")
462
+
463
+ @region.setter
464
+ def region(self, value: Optional[pulumi.Input[str]]):
465
+ pulumi.set(self, "region", value)
466
+
467
+ @property
468
+ @pulumi.getter
469
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
470
+ """
471
+ Tags to associate with the resource.
472
+ """
473
+ return pulumi.get(self, "tags")
474
+
475
+ @tags.setter
476
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
477
+ pulumi.set(self, "tags", value)
478
+
479
+
480
+ class ConnectorGcpKms(pulumi.CustomResource):
481
+ @overload
482
+ def __init__(__self__,
483
+ resource_name: str,
484
+ opts: Optional[pulumi.ResourceOptions] = None,
485
+ default: Optional[pulumi.Input[bool]] = None,
486
+ description: Optional[pulumi.Input[str]] = None,
487
+ execute_on_delegate: Optional[pulumi.Input[bool]] = None,
488
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
489
+ identifier: Optional[pulumi.Input[str]] = None,
490
+ key_name: Optional[pulumi.Input[str]] = None,
491
+ key_ring: Optional[pulumi.Input[str]] = None,
492
+ manual: Optional[pulumi.Input[Union['ConnectorGcpKmsManualArgs', 'ConnectorGcpKmsManualArgsDict']]] = None,
493
+ name: Optional[pulumi.Input[str]] = None,
494
+ oidc_authentications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConnectorGcpKmsOidcAuthenticationArgs', 'ConnectorGcpKmsOidcAuthenticationArgsDict']]]]] = None,
495
+ org_id: Optional[pulumi.Input[str]] = None,
496
+ project_id: Optional[pulumi.Input[str]] = None,
497
+ region: Optional[pulumi.Input[str]] = None,
498
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
499
+ __props__=None):
500
+ """
501
+ Resource for creating a GCP KMS connector.
502
+
503
+ ## Example Usage
504
+
505
+ ```python
506
+ import pulumi
507
+ import pulumi_harness as harness
508
+
509
+ test = harness.platform.SecretText("test",
510
+ identifier="%[1]s",
511
+ name="%[2]s",
512
+ description="test",
513
+ tags=["foo:bar"],
514
+ secret_manager_identifier="harnessSecretManager",
515
+ value_type="Reference",
516
+ value="secret")
517
+ gcp_kms_manual = harness.platform.ConnectorGcpKms("gcp_kms_manual",
518
+ identifier="identifier",
519
+ name="name",
520
+ description="test",
521
+ tags=["foo:bar"],
522
+ region="us-west1",
523
+ gcp_project_id="1234567",
524
+ key_ring="key_ring",
525
+ key_name="key_name",
526
+ manual={
527
+ "credentials": test.id.apply(lambda id: f"account.{id}"),
528
+ "delegate_selectors": ["harness-delegate"],
529
+ })
530
+ gcp_kms_oidc_platform = harness.platform.ConnectorGcpKms("gcp_kms_oidc_platform",
531
+ identifier="identifier",
532
+ name="name",
533
+ description="test",
534
+ tags=["foo:bar"],
535
+ region="us-west1",
536
+ gcp_project_id="1234567",
537
+ key_ring="key_ring",
538
+ key_name="key_name",
539
+ execute_on_delegate=False,
540
+ oidc_authentications=[{
541
+ "workload_pool_id": "harness-pool-test",
542
+ "provider_id": "harness",
543
+ "gcp_project_id": "1234567",
544
+ "service_account_email": "harness.sample@iam.gserviceaccount.com",
545
+ }])
546
+ gcp_kms_oidc_delegate = harness.platform.ConnectorGcpKms("gcp_kms_oidc_delegate",
547
+ identifier="identifier",
548
+ name="name",
549
+ description="test",
550
+ tags=["foo:bar"],
551
+ region="us-west1",
552
+ gcp_project_id="1234567",
553
+ key_ring="key_ring",
554
+ key_name="key_name",
555
+ oidc_authentications=[{
556
+ "workload_pool_id": "harness-pool-test",
557
+ "provider_id": "harness",
558
+ "gcp_project_id": "1234567",
559
+ "service_account_email": "harness.sample@iam.gserviceaccount.com",
560
+ "delegate_selectors": ["harness-delegate"],
561
+ }])
562
+ gcp_kms_oidc_delegate_default = harness.platform.ConnectorGcpKms("gcp_kms_oidc_delegate_default",
563
+ identifier="identifier",
564
+ name="name",
565
+ description="test",
566
+ tags=["foo:bar"],
567
+ region="us-west1",
568
+ gcp_project_id="1234567",
569
+ key_ring="key_ring",
570
+ key_name="key_name",
571
+ default=True,
572
+ oidc_authentications=[{
573
+ "workload_pool_id": "harness-pool-test",
574
+ "provider_id": "harness",
575
+ "gcp_project_id": "1234567",
576
+ "service_account_email": "harness.sample@iam.gserviceaccount.com",
577
+ "delegate_selectors": ["harness-delegate"],
578
+ }])
579
+ ```
580
+
581
+ ## Import
582
+
583
+ Import account level gcp connector
584
+
585
+ ```sh
586
+ $ pulumi import harness:platform/connectorGcpKms:ConnectorGcpKms example <connector_id>
587
+ ```
588
+
589
+ Import org level gcp connector
590
+
591
+ ```sh
592
+ $ pulumi import harness:platform/connectorGcpKms:ConnectorGcpKms example <ord_id>/<connector_id>
593
+ ```
594
+
595
+ Import project level gcp connector
596
+
597
+ ```sh
598
+ $ pulumi import harness:platform/connectorGcpKms:ConnectorGcpKms example <org_id>/<project_id>/<connector_id>
599
+ ```
600
+
601
+ :param str resource_name: The name of the resource.
602
+ :param pulumi.ResourceOptions opts: Options for the resource.
603
+ :param pulumi.Input[bool] default: Set this flag to set this secret manager as default secret manager.
604
+ :param pulumi.Input[str] description: Description of the resource.
605
+ :param pulumi.Input[bool] execute_on_delegate: Enable this flag to execute on Delegate.
606
+ :param pulumi.Input[str] gcp_project_id: The project ID of the GCP KMS.
607
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
608
+ :param pulumi.Input[str] key_name: The key name of the GCP KMS.
609
+ :param pulumi.Input[str] key_ring: The key ring of the GCP KMS.
610
+ :param pulumi.Input[Union['ConnectorGcpKmsManualArgs', 'ConnectorGcpKmsManualArgsDict']] manual: Manual credential configuration.
611
+ :param pulumi.Input[str] name: Name of the resource.
612
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConnectorGcpKmsOidcAuthenticationArgs', 'ConnectorGcpKmsOidcAuthenticationArgsDict']]]] oidc_authentications: Authentication using harness oidc.
613
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
614
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
615
+ :param pulumi.Input[str] region: The region of the GCP KMS.
616
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
617
+ """
618
+ ...
619
+ @overload
620
+ def __init__(__self__,
621
+ resource_name: str,
622
+ args: ConnectorGcpKmsArgs,
623
+ opts: Optional[pulumi.ResourceOptions] = None):
624
+ """
625
+ Resource for creating a GCP KMS connector.
626
+
627
+ ## Example Usage
628
+
629
+ ```python
630
+ import pulumi
631
+ import pulumi_harness as harness
632
+
633
+ test = harness.platform.SecretText("test",
634
+ identifier="%[1]s",
635
+ name="%[2]s",
636
+ description="test",
637
+ tags=["foo:bar"],
638
+ secret_manager_identifier="harnessSecretManager",
639
+ value_type="Reference",
640
+ value="secret")
641
+ gcp_kms_manual = harness.platform.ConnectorGcpKms("gcp_kms_manual",
642
+ identifier="identifier",
643
+ name="name",
644
+ description="test",
645
+ tags=["foo:bar"],
646
+ region="us-west1",
647
+ gcp_project_id="1234567",
648
+ key_ring="key_ring",
649
+ key_name="key_name",
650
+ manual={
651
+ "credentials": test.id.apply(lambda id: f"account.{id}"),
652
+ "delegate_selectors": ["harness-delegate"],
653
+ })
654
+ gcp_kms_oidc_platform = harness.platform.ConnectorGcpKms("gcp_kms_oidc_platform",
655
+ identifier="identifier",
656
+ name="name",
657
+ description="test",
658
+ tags=["foo:bar"],
659
+ region="us-west1",
660
+ gcp_project_id="1234567",
661
+ key_ring="key_ring",
662
+ key_name="key_name",
663
+ execute_on_delegate=False,
664
+ oidc_authentications=[{
665
+ "workload_pool_id": "harness-pool-test",
666
+ "provider_id": "harness",
667
+ "gcp_project_id": "1234567",
668
+ "service_account_email": "harness.sample@iam.gserviceaccount.com",
669
+ }])
670
+ gcp_kms_oidc_delegate = harness.platform.ConnectorGcpKms("gcp_kms_oidc_delegate",
671
+ identifier="identifier",
672
+ name="name",
673
+ description="test",
674
+ tags=["foo:bar"],
675
+ region="us-west1",
676
+ gcp_project_id="1234567",
677
+ key_ring="key_ring",
678
+ key_name="key_name",
679
+ oidc_authentications=[{
680
+ "workload_pool_id": "harness-pool-test",
681
+ "provider_id": "harness",
682
+ "gcp_project_id": "1234567",
683
+ "service_account_email": "harness.sample@iam.gserviceaccount.com",
684
+ "delegate_selectors": ["harness-delegate"],
685
+ }])
686
+ gcp_kms_oidc_delegate_default = harness.platform.ConnectorGcpKms("gcp_kms_oidc_delegate_default",
687
+ identifier="identifier",
688
+ name="name",
689
+ description="test",
690
+ tags=["foo:bar"],
691
+ region="us-west1",
692
+ gcp_project_id="1234567",
693
+ key_ring="key_ring",
694
+ key_name="key_name",
695
+ default=True,
696
+ oidc_authentications=[{
697
+ "workload_pool_id": "harness-pool-test",
698
+ "provider_id": "harness",
699
+ "gcp_project_id": "1234567",
700
+ "service_account_email": "harness.sample@iam.gserviceaccount.com",
701
+ "delegate_selectors": ["harness-delegate"],
702
+ }])
703
+ ```
704
+
705
+ ## Import
706
+
707
+ Import account level gcp connector
708
+
709
+ ```sh
710
+ $ pulumi import harness:platform/connectorGcpKms:ConnectorGcpKms example <connector_id>
711
+ ```
712
+
713
+ Import org level gcp connector
714
+
715
+ ```sh
716
+ $ pulumi import harness:platform/connectorGcpKms:ConnectorGcpKms example <ord_id>/<connector_id>
717
+ ```
718
+
719
+ Import project level gcp connector
720
+
721
+ ```sh
722
+ $ pulumi import harness:platform/connectorGcpKms:ConnectorGcpKms example <org_id>/<project_id>/<connector_id>
723
+ ```
724
+
725
+ :param str resource_name: The name of the resource.
726
+ :param ConnectorGcpKmsArgs args: The arguments to use to populate this resource's properties.
727
+ :param pulumi.ResourceOptions opts: Options for the resource.
728
+ """
729
+ ...
730
+ def __init__(__self__, resource_name: str, *args, **kwargs):
731
+ resource_args, opts = _utilities.get_resource_args_opts(ConnectorGcpKmsArgs, pulumi.ResourceOptions, *args, **kwargs)
732
+ if resource_args is not None:
733
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
734
+ else:
735
+ __self__._internal_init(resource_name, *args, **kwargs)
736
+
737
+ def _internal_init(__self__,
738
+ resource_name: str,
739
+ opts: Optional[pulumi.ResourceOptions] = None,
740
+ default: Optional[pulumi.Input[bool]] = None,
741
+ description: Optional[pulumi.Input[str]] = None,
742
+ execute_on_delegate: Optional[pulumi.Input[bool]] = None,
743
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
744
+ identifier: Optional[pulumi.Input[str]] = None,
745
+ key_name: Optional[pulumi.Input[str]] = None,
746
+ key_ring: Optional[pulumi.Input[str]] = None,
747
+ manual: Optional[pulumi.Input[Union['ConnectorGcpKmsManualArgs', 'ConnectorGcpKmsManualArgsDict']]] = None,
748
+ name: Optional[pulumi.Input[str]] = None,
749
+ oidc_authentications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConnectorGcpKmsOidcAuthenticationArgs', 'ConnectorGcpKmsOidcAuthenticationArgsDict']]]]] = None,
750
+ org_id: Optional[pulumi.Input[str]] = None,
751
+ project_id: Optional[pulumi.Input[str]] = None,
752
+ region: Optional[pulumi.Input[str]] = None,
753
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
754
+ __props__=None):
755
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
756
+ if not isinstance(opts, pulumi.ResourceOptions):
757
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
758
+ if opts.id is None:
759
+ if __props__ is not None:
760
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
761
+ __props__ = ConnectorGcpKmsArgs.__new__(ConnectorGcpKmsArgs)
762
+
763
+ __props__.__dict__["default"] = default
764
+ __props__.__dict__["description"] = description
765
+ __props__.__dict__["execute_on_delegate"] = execute_on_delegate
766
+ if gcp_project_id is None and not opts.urn:
767
+ raise TypeError("Missing required property 'gcp_project_id'")
768
+ __props__.__dict__["gcp_project_id"] = gcp_project_id
769
+ if identifier is None and not opts.urn:
770
+ raise TypeError("Missing required property 'identifier'")
771
+ __props__.__dict__["identifier"] = identifier
772
+ if key_name is None and not opts.urn:
773
+ raise TypeError("Missing required property 'key_name'")
774
+ __props__.__dict__["key_name"] = key_name
775
+ if key_ring is None and not opts.urn:
776
+ raise TypeError("Missing required property 'key_ring'")
777
+ __props__.__dict__["key_ring"] = key_ring
778
+ __props__.__dict__["manual"] = manual
779
+ __props__.__dict__["name"] = name
780
+ __props__.__dict__["oidc_authentications"] = oidc_authentications
781
+ __props__.__dict__["org_id"] = org_id
782
+ __props__.__dict__["project_id"] = project_id
783
+ if region is None and not opts.urn:
784
+ raise TypeError("Missing required property 'region'")
785
+ __props__.__dict__["region"] = region
786
+ __props__.__dict__["tags"] = tags
787
+ super(ConnectorGcpKms, __self__).__init__(
788
+ 'harness:platform/connectorGcpKms:ConnectorGcpKms',
789
+ resource_name,
790
+ __props__,
791
+ opts)
792
+
793
+ @staticmethod
794
+ def get(resource_name: str,
795
+ id: pulumi.Input[str],
796
+ opts: Optional[pulumi.ResourceOptions] = None,
797
+ default: Optional[pulumi.Input[bool]] = None,
798
+ description: Optional[pulumi.Input[str]] = None,
799
+ execute_on_delegate: Optional[pulumi.Input[bool]] = None,
800
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
801
+ identifier: Optional[pulumi.Input[str]] = None,
802
+ key_name: Optional[pulumi.Input[str]] = None,
803
+ key_ring: Optional[pulumi.Input[str]] = None,
804
+ manual: Optional[pulumi.Input[Union['ConnectorGcpKmsManualArgs', 'ConnectorGcpKmsManualArgsDict']]] = None,
805
+ name: Optional[pulumi.Input[str]] = None,
806
+ oidc_authentications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ConnectorGcpKmsOidcAuthenticationArgs', 'ConnectorGcpKmsOidcAuthenticationArgsDict']]]]] = None,
807
+ org_id: Optional[pulumi.Input[str]] = None,
808
+ project_id: Optional[pulumi.Input[str]] = None,
809
+ region: Optional[pulumi.Input[str]] = None,
810
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'ConnectorGcpKms':
811
+ """
812
+ Get an existing ConnectorGcpKms resource's state with the given name, id, and optional extra
813
+ properties used to qualify the lookup.
814
+
815
+ :param str resource_name: The unique name of the resulting resource.
816
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
817
+ :param pulumi.ResourceOptions opts: Options for the resource.
818
+ :param pulumi.Input[bool] default: Set this flag to set this secret manager as default secret manager.
819
+ :param pulumi.Input[str] description: Description of the resource.
820
+ :param pulumi.Input[bool] execute_on_delegate: Enable this flag to execute on Delegate.
821
+ :param pulumi.Input[str] gcp_project_id: The project ID of the GCP KMS.
822
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
823
+ :param pulumi.Input[str] key_name: The key name of the GCP KMS.
824
+ :param pulumi.Input[str] key_ring: The key ring of the GCP KMS.
825
+ :param pulumi.Input[Union['ConnectorGcpKmsManualArgs', 'ConnectorGcpKmsManualArgsDict']] manual: Manual credential configuration.
826
+ :param pulumi.Input[str] name: Name of the resource.
827
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ConnectorGcpKmsOidcAuthenticationArgs', 'ConnectorGcpKmsOidcAuthenticationArgsDict']]]] oidc_authentications: Authentication using harness oidc.
828
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
829
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
830
+ :param pulumi.Input[str] region: The region of the GCP KMS.
831
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
832
+ """
833
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
834
+
835
+ __props__ = _ConnectorGcpKmsState.__new__(_ConnectorGcpKmsState)
836
+
837
+ __props__.__dict__["default"] = default
838
+ __props__.__dict__["description"] = description
839
+ __props__.__dict__["execute_on_delegate"] = execute_on_delegate
840
+ __props__.__dict__["gcp_project_id"] = gcp_project_id
841
+ __props__.__dict__["identifier"] = identifier
842
+ __props__.__dict__["key_name"] = key_name
843
+ __props__.__dict__["key_ring"] = key_ring
844
+ __props__.__dict__["manual"] = manual
845
+ __props__.__dict__["name"] = name
846
+ __props__.__dict__["oidc_authentications"] = oidc_authentications
847
+ __props__.__dict__["org_id"] = org_id
848
+ __props__.__dict__["project_id"] = project_id
849
+ __props__.__dict__["region"] = region
850
+ __props__.__dict__["tags"] = tags
851
+ return ConnectorGcpKms(resource_name, opts=opts, __props__=__props__)
852
+
853
+ @property
854
+ @pulumi.getter
855
+ def default(self) -> pulumi.Output[Optional[bool]]:
856
+ """
857
+ Set this flag to set this secret manager as default secret manager.
858
+ """
859
+ return pulumi.get(self, "default")
860
+
861
+ @property
862
+ @pulumi.getter
863
+ def description(self) -> pulumi.Output[Optional[str]]:
864
+ """
865
+ Description of the resource.
866
+ """
867
+ return pulumi.get(self, "description")
868
+
869
+ @property
870
+ @pulumi.getter(name="executeOnDelegate")
871
+ def execute_on_delegate(self) -> pulumi.Output[Optional[bool]]:
872
+ """
873
+ Enable this flag to execute on Delegate.
874
+ """
875
+ return pulumi.get(self, "execute_on_delegate")
876
+
877
+ @property
878
+ @pulumi.getter(name="gcpProjectId")
879
+ def gcp_project_id(self) -> pulumi.Output[str]:
880
+ """
881
+ The project ID of the GCP KMS.
882
+ """
883
+ return pulumi.get(self, "gcp_project_id")
884
+
885
+ @property
886
+ @pulumi.getter
887
+ def identifier(self) -> pulumi.Output[str]:
888
+ """
889
+ Unique identifier of the resource.
890
+ """
891
+ return pulumi.get(self, "identifier")
892
+
893
+ @property
894
+ @pulumi.getter(name="keyName")
895
+ def key_name(self) -> pulumi.Output[str]:
896
+ """
897
+ The key name of the GCP KMS.
898
+ """
899
+ return pulumi.get(self, "key_name")
900
+
901
+ @property
902
+ @pulumi.getter(name="keyRing")
903
+ def key_ring(self) -> pulumi.Output[str]:
904
+ """
905
+ The key ring of the GCP KMS.
906
+ """
907
+ return pulumi.get(self, "key_ring")
908
+
909
+ @property
910
+ @pulumi.getter
911
+ def manual(self) -> pulumi.Output[Optional['outputs.ConnectorGcpKmsManual']]:
912
+ """
913
+ Manual credential configuration.
914
+ """
915
+ return pulumi.get(self, "manual")
916
+
917
+ @property
918
+ @pulumi.getter
919
+ def name(self) -> pulumi.Output[str]:
920
+ """
921
+ Name of the resource.
922
+ """
923
+ return pulumi.get(self, "name")
924
+
925
+ @property
926
+ @pulumi.getter(name="oidcAuthentications")
927
+ def oidc_authentications(self) -> pulumi.Output[Optional[Sequence['outputs.ConnectorGcpKmsOidcAuthentication']]]:
928
+ """
929
+ Authentication using harness oidc.
930
+ """
931
+ return pulumi.get(self, "oidc_authentications")
932
+
933
+ @property
934
+ @pulumi.getter(name="orgId")
935
+ def org_id(self) -> pulumi.Output[Optional[str]]:
936
+ """
937
+ Unique identifier of the organization.
938
+ """
939
+ return pulumi.get(self, "org_id")
940
+
941
+ @property
942
+ @pulumi.getter(name="projectId")
943
+ def project_id(self) -> pulumi.Output[Optional[str]]:
944
+ """
945
+ Unique identifier of the project.
946
+ """
947
+ return pulumi.get(self, "project_id")
948
+
949
+ @property
950
+ @pulumi.getter
951
+ def region(self) -> pulumi.Output[str]:
952
+ """
953
+ The region of the GCP KMS.
954
+ """
955
+ return pulumi.get(self, "region")
956
+
957
+ @property
958
+ @pulumi.getter
959
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
960
+ """
961
+ Tags to associate with the resource.
962
+ """
963
+ return pulumi.get(self, "tags")
964
+