pulumi-vault 6.0.0__py3-none-any.whl → 6.1.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.
@@ -28,7 +28,7 @@ class SecretRoleArgs:
28
28
  """
29
29
  The set of arguments for constructing a SecretRole resource.
30
30
  :param pulumi.Input[str] mount: Path where the MongoDB Atlas Secrets Engine is mounted.
31
- :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have.
31
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
32
32
  :param pulumi.Input[Sequence[pulumi.Input[str]]] cidr_blocks: Whitelist entry in CIDR notation to be added for the API key.
33
33
  :param pulumi.Input[Sequence[pulumi.Input[str]]] ip_addresses: IP address to be added to the whitelist for the API key.
34
34
  :param pulumi.Input[str] max_ttl: The maximum allowed lifetime of credentials issued using this role.
@@ -40,8 +40,8 @@ class SecretRoleArgs:
40
40
  :param pulumi.Input[str] organization_id: Unique identifier for the organization to which the target API Key belongs.
41
41
  Required if `project_id` is not set.
42
42
  :param pulumi.Input[str] project_id: Unique identifier for the project to which the target API Key belongs.
43
- Required if `organization_id is` not set.
44
- :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key.
43
+ Required if `organization_id` is not set.
44
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
45
45
  :param pulumi.Input[str] ttl: Duration in seconds after which the issued credential should expire.
46
46
  """
47
47
  pulumi.set(__self__, "mount", mount)
@@ -81,7 +81,7 @@ class SecretRoleArgs:
81
81
  @pulumi.getter
82
82
  def roles(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
83
83
  """
84
- List of roles that the API Key needs to have.
84
+ List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
85
85
  """
86
86
  return pulumi.get(self, "roles")
87
87
 
@@ -170,7 +170,7 @@ class SecretRoleArgs:
170
170
  def project_id(self) -> Optional[pulumi.Input[str]]:
171
171
  """
172
172
  Unique identifier for the project to which the target API Key belongs.
173
- Required if `organization_id is` not set.
173
+ Required if `organization_id` is not set.
174
174
  """
175
175
  return pulumi.get(self, "project_id")
176
176
 
@@ -182,7 +182,7 @@ class SecretRoleArgs:
182
182
  @pulumi.getter(name="projectRoles")
183
183
  def project_roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
184
184
  """
185
- Roles assigned when an org API key is assigned to a project API key.
185
+ Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
186
186
  """
187
187
  return pulumi.get(self, "project_roles")
188
188
 
@@ -231,9 +231,9 @@ class _SecretRoleState:
231
231
  :param pulumi.Input[str] organization_id: Unique identifier for the organization to which the target API Key belongs.
232
232
  Required if `project_id` is not set.
233
233
  :param pulumi.Input[str] project_id: Unique identifier for the project to which the target API Key belongs.
234
- Required if `organization_id is` not set.
235
- :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key.
236
- :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have.
234
+ Required if `organization_id` is not set.
235
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
236
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
237
237
  :param pulumi.Input[str] ttl: Duration in seconds after which the issued credential should expire.
238
238
  """
239
239
  if cidr_blocks is not None:
@@ -352,7 +352,7 @@ class _SecretRoleState:
352
352
  def project_id(self) -> Optional[pulumi.Input[str]]:
353
353
  """
354
354
  Unique identifier for the project to which the target API Key belongs.
355
- Required if `organization_id is` not set.
355
+ Required if `organization_id` is not set.
356
356
  """
357
357
  return pulumi.get(self, "project_id")
358
358
 
@@ -364,7 +364,7 @@ class _SecretRoleState:
364
364
  @pulumi.getter(name="projectRoles")
365
365
  def project_roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
366
366
  """
367
- Roles assigned when an org API key is assigned to a project API key.
367
+ Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
368
368
  """
369
369
  return pulumi.get(self, "project_roles")
370
370
 
@@ -376,7 +376,7 @@ class _SecretRoleState:
376
376
  @pulumi.getter
377
377
  def roles(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
378
378
  """
379
- List of roles that the API Key needs to have.
379
+ List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
380
380
  """
381
381
  return pulumi.get(self, "roles")
382
382
 
@@ -427,17 +427,17 @@ class SecretRole(pulumi.CustomResource):
427
427
  type="mongodbatlas",
428
428
  description="MongoDB Atlas secret engine mount")
429
429
  config = vault.mongodbatlas.SecretBackend("config",
430
- mount="vault_mount.mongo.path",
430
+ mount=mongo.path,
431
431
  private_key="privateKey",
432
432
  public_key="publicKey")
433
433
  role = vault.mongodbatlas.SecretRole("role",
434
434
  mount=mongo.path,
435
435
  organization_id="7cf5a45a9ccf6400e60981b7",
436
436
  project_id="5cf5a45a9ccf6400e60981b6",
437
- roles="ORG_READ_ONLY",
437
+ roles=["ORG_READ_ONLY"],
438
438
  ip_addresses="192.168.1.5, 192.168.1.6",
439
439
  cidr_blocks="192.168.1.3/35",
440
- project_roles="GROUP_READ_ONLY",
440
+ project_roles=["GROUP_READ_ONLY"],
441
441
  ttl="60",
442
442
  max_ttl="120")
443
443
  ```
@@ -466,9 +466,9 @@ class SecretRole(pulumi.CustomResource):
466
466
  :param pulumi.Input[str] organization_id: Unique identifier for the organization to which the target API Key belongs.
467
467
  Required if `project_id` is not set.
468
468
  :param pulumi.Input[str] project_id: Unique identifier for the project to which the target API Key belongs.
469
- Required if `organization_id is` not set.
470
- :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key.
471
- :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have.
469
+ Required if `organization_id` is not set.
470
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
471
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
472
472
  :param pulumi.Input[str] ttl: Duration in seconds after which the issued credential should expire.
473
473
  """
474
474
  ...
@@ -490,17 +490,17 @@ class SecretRole(pulumi.CustomResource):
490
490
  type="mongodbatlas",
491
491
  description="MongoDB Atlas secret engine mount")
