pulumi-vault 5.19.0a1705621752__py3-none-any.whl → 5.20.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. pulumi_vault/__init__.py +59 -0
  2. pulumi_vault/_inputs.py +380 -0
  3. pulumi_vault/_utilities.py +2 -2
  4. pulumi_vault/aws/secret_backend.py +188 -0
  5. pulumi_vault/aws/secret_backend_static_role.py +2 -2
  6. pulumi_vault/azure/backend.py +7 -21
  7. pulumi_vault/config/__init__.pyi +0 -3
  8. pulumi_vault/config/outputs.py +380 -0
  9. pulumi_vault/config/vars.py +0 -3
  10. pulumi_vault/consul/secret_backend.py +7 -35
  11. pulumi_vault/database/_inputs.py +176 -0
  12. pulumi_vault/database/outputs.py +168 -0
  13. pulumi_vault/get_raft_autopilot_state.py +0 -12
  14. pulumi_vault/identity/group_alias.py +6 -6
  15. pulumi_vault/kubernetes/secret_backend_role.py +8 -4
  16. pulumi_vault/kv/_inputs.py +12 -0
  17. pulumi_vault/kv/outputs.py +12 -0
  18. pulumi_vault/ldap/secret_backend_dynamic_role.py +2 -2
  19. pulumi_vault/ldap/secret_backend_static_role.py +2 -2
  20. pulumi_vault/managed/_inputs.py +12 -0
  21. pulumi_vault/managed/keys.py +20 -0
  22. pulumi_vault/managed/outputs.py +12 -0
  23. pulumi_vault/mongodbatlas/secret_role.py +2 -2
  24. pulumi_vault/namespace.py +46 -14
  25. pulumi_vault/pkisecret/secret_backend_config_issuers.py +0 -6
  26. pulumi_vault/pkisecret/secret_backend_issuer.py +0 -10
  27. pulumi_vault/pkisecret/secret_backend_role.py +7 -7
  28. pulumi_vault/rabbitmq/_inputs.py +36 -0
  29. pulumi_vault/rabbitmq/outputs.py +36 -0
  30. pulumi_vault/saml/auth_backend_role.py +7 -14
  31. pulumi_vault/secrets/__init__.py +14 -0
  32. pulumi_vault/secrets/sync_association.py +464 -0
  33. pulumi_vault/secrets/sync_aws_destination.py +564 -0
  34. pulumi_vault/secrets/sync_azure_destination.py +674 -0
  35. pulumi_vault/secrets/sync_config.py +297 -0
  36. pulumi_vault/secrets/sync_gcp_destination.py +438 -0
  37. pulumi_vault/secrets/sync_gh_destination.py +511 -0
  38. pulumi_vault/secrets/sync_vercel_destination.py +541 -0
  39. pulumi_vault/ssh/secret_backend_role.py +7 -14
  40. {pulumi_vault-5.19.0a1705621752.dist-info → pulumi_vault-5.20.0.dist-info}/METADATA +2 -2
  41. {pulumi_vault-5.19.0a1705621752.dist-info → pulumi_vault-5.20.0.dist-info}/RECORD +43 -35
  42. {pulumi_vault-5.19.0a1705621752.dist-info → pulumi_vault-5.20.0.dist-info}/WHEEL +0 -0
  43. {pulumi_vault-5.19.0a1705621752.dist-info → pulumi_vault-5.20.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,511 @@
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 pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = ['SyncGhDestinationArgs', 'SyncGhDestination']
13
+
14
+ @pulumi.input_type
15
+ class SyncGhDestinationArgs:
16
+ def __init__(__self__, *,
17
+ access_token: Optional[pulumi.Input[str]] = None,
18
+ name: Optional[pulumi.Input[str]] = None,
19
+ namespace: Optional[pulumi.Input[str]] = None,
20
+ repository_name: Optional[pulumi.Input[str]] = None,
21
+ repository_owner: Optional[pulumi.Input[str]] = None,
22
+ secret_name_template: Optional[pulumi.Input[str]] = None):
23
+ """
24
+ The set of arguments for constructing a SyncGhDestination resource.
25
+ :param pulumi.Input[str] access_token: Fine-grained or personal access token.
26
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
27
+ variable.
28
+ :param pulumi.Input[str] name: Unique name of the GitHub destination.
29
+ :param pulumi.Input[str] namespace: The namespace to provision the resource in.
30
+ The value should not contain leading or trailing forward slashes.
31
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
32
+ :param pulumi.Input[str] repository_name: Name of the repository.
33
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
34
+ variable.
35
+ :param pulumi.Input[str] repository_owner: GitHub organization or username that owns the repository.
36
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
37
+ variable.
38
+ :param pulumi.Input[str] secret_name_template: Template describing how to generate external secret names.
39
+ Supports a subset of the Go Template syntax.
40
+ """
41
+ if access_token is not None:
42
+ pulumi.set(__self__, "access_token", access_token)
43
+ if name is not None:
44
+ pulumi.set(__self__, "name", name)
45
+ if namespace is not None:
46
+ pulumi.set(__self__, "namespace", namespace)
47
+ if repository_name is not None:
48
+ pulumi.set(__self__, "repository_name", repository_name)
49
+ if repository_owner is not None:
50
+ pulumi.set(__self__, "repository_owner", repository_owner)
51
+ if secret_name_template is not None:
52
+ pulumi.set(__self__, "secret_name_template", secret_name_template)
53
+
54
+ @property
55
+ @pulumi.getter(name="accessToken")
56
+ def access_token(self) -> Optional[pulumi.Input[str]]:
57
+ """
58
+ Fine-grained or personal access token.
59
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
60
+ variable.
61
+ """
62
+ return pulumi.get(self, "access_token")
63
+
64
+ @access_token.setter
65
+ def access_token(self, value: Optional[pulumi.Input[str]]):
66
+ pulumi.set(self, "access_token", value)
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def name(self) -> Optional[pulumi.Input[str]]:
71
+ """
72
+ Unique name of the GitHub destination.
73
+ """
74
+ return pulumi.get(self, "name")
75
+
76
+ @name.setter
77
+ def name(self, value: Optional[pulumi.Input[str]]):
78
+ pulumi.set(self, "name", value)
79
+
80
+ @property
81
+ @pulumi.getter
82
+ def namespace(self) -> Optional[pulumi.Input[str]]:
83
+ """
84
+ The namespace to provision the resource in.
85
+ The value should not contain leading or trailing forward slashes.
86
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
87
+ """
88
+ return pulumi.get(self, "namespace")
89
+
90
+ @namespace.setter
91
+ def namespace(self, value: Optional[pulumi.Input[str]]):
92
+ pulumi.set(self, "namespace", value)
93
+
94
+ @property
95
+ @pulumi.getter(name="repositoryName")
96
+ def repository_name(self) -> Optional[pulumi.Input[str]]:
97
+ """
98
+ Name of the repository.
99
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
100
+ variable.
101
+ """
102
+ return pulumi.get(self, "repository_name")
103
+
104
+ @repository_name.setter
105
+ def repository_name(self, value: Optional[pulumi.Input[str]]):
106
+ pulumi.set(self, "repository_name", value)
107
+
108
+ @property
109
+ @pulumi.getter(name="repositoryOwner")
110
+ def repository_owner(self) -> Optional[pulumi.Input[str]]:
111
+ """
112
+ GitHub organization or username that owns the repository.
113
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
114
+ variable.
115
+ """
116
+ return pulumi.get(self, "repository_owner")
117
+
118
+ @repository_owner.setter
119
+ def repository_owner(self, value: Optional[pulumi.Input[str]]):
120
+ pulumi.set(self, "repository_owner", value)
121
+
122
+ @property
123
+ @pulumi.getter(name="secretNameTemplate")
124
+ def secret_name_template(self) -> Optional[pulumi.Input[str]]:
125
+ """
126
+ Template describing how to generate external secret names.
127
+ Supports a subset of the Go Template syntax.
128
+ """
129
+ return pulumi.get(self, "secret_name_template")
130
+
131
+ @secret_name_template.setter
132
+ def secret_name_template(self, value: Optional[pulumi.Input[str]]):
133
+ pulumi.set(self, "secret_name_template", value)
134
+
135
+
136
+ @pulumi.input_type
137
+ class _SyncGhDestinationState:
138
+ def __init__(__self__, *,
139
+ access_token: Optional[pulumi.Input[str]] = None,
140
+ name: Optional[pulumi.Input[str]] = None,
141
+ namespace: Optional[pulumi.Input[str]] = None,
142
+ repository_name: Optional[pulumi.Input[str]] = None,
143
+ repository_owner: Optional[pulumi.Input[str]] = None,
144
+ secret_name_template: Optional[pulumi.Input[str]] = None,
145
+ type: Optional[pulumi.Input[str]] = None):
146
+ """
147
+ Input properties used for looking up and filtering SyncGhDestination resources.
148
+ :param pulumi.Input[str] access_token: Fine-grained or personal access token.
149
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
150
+ variable.
151
+ :param pulumi.Input[str] name: Unique name of the GitHub destination.
152
+ :param pulumi.Input[str] namespace: The namespace to provision the resource in.
153
+ The value should not contain leading or trailing forward slashes.
154
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
155
+ :param pulumi.Input[str] repository_name: Name of the repository.
156
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
157
+ variable.
158
+ :param pulumi.Input[str] repository_owner: GitHub organization or username that owns the repository.
159
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
160
+ variable.
161
+ :param pulumi.Input[str] secret_name_template: Template describing how to generate external secret names.
162
+ Supports a subset of the Go Template syntax.
163
+ :param pulumi.Input[str] type: The type of the secrets destination (`gh`).
164
+ """
165
+ if access_token is not None:
166
+ pulumi.set(__self__, "access_token", access_token)
167
+ if name is not None:
168
+ pulumi.set(__self__, "name", name)
169
+ if namespace is not None:
170
+ pulumi.set(__self__, "namespace", namespace)
171
+ if repository_name is not None:
172
+ pulumi.set(__self__, "repository_name", repository_name)
173
+ if repository_owner is not None:
174
+ pulumi.set(__self__, "repository_owner", repository_owner)
175
+ if secret_name_template is not None:
176
+ pulumi.set(__self__, "secret_name_template", secret_name_template)
177
+ if type is not None:
178
+ pulumi.set(__self__, "type", type)
179
+
180
+ @property
181
+ @pulumi.getter(name="accessToken")
182
+ def access_token(self) -> Optional[pulumi.Input[str]]:
183
+ """
184
+ Fine-grained or personal access token.
185
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
186
+ variable.
187
+ """
188
+ return pulumi.get(self, "access_token")
189
+
190
+ @access_token.setter
191
+ def access_token(self, value: Optional[pulumi.Input[str]]):
192
+ pulumi.set(self, "access_token", value)
193
+
194
+ @property
195
+ @pulumi.getter
196
+ def name(self) -> Optional[pulumi.Input[str]]:
197
+ """
198
+ Unique name of the GitHub destination.
199
+ """
200
+ return pulumi.get(self, "name")
201
+
202
+ @name.setter
203
+ def name(self, value: Optional[pulumi.Input[str]]):
204
+ pulumi.set(self, "name", value)
205
+
206
+ @property
207
+ @pulumi.getter
208
+ def namespace(self) -> Optional[pulumi.Input[str]]:
209
+ """
210
+ The namespace to provision the resource in.
211
+ The value should not contain leading or trailing forward slashes.
212
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
213
+ """
214
+ return pulumi.get(self, "namespace")
215
+
216
+ @namespace.setter
217
+ def namespace(self, value: Optional[pulumi.Input[str]]):
218
+ pulumi.set(self, "namespace", value)
219
+
220
+ @property
221
+ @pulumi.getter(name="repositoryName")
222
+ def repository_name(self) -> Optional[pulumi.Input[str]]:
223
+ """
224
+ Name of the repository.
225
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
226
+ variable.
227
+ """
228
+ return pulumi.get(self, "repository_name")
229
+
230
+ @repository_name.setter
231
+ def repository_name(self, value: Optional[pulumi.Input[str]]):
232
+ pulumi.set(self, "repository_name", value)
233
+
234
+ @property
235
+ @pulumi.getter(name="repositoryOwner")
236
+ def repository_owner(self) -> Optional[pulumi.Input[str]]:
237
+ """
238
+ GitHub organization or username that owns the repository.
239
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
240
+ variable.
241
+ """
242
+ return pulumi.get(self, "repository_owner")
243
+
244
+ @repository_owner.setter
245
+ def repository_owner(self, value: Optional[pulumi.Input[str]]):
246
+ pulumi.set(self, "repository_owner", value)
247
+
248
+ @property
249
+ @pulumi.getter(name="secretNameTemplate")
250
+ def secret_name_template(self) -> Optional[pulumi.Input[str]]:
251
+ """
252
+ Template describing how to generate external secret names.
253
+ Supports a subset of the Go Template syntax.
254
+ """
255
+ return pulumi.get(self, "secret_name_template")
256
+
257
+ @secret_name_template.setter
258
+ def secret_name_template(self, value: Optional[pulumi.Input[str]]):
259
+ pulumi.set(self, "secret_name_template", value)
260
+
261
+ @property
262
+ @pulumi.getter
263
+ def type(self) -> Optional[pulumi.Input[str]]:
264
+ """
265
+ The type of the secrets destination (`gh`).
266
+ """
267
+ return pulumi.get(self, "type")
268
+
269
+ @type.setter
270
+ def type(self, value: Optional[pulumi.Input[str]]):
271
+ pulumi.set(self, "type", value)
272
+
273
+
274
+ class SyncGhDestination(pulumi.CustomResource):
275
+ @overload
276
+ def __init__(__self__,
277
+ resource_name: str,
278
+ opts: Optional[pulumi.ResourceOptions] = None,
279
+ access_token: Optional[pulumi.Input[str]] = None,
280
+ name: Optional[pulumi.Input[str]] = None,
281
+ namespace: Optional[pulumi.Input[str]] = None,
282
+ repository_name: Optional[pulumi.Input[str]] = None,
283
+ repository_owner: Optional[pulumi.Input[str]] = None,
284
+ secret_name_template: Optional[pulumi.Input[str]] = None,
285
+ __props__=None):
286
+ """
287
+ ## Example Usage
288
+
289
+ ```python
290
+ import pulumi
291
+ import pulumi_vault as vault
292
+
293
+ gh = vault.secrets.SyncGhDestination("gh",
294
+ access_token=var["access_token"],
295
+ repository_owner=var["repo_owner"],
296
+ repository_name="repo-name-example",
297
+ secret_name_template="vault_{{ .MountAccessor | lowercase }}_{{ .SecretPath | lowercase }}")
298
+ ```
299
+
300
+ ## Import
301
+
302
+ GitHub Secrets sync destinations can be imported using the `name`, e.g.
303
+
304
+ ```sh
305
+ $ pulumi import vault:secrets/syncGhDestination:SyncGhDestination gh gh-dest
306
+ ```
307
+
308
+ :param str resource_name: The name of the resource.
309
+ :param pulumi.ResourceOptions opts: Options for the resource.
310
+ :param pulumi.Input[str] access_token: Fine-grained or personal access token.
311
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
312
+ variable.
313
+ :param pulumi.Input[str] name: Unique name of the GitHub destination.
314
+ :param pulumi.Input[str] namespace: The namespace to provision the resource in.
315
+ The value should not contain leading or trailing forward slashes.
316
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
317
+ :param pulumi.Input[str] repository_name: Name of the repository.
318
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
319
+ variable.
320
+ :param pulumi.Input[str] repository_owner: GitHub organization or username that owns the repository.
321
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
322
+ variable.
323
+ :param pulumi.Input[str] secret_name_template: Template describing how to generate external secret names.
324
+ Supports a subset of the Go Template syntax.
325
+ """
326
+ ...
327
+ @overload
328
+ def __init__(__self__,
329
+ resource_name: str,
330
+ args: Optional[SyncGhDestinationArgs] = None,
331
+ opts: Optional[pulumi.ResourceOptions] = None):
332
+ """
333
+ ## Example Usage
334
+
335
+ ```python
336
+ import pulumi
337
+ import pulumi_vault as vault
338
+
339
+ gh = vault.secrets.SyncGhDestination("gh",
340
+ access_token=var["access_token"],
341
+ repository_owner=var["repo_owner"],
342
+ repository_name="repo-name-example",
343
+ secret_name_template="vault_{{ .MountAccessor | lowercase }}_{{ .SecretPath | lowercase }}")
344
+ ```
345
+
346
+ ## Import
347
+
348
+ GitHub Secrets sync destinations can be imported using the `name`, e.g.
349
+
350
+ ```sh
351
+ $ pulumi import vault:secrets/syncGhDestination:SyncGhDestination gh gh-dest
352
+ ```
353
+
354
+ :param str resource_name: The name of the resource.
355
+ :param SyncGhDestinationArgs args: The arguments to use to populate this resource's properties.
356
+ :param pulumi.ResourceOptions opts: Options for the resource.
357
+ """
358
+ ...
359
+ def __init__(__self__, resource_name: str, *args, **kwargs):
360
+ resource_args, opts = _utilities.get_resource_args_opts(SyncGhDestinationArgs, pulumi.ResourceOptions, *args, **kwargs)
361
+ if resource_args is not None:
362
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
363
+ else:
364
+ __self__._internal_init(resource_name, *args, **kwargs)
365
+
366
+ def _internal_init(__self__,
367
+ resource_name: str,
368
+ opts: Optional[pulumi.ResourceOptions] = None,
369
+ access_token: Optional[pulumi.Input[str]] = None,
370
+ name: Optional[pulumi.Input[str]] = None,
371
+ namespace: Optional[pulumi.Input[str]] = None,
372
+ repository_name: Optional[pulumi.Input[str]] = None,
373
+ repository_owner: Optional[pulumi.Input[str]] = None,
374
+ secret_name_template: Optional[pulumi.Input[str]] = None,
375
+ __props__=None):
376
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
377
+ if not isinstance(opts, pulumi.ResourceOptions):
378
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
379
+ if opts.id is None:
380
+ if __props__ is not None:
381
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
382
+ __props__ = SyncGhDestinationArgs.__new__(SyncGhDestinationArgs)
383
+
384
+ __props__.__dict__["access_token"] = None if access_token is None else pulumi.Output.secret(access_token)
385
+ __props__.__dict__["name"] = name
386
+ __props__.__dict__["namespace"] = namespace
387
+ __props__.__dict__["repository_name"] = repository_name
388
+ __props__.__dict__["repository_owner"] = repository_owner
389
+ __props__.__dict__["secret_name_template"] = secret_name_template
390
+ __props__.__dict__["type"] = None
391
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["accessToken"])
392
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
393
+ super(SyncGhDestination, __self__).__init__(
394
+ 'vault:secrets/syncGhDestination:SyncGhDestination',
395
+ resource_name,
396
+ __props__,
397
+ opts)
398
+
399
+ @staticmethod
400
+ def get(resource_name: str,
401
+ id: pulumi.Input[str],
402
+ opts: Optional[pulumi.ResourceOptions] = None,
403
+ access_token: Optional[pulumi.Input[str]] = None,
404
+ name: Optional[pulumi.Input[str]] = None,
405
+ namespace: Optional[pulumi.Input[str]] = None,
406
+ repository_name: Optional[pulumi.Input[str]] = None,
407
+ repository_owner: Optional[pulumi.Input[str]] = None,
408
+ secret_name_template: Optional[pulumi.Input[str]] = None,
409
+ type: Optional[pulumi.Input[str]] = None) -> 'SyncGhDestination':
410
+ """
411
+ Get an existing SyncGhDestination resource's state with the given name, id, and optional extra
412
+ properties used to qualify the lookup.
413
+
414
+ :param str resource_name: The unique name of the resulting resource.
415
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
416
+ :param pulumi.ResourceOptions opts: Options for the resource.
417
+ :param pulumi.Input[str] access_token: Fine-grained or personal access token.
418
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
419
+ variable.
420
+ :param pulumi.Input[str] name: Unique name of the GitHub destination.
421
+ :param pulumi.Input[str] namespace: The namespace to provision the resource in.
422
+ The value should not contain leading or trailing forward slashes.
423
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
424
+ :param pulumi.Input[str] repository_name: Name of the repository.
425
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
426
+ variable.
427
+ :param pulumi.Input[str] repository_owner: GitHub organization or username that owns the repository.
428
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
429
+ variable.
430
+ :param pulumi.Input[str] secret_name_template: Template describing how to generate external secret names.
431
+ Supports a subset of the Go Template syntax.
432
+ :param pulumi.Input[str] type: The type of the secrets destination (`gh`).
433
+ """
434
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
435
+
436
+ __props__ = _SyncGhDestinationState.__new__(_SyncGhDestinationState)
437
+
438
+ __props__.__dict__["access_token"] = access_token
439
+ __props__.__dict__["name"] = name
440
+ __props__.__dict__["namespace"] = namespace
441
+ __props__.__dict__["repository_name"] = repository_name
442
+ __props__.__dict__["repository_owner"] = repository_owner
443
+ __props__.__dict__["secret_name_template"] = secret_name_template
444
+ __props__.__dict__["type"] = type
445
+ return SyncGhDestination(resource_name, opts=opts, __props__=__props__)
446
+
447
+ @property
448
+ @pulumi.getter(name="accessToken")
449
+ def access_token(self) -> pulumi.Output[Optional[str]]:
450
+ """
451
+ Fine-grained or personal access token.
452
+ Can be omitted and directly provided to Vault using the `GITHUB_ACCESS_TOKEN` environment
453
+ variable.
454
+ """
455
+ return pulumi.get(self, "access_token")
456
+
457
+ @property
458
+ @pulumi.getter
459
+ def name(self) -> pulumi.Output[str]:
460
+ """
461
+ Unique name of the GitHub destination.
462
+ """
463
+ return pulumi.get(self, "name")
464
+
465
+ @property
466
+ @pulumi.getter
467
+ def namespace(self) -> pulumi.Output[Optional[str]]:
468
+ """
469
+ The namespace to provision the resource in.
470
+ The value should not contain leading or trailing forward slashes.
471
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace).
472
+ """
473
+ return pulumi.get(self, "namespace")
474
+
475
+ @property
476
+ @pulumi.getter(name="repositoryName")
477
+ def repository_name(self) -> pulumi.Output[Optional[str]]:
478
+ """
479
+ Name of the repository.
480
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_NAME` environment
481
+ variable.
482
+ """
483
+ return pulumi.get(self, "repository_name")
484
+
485
+ @property
486
+ @pulumi.getter(name="repositoryOwner")
487
+ def repository_owner(self) -> pulumi.Output[Optional[str]]:
488
+ """
489
+ GitHub organization or username that owns the repository.
490
+ Can be omitted and directly provided to Vault using the `GITHUB_REPOSITORY_OWNER` environment
491
+ variable.
492
+ """
493
+ return pulumi.get(self, "repository_owner")
494
+
495
+ @property
496
+ @pulumi.getter(name="secretNameTemplate")
497
+ def secret_name_template(self) -> pulumi.Output[str]:
498
+ """
499
+ Template describing how to generate external secret names.
500
+ Supports a subset of the Go Template syntax.
501
+ """
502
+ return pulumi.get(self, "secret_name_template")
503
+
504
+ @property
505
+ @pulumi.getter
506
+ def type(self) -> pulumi.Output[str]:
507
+ """
508
+ The type of the secrets destination (`gh`).
509
+ """
510
+ return pulumi.get(self, "type")
511
+