492
492
  config = vault.mongodbatlas.SecretBackend("config",
493
- mount="vault_mount.mongo.path",
493
+ mount=mongo.path,
494
494
  private_key="privateKey",
495
495
  public_key="publicKey")
496
496
  role = vault.mongodbatlas.SecretRole("role",
497
497
  mount=mongo.path,
498
498
  organization_id="7cf5a45a9ccf6400e60981b7",
499
499
  project_id="5cf5a45a9ccf6400e60981b6",
500
- roles="ORG_READ_ONLY",
500
+ roles=["ORG_READ_ONLY"],
501
501
  ip_addresses="192.168.1.5, 192.168.1.6",
502
502
  cidr_blocks="192.168.1.3/35",
503
- project_roles="GROUP_READ_ONLY",
503
+ project_roles=["GROUP_READ_ONLY"],
504
504
  ttl="60",
505
505
  max_ttl="120")
506
506
  ```
@@ -605,9 +605,9 @@ class SecretRole(pulumi.CustomResource):
605
605
  :param pulumi.Input[str] organization_id: Unique identifier for the organization to which the target API Key belongs.
606
606
  Required if `project_id` is not set.
607
607
  :param pulumi.Input[str] project_id: Unique identifier for the project to which the target API Key belongs.
608
- Required if `organization_id is` not set.
609
- :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key.
610
- :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have.
608
+ Required if `organization_id` is not set.
609
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] project_roles: Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
610
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] roles: List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
611
611
  :param pulumi.Input[str] ttl: Duration in seconds after which the issued credential should expire.
612
612
  """
613
613
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -692,7 +692,7 @@ class SecretRole(pulumi.CustomResource):
692
692
  def project_id(self) -> pulumi.Output[Optional[str]]:
693
693
  """
694
694
  Unique identifier for the project to which the target API Key belongs.
695
- Required if `organization_id is` not set.
695
+ Required if `organization_id` is not set.
696
696
  """
697
697
  return pulumi.get(self, "project_id")
698
698
 
@@ -700,7 +700,7 @@ class SecretRole(pulumi.CustomResource):
700
700
  @pulumi.getter(name="projectRoles")
701
701
  def project_roles(self) -> pulumi.Output[Optional[Sequence[str]]]:
702
702
  """
703
- Roles assigned when an org API key is assigned to a project API key.
703
+ Roles assigned when an org API key is assigned to a project API key. Possible values are `GROUP_CLUSTER_MANAGER`, `GROUP_DATA_ACCESS_ADMIN`, `GROUP_DATA_ACCESS_READ_ONLY`, `GROUP_DATA_ACCESS_READ_WRITE`, `GROUP_OWNER` and `GROUP_READ_ONLY`.
704
704
  """
705
705
  return pulumi.get(self, "project_roles")
706
706
 
@@ -708,7 +708,7 @@ class SecretRole(pulumi.CustomResource):
708
708
  @pulumi.getter
709
709
  def roles(self) -> pulumi.Output[Sequence[str]]:
710
710
  """
711
- List of roles that the API Key needs to have.
711
+ List of roles that the API Key needs to have. Possible values are `ORG_OWNER`, `ORG_MEMBER`, `ORG_GROUP_CREATOR`, `ORG_BILLING_ADMIN` and `ORG_READ_ONLY`.
712
712
  """
713
713
  return pulumi.get(self, "roles")
714
714
 
@@ -13,3 +13,5 @@ from .sync_gcp_destination import *
13
13
  from .sync_gh_destination import *
14
14
  from .sync_github_apps import *
15
15
  from .sync_vercel_destination import *
16
+ from ._inputs import *
17
+ from . import outputs
@@ -0,0 +1,80 @@
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__ = [
13
+ 'SyncAssociationMetadataArgs',
14
+ ]
15
+
16
+ @pulumi.input_type
17
+ class SyncAssociationMetadataArgs:
18
+ def __init__(__self__, *,
19
+ sub_key: Optional[pulumi.Input[str]] = None,
20
+ sync_status: Optional[pulumi.Input[str]] = None,
21
+ updated_at: Optional[pulumi.Input[str]] = None):
22
+ """
23
+ :param pulumi.Input[str] sub_key: Subkey of the associated secret.
24
+ :param pulumi.Input[str] sync_status: A map of sync statuses for each subkey of the associated secret
25
+ (for ex. `{kv_624bea/aws-token/dev: "SYNCED", kv_624bea/aws-token/prod: "SYNCED"}`).
26
+ :param pulumi.Input[str] updated_at: A map of duration strings specifying when each subkey of the associated
27
+ secret was last updated.
28
+ (for ex.
29
+ `{kv_624bea/aws-token/dev: "2024-03-21T12:42:02.558533-07:00",
30
+ kv_624bea/aws-token/prod: "2024-03-21T12:42:02.558533-07:00"}`).
31
+ """
32
+ if sub_key is not None:
33
+ pulumi.set(__self__, "sub_key", sub_key)
34
+ if sync_status is not None:
35
+ pulumi.set(__self__, "sync_status", sync_status)
36
+ if updated_at is not None:
37
+ pulumi.set(__self__, "updated_at", updated_at)
38
+
39
+ @property
40
+ @pulumi.getter(name="subKey")
41
+ def sub_key(self) -> Optional[pulumi.Input[str]]:
42
+ """
43
+ Subkey of the associated secret.
44
+ """
45
+ return pulumi.get(self, "sub_key")
46
+
47
+ @sub_key.setter
48
+ def sub_key(self, value: Optional[pulumi.Input[str]]):
49
+ pulumi.set(self, "sub_key", value)
50
+
51
+ @property
52
+ @pulumi.getter(name="syncStatus")
53
+ def sync_status(self) -> Optional[pulumi.Input[str]]:
54
+ """
55
+ A map of sync statuses for each subkey of the associated secret
56
+ (for ex. `{kv_624bea/aws-token/dev: "SYNCED", kv_624bea/aws-token/prod: "SYNCED"}`).
57
+ """
58
+ return pulumi.get(self, "sync_status")
59
+
60
+ @sync_status.setter
61
+ def sync_status(self, value: Optional[pulumi.Input[str]]):
62
+ pulumi.set(self, "sync_status", value)
63
+
64
+ @property
65
+ @pulumi.getter(name="updatedAt")
66
+ def updated_at(self) -> Optional[pulumi.Input[str]]:
67
+ """
68
+ A map of duration strings specifying when each subkey of the associated
69
+ secret was last updated.
70
+ (for ex.
71
+ `{kv_624bea/aws-token/dev: "2024-03-21T12:42:02.558533-07:00",
72
+ kv_624bea/aws-token/prod: "2024-03-21T12:42:02.558533-07:00"}`).
73
+ """
74
+ return pulumi.get(self, "updated_at")
75
+
76
+ @updated_at.setter
77
+ def updated_at(self, value: Optional[pulumi.Input[str]]):
78
+ pulumi.set(self, "updated_at", value)
79
+
80
+
@@ -0,0 +1,89 @@
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__ = [
13
+ 'SyncAssociationMetadata',
14
+ ]
15
+
16
+ @pulumi.output_type
17
+ class SyncAssociationMetadata(dict):
18
+ @staticmethod
19
+ def __key_warning(key: str):
20
+ suggest = None
21
+ if key == "subKey":
22
+ suggest = "sub_key"
23
+ elif key == "syncStatus":
24
+ suggest = "sync_status"
25
+ elif key == "updatedAt":
26
+ suggest = "updated_at"
27
+
28
+ if suggest:
29
+ pulumi.log.warn(f"Key '{key}' not found in SyncAssociationMetadata. Access the value via the '{suggest}' property getter instead.")
30
+
31
+ def __getitem__(self, key: str) -> Any:
32
+ SyncAssociationMetadata.__key_warning(key)
33
+ return super().__getitem__(key)
34
+
35
+ def get(self, key: str, default = None) -> Any:
36
+ SyncAssociationMetadata.__key_warning(key)
37
+ return super().get(key, default)
38
+
39
+ def __init__(__self__, *,
40
+ sub_key: Optional[str] = None,
41
+ sync_status: Optional[str] = None,
42
+ updated_at: Optional[str] = None):
43
+ """
44
+ :param str sub_key: Subkey of the associated secret.
45
+ :param str sync_status: A map of sync statuses for each subkey of the associated secret
46
+ (for ex. `{kv_624bea/aws-token/dev: "SYNCED", kv_624bea/aws-token/prod: "SYNCED"}`).
47
+ :param str updated_at: A map of duration strings specifying when each subkey of the associated
48
+ secret was last updated.
49
+ (for ex.
50
+ `{kv_624bea/aws-token/dev: "2024-03-21T12:42:02.558533-07:00",
51
+ kv_624bea/aws-token/prod: "2024-03-21T12:42:02.558533-07:00"}`).
52
+ """
53
+ if sub_key is not None:
54
+ pulumi.set(__self__, "sub_key", sub_key)
55
+ if sync_status is not None:
56
+ pulumi.set(__self__, "sync_status", sync_status)
57
+ if updated_at is not None:
58
+ pulumi.set(__self__, "updated_at", updated_at)
59
+
60
+ @property
61
+ @pulumi.getter(name="subKey")
62
+ def sub_key(self) -> Optional[str]:
63
+ """
64
+ Subkey of the associated secret.
65
+ """
66
+ return pulumi.get(self, "sub_key")
67
+
68
+ @property
69
+ @pulumi.getter(name="syncStatus")
70
+ def sync_status(self) -> Optional[str]:
71
+ """
72
+ A map of sync statuses for each subkey of the associated secret
73
+ (for ex. `{kv_624bea/aws-token/dev: "SYNCED", kv_624bea/aws-token/prod: "SYNCED"}`).
74
+ """
75
+ return pulumi.get(self, "sync_status")
76
+
77
+ @property
78
+ @pulumi.getter(name="updatedAt")
79
+ def updated_at(self) -> Optional[str]:
80
+ """
81
+ A map of duration strings specifying when each subkey of the associated
82
+ secret was last updated.
83
+ (for ex.
84
+ `{kv_624bea/aws-token/dev: "2024-03-21T12:42:02.558533-07:00",
85
+ kv_624bea/aws-token/prod: "2024-03-21T12:42:02.558533-07:00"}`).
86
+ """
87
+ return pulumi.get(self, "updated_at")
88
+
89
+
@@ -8,6 +8,8 @@ import pulumi
8
8
  import pulumi.runtime
9
9
  from typing import Any, Mapping, Optional, Sequence, Union, overload
10
10
  from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
11
13
 
12
14
  __all__ = ['SyncAssociationArgs', 'SyncAssociation']
13
15
 
@@ -103,25 +105,25 @@ class SyncAssociationArgs:
103
105
  @pulumi.input_type
104
106
  class _SyncAssociationState:
105
107
  def __init__(__self__, *,
108
+ metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['SyncAssociationMetadataArgs']]]] = None,
106
109
  mount: Optional[pulumi.Input[str]] = None,
107
110
  name: Optional[pulumi.Input[str]] = None,
108
111
  namespace: Optional[pulumi.Input[str]] = None,
109
112
  secret_name: Optional[pulumi.Input[str]] = None,
110
- sync_status: Optional[pulumi.Input[str]] = None,
111
- type: Optional[pulumi.Input[str]] = None,
112
- updated_at: Optional[pulumi.Input[str]] = None):
113
+ type: Optional[pulumi.Input[str]] = None):
113
114
  """
114
115
  Input properties used for looking up and filtering SyncAssociation resources.
116
+ :param pulumi.Input[Sequence[pulumi.Input['SyncAssociationMetadataArgs']]] metadatas: Metadata for each subkey of the associated secret.
115
117
  :param pulumi.Input[str] mount: Specifies the mount where the secret is located.
116
118
  :param pulumi.Input[str] name: Specifies the name of the destination.
117
119
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
118
120
  The value should not contain leading or trailing forward slashes.
119
121
  The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
120
122
  :param pulumi.Input[str] secret_name: Specifies the name of the secret to synchronize.
121
- :param pulumi.Input[str] sync_status: Specifies the status of the association (for eg. `SYNCED`).
122
123
  :param pulumi.Input[str] type: Specifies the destination type.
123
- :param pulumi.Input[str] updated_at: Duration string specifying when the secret was last updated.
124
124
  """
125
+ if metadatas is not None:
126
+ pulumi.set(__self__, "metadatas", metadatas)
125
127
  if mount is not None:
126
128
  pulumi.set(__self__, "mount", mount)
127
129
  if name is not None:
@@ -130,12 +132,20 @@ class _SyncAssociationState:
130
132
  pulumi.set(__self__, "namespace", namespace)
131
133
  if secret_name is not None:
132
134
  pulumi.set(__self__, "secret_name", secret_name)
133
- if sync_status is not None:
134
- pulumi.set(__self__, "sync_status", sync_status)
135
135
  if type is not None:
136
136
  pulumi.set(__self__, "type", type)
137
- if updated_at is not None:
138
- pulumi.set(__self__, "updated_at", updated_at)
137
+
138
+ @property
139
+ @pulumi.getter
140
+ def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SyncAssociationMetadataArgs']]]]:
141
+ """
142
+ Metadata for each subkey of the associated secret.
143
+ """
144
+ return pulumi.get(self, "metadatas")
145
+
146
+ @metadatas.setter
147
+ def metadatas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SyncAssociationMetadataArgs']]]]):
148
+ pulumi.set(self, "metadatas", value)
139
149
 
140
150
  @property
141
151
  @pulumi.getter
@@ -187,18 +197,6 @@ class _SyncAssociationState:
187
197
  def secret_name(self, value: Optional[pulumi.Input[str]]):
188
198
  pulumi.set(self, "secret_name", value)
189
199
 
190
- @property
191
- @pulumi.getter(name="syncStatus")
192
- def sync_status(self) -> Optional[pulumi.Input[str]]:
193
- """
194
- Specifies the status of the association (for eg. `SYNCED`).
195
- """
196
- return pulumi.get(self, "sync_status")
197
-
198
- @sync_status.setter
199
- def sync_status(self, value: Optional[pulumi.Input[str]]):
200
- pulumi.set(self, "sync_status", value)
201
-
202
200
  @property
203
201
  @pulumi.getter
204
202
  def type(self) -> Optional[pulumi.Input[str]]:
@@ -211,18 +209,6 @@ class _SyncAssociationState:
211
209
  def type(self, value: Optional[pulumi.Input[str]]):
212
210
  pulumi.set(self, "type", value)
213
211
 
214
- @property
215
- @pulumi.getter(name="updatedAt")
216
- def updated_at(self) -> Optional[pulumi.Input[str]]:
217
- """
218
- Duration string specifying when the secret was last updated.
219
- """
220
- return pulumi.get(self, "updated_at")
221
-
222
- @updated_at.setter
223
- def updated_at(self, value: Optional[pulumi.Input[str]]):
224
- pulumi.set(self, "updated_at", value)
225
-
226
212
 
227
213
  class SyncAssociation(pulumi.CustomResource):
228
214
  @overload
@@ -359,8 +345,7 @@ class SyncAssociation(pulumi.CustomResource):
359
345
  if type is None and not opts.urn:
360
346
  raise TypeError("Missing required property 'type'")
361
347
  __props__.__dict__["type"] = type
362
- __props__.__dict__["sync_status"] = None
363
- __props__.__dict__["updated_at"] = None
348
+ __props__.__dict__["metadatas"] = None
364
349
  super(SyncAssociation, __self__).__init__(
365
350
  'vault:secrets/syncAssociation:SyncAssociation',
366
351
  resource_name,
@@ -371,13 +356,12 @@ class SyncAssociation(pulumi.CustomResource):
371
356
  def get(resource_name: str,
372
357
  id: pulumi.Input[str],
373
358
  opts: Optional[pulumi.ResourceOptions] = None,
359
+ metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SyncAssociationMetadataArgs']]]]] = None,
374
360
  mount: Optional[pulumi.Input[str]] = None,
375
361
  name: Optional[pulumi.Input[str]] = None,
376
362
  namespace: Optional[pulumi.Input[str]] = None,
377
363
  secret_name: Optional[pulumi.Input[str]] = None,
378
- sync_status: Optional[pulumi.Input[str]] = None,
379
- type: Optional[pulumi.Input[str]] = None,
380
- updated_at: Optional[pulumi.Input[str]] = None) -> 'SyncAssociation':
364
+ type: Optional[pulumi.Input[str]] = None) -> 'SyncAssociation':
381
365
  """
382
366
  Get an existing SyncAssociation resource's state with the given name, id, and optional extra
383
367
  properties used to qualify the lookup.
@@ -385,29 +369,35 @@ class SyncAssociation(pulumi.CustomResource):
385
369
  :param str resource_name: The unique name of the resulting resource.
386
370
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
387
371
  :param pulumi.ResourceOptions opts: Options for the resource.
372
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SyncAssociationMetadataArgs']]]] metadatas: Metadata for each subkey of the associated secret.
388
373
  :param pulumi.Input[str] mount: Specifies the mount where the secret is located.
389
374
  :param pulumi.Input[str] name: Specifies the name of the destination.
390
375
  :param pulumi.Input[str] namespace: The namespace to provision the resource in.
391
376
  The value should not contain leading or trailing forward slashes.
392
377
  The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
393
378
  :param pulumi.Input[str] secret_name: Specifies the name of the secret to synchronize.
394
- :param pulumi.Input[str] sync_status: Specifies the status of the association (for eg. `SYNCED`).
395
379
  :param pulumi.Input[str] type: Specifies the destination type.
396
- :param pulumi.Input[str] updated_at: Duration string specifying when the secret was last updated.
397
380
  """
398
381
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
399
382
 
400
383
  __props__ = _SyncAssociationState.__new__(_SyncAssociationState)
401
384
 
385
+ __props__.__dict__["metadatas"] = metadatas
402
386
  __props__.__dict__["mount"] = mount
403
387
  __props__.__dict__["name"] = name
404
388
  __props__.__dict__["namespace"] = namespace
405
389
  __props__.__dict__["secret_name"] = secret_name
406
- __props__.__dict__["sync_status"] = sync_status
407
390
  __props__.__dict__["type"] = type
408
- __props__.__dict__["updated_at"] = updated_at
409
391
  return SyncAssociation(resource_name, opts=opts, __props__=__props__)
410
392
 
393
+ @property
394
+ @pulumi.getter
395
+ def metadatas(self) -> pulumi.Output[Sequence['outputs.SyncAssociationMetadata']]:
396
+ """
397
+ Metadata for each subkey of the associated secret.
398
+ """
399
+ return pulumi.get(self, "metadatas")
400
+
411
401
  @property
412
402
  @pulumi.getter
413
403
  def mount(self) -> pulumi.Output[str]:
@@ -442,14 +432,6 @@ class SyncAssociation(pulumi.CustomResource):
442
432
  """
443
433
  return pulumi.get(self, "secret_name")
444
434
 
445
- @property
446
- @pulumi.getter(name="syncStatus")
447
- def sync_status(self) -> pulumi.Output[str]:
448
- """
449
- Specifies the status of the association (for eg. `SYNCED`).
450
- """
451
- return pulumi.get(self, "sync_status")
452
-
453
435
  @property
454
436
  @pulumi.getter
455
437
  def type(self) -> pulumi.Output[str]:
@@ -458,11 +440,3 @@ class SyncAssociation(pulumi.CustomResource):
458
440
  """
459
441
  return pulumi.get(self, "type")
460
442
 
461
- @property
462
- @pulumi.getter(name="updatedAt")
463
- def updated_at(self) -> pulumi.Output[str]:
464
- """
465
- Duration string specifying when the secret was last updated.
466
- """
467
- return pulumi.get(self, "updated_at")
468
-