pulumi-vault 5.21.0a1710160723__py3-none-any.whl → 6.5.0a1736850018__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 (229) hide show
  1. pulumi_vault/__init__.py +52 -0
  2. pulumi_vault/_inputs.py +560 -0
  3. pulumi_vault/_utilities.py +41 -5
  4. pulumi_vault/ad/get_access_credentials.py +22 -7
  5. pulumi_vault/ad/secret_backend.py +14 -144
  6. pulumi_vault/ad/secret_library.py +14 -11
  7. pulumi_vault/ad/secret_role.py +12 -11
  8. pulumi_vault/alicloud/auth_backend_role.py +74 -192
  9. pulumi_vault/approle/auth_backend_login.py +12 -11
  10. pulumi_vault/approle/auth_backend_role.py +75 -193
  11. pulumi_vault/approle/auth_backend_role_secret_id.py +106 -11
  12. pulumi_vault/approle/get_auth_backend_role_id.py +18 -9
  13. pulumi_vault/audit.py +24 -27
  14. pulumi_vault/audit_request_header.py +11 -6
  15. pulumi_vault/auth_backend.py +64 -12
  16. pulumi_vault/aws/auth_backend_cert.py +12 -7
  17. pulumi_vault/aws/auth_backend_client.py +265 -24
  18. pulumi_vault/aws/auth_backend_config_identity.py +12 -11
  19. pulumi_vault/aws/auth_backend_identity_whitelist.py +18 -17
  20. pulumi_vault/aws/auth_backend_login.py +19 -22
  21. pulumi_vault/aws/auth_backend_role.py +75 -193
  22. pulumi_vault/aws/auth_backend_role_tag.py +12 -7
  23. pulumi_vault/aws/auth_backend_roletag_blacklist.py +18 -17
  24. pulumi_vault/aws/auth_backend_sts_role.py +12 -11
  25. pulumi_vault/aws/get_access_credentials.py +34 -7
  26. pulumi_vault/aws/get_static_access_credentials.py +19 -5
  27. pulumi_vault/aws/secret_backend.py +75 -7
  28. pulumi_vault/aws/secret_backend_role.py +183 -11
  29. pulumi_vault/aws/secret_backend_static_role.py +14 -11
  30. pulumi_vault/azure/_inputs.py +24 -0
  31. pulumi_vault/azure/auth_backend_config.py +151 -17
  32. pulumi_vault/azure/auth_backend_role.py +75 -193
  33. pulumi_vault/azure/backend.py +223 -29
  34. pulumi_vault/azure/backend_role.py +42 -41
  35. pulumi_vault/azure/get_access_credentials.py +39 -11
  36. pulumi_vault/azure/outputs.py +5 -0
  37. pulumi_vault/cert_auth_backend_role.py +87 -271
  38. pulumi_vault/config/__init__.pyi +5 -0
  39. pulumi_vault/config/_inputs.py +73 -0
  40. pulumi_vault/config/outputs.py +35 -0
  41. pulumi_vault/config/ui_custom_message.py +529 -0
  42. pulumi_vault/config/vars.py +5 -0
  43. pulumi_vault/consul/secret_backend.py +22 -25
  44. pulumi_vault/consul/secret_backend_role.py +14 -80
  45. pulumi_vault/database/_inputs.py +2770 -881
  46. pulumi_vault/database/outputs.py +721 -838
  47. pulumi_vault/database/secret_backend_connection.py +117 -114
  48. pulumi_vault/database/secret_backend_role.py +29 -24
  49. pulumi_vault/database/secret_backend_static_role.py +85 -15
  50. pulumi_vault/database/secrets_mount.py +425 -138
  51. pulumi_vault/egp_policy.py +16 -15
  52. pulumi_vault/gcp/_inputs.py +111 -0
  53. pulumi_vault/gcp/auth_backend.py +248 -35
  54. pulumi_vault/gcp/auth_backend_role.py +75 -271
  55. pulumi_vault/gcp/get_auth_backend_role.py +43 -9
  56. pulumi_vault/gcp/outputs.py +5 -0
  57. pulumi_vault/gcp/secret_backend.py +287 -16
  58. pulumi_vault/gcp/secret_impersonated_account.py +74 -17
  59. pulumi_vault/gcp/secret_roleset.py +29 -26
  60. pulumi_vault/gcp/secret_static_account.py +37 -34
  61. pulumi_vault/generic/endpoint.py +22 -21
  62. pulumi_vault/generic/get_secret.py +68 -12
  63. pulumi_vault/generic/secret.py +19 -14
  64. pulumi_vault/get_auth_backend.py +24 -11
  65. pulumi_vault/get_auth_backends.py +33 -11
  66. pulumi_vault/get_namespace.py +226 -0
  67. pulumi_vault/get_namespaces.py +153 -0
  68. pulumi_vault/get_nomad_access_token.py +31 -15
  69. pulumi_vault/get_policy_document.py +34 -23
  70. pulumi_vault/get_raft_autopilot_state.py +29 -14
  71. pulumi_vault/github/_inputs.py +55 -0
  72. pulumi_vault/github/auth_backend.py +17 -16
  73. pulumi_vault/github/outputs.py +5 -0
  74. pulumi_vault/github/team.py +14 -13
  75. pulumi_vault/github/user.py +14 -13
  76. pulumi_vault/identity/entity.py +18 -15
  77. pulumi_vault/identity/entity_alias.py +18 -15
  78. pulumi_vault/identity/entity_policies.py +24 -19
  79. pulumi_vault/identity/get_entity.py +40 -14
  80. pulumi_vault/identity/get_group.py +45 -13
  81. pulumi_vault/identity/get_oidc_client_creds.py +21 -11
  82. pulumi_vault/identity/get_oidc_openid_config.py +39 -13
  83. pulumi_vault/identity/get_oidc_public_keys.py +29 -14
  84. pulumi_vault/identity/group.py +50 -49
  85. pulumi_vault/identity/group_alias.py +14 -11
  86. pulumi_vault/identity/group_member_entity_ids.py +24 -74
  87. pulumi_vault/identity/group_member_group_ids.py +36 -27
  88. pulumi_vault/identity/group_policies.py +16 -15
  89. pulumi_vault/identity/mfa_duo.py +9 -8
  90. pulumi_vault/identity/mfa_login_enforcement.py +13 -8
  91. pulumi_vault/identity/mfa_okta.py +9 -8
  92. pulumi_vault/identity/mfa_pingid.py +5 -4
  93. pulumi_vault/identity/mfa_totp.py +5 -4
  94. pulumi_vault/identity/oidc.py +12 -11
  95. pulumi_vault/identity/oidc_assignment.py +22 -13
  96. pulumi_vault/identity/oidc_client.py +34 -25
  97. pulumi_vault/identity/oidc_key.py +28 -19
  98. pulumi_vault/identity/oidc_key_allowed_client_id.py +28 -19
  99. pulumi_vault/identity/oidc_provider.py +34 -23
  100. pulumi_vault/identity/oidc_role.py +40 -27
  101. pulumi_vault/identity/oidc_scope.py +18 -15
  102. pulumi_vault/identity/outputs.py +8 -3
  103. pulumi_vault/jwt/_inputs.py +55 -0
  104. pulumi_vault/jwt/auth_backend.py +39 -46
  105. pulumi_vault/jwt/auth_backend_role.py +131 -260
  106. pulumi_vault/jwt/outputs.py +5 -0
  107. pulumi_vault/kmip/secret_backend.py +22 -21
  108. pulumi_vault/kmip/secret_role.py +12 -11
  109. pulumi_vault/kmip/secret_scope.py +12 -11
  110. pulumi_vault/kubernetes/auth_backend_config.py +55 -7
  111. pulumi_vault/kubernetes/auth_backend_role.py +68 -179
  112. pulumi_vault/kubernetes/get_auth_backend_config.py +60 -8
  113. pulumi_vault/kubernetes/get_auth_backend_role.py +40 -5
  114. pulumi_vault/kubernetes/get_service_account_token.py +39 -15
  115. pulumi_vault/kubernetes/secret_backend.py +314 -29
  116. pulumi_vault/kubernetes/secret_backend_role.py +135 -56
  117. pulumi_vault/kv/_inputs.py +36 -4
  118. pulumi_vault/kv/get_secret.py +23 -12
  119. pulumi_vault/kv/get_secret_subkeys_v2.py +31 -14
  120. pulumi_vault/kv/get_secret_v2.py +89 -9
  121. pulumi_vault/kv/get_secrets_list.py +22 -15
  122. pulumi_vault/kv/get_secrets_list_v2.py +35 -19
  123. pulumi_vault/kv/outputs.py +8 -3
  124. pulumi_vault/kv/secret.py +19 -18
  125. pulumi_vault/kv/secret_backend_v2.py +12 -11
  126. pulumi_vault/kv/secret_v2.py +55 -52
  127. pulumi_vault/ldap/auth_backend.py +125 -168
  128. pulumi_vault/ldap/auth_backend_group.py +12 -11
  129. pulumi_vault/ldap/auth_backend_user.py +12 -11
  130. pulumi_vault/ldap/get_dynamic_credentials.py +23 -5
  131. pulumi_vault/ldap/get_static_credentials.py +24 -5
  132. pulumi_vault/ldap/secret_backend.py +352 -84
  133. pulumi_vault/ldap/secret_backend_dynamic_role.py +12 -11
  134. pulumi_vault/ldap/secret_backend_library_set.py +14 -11
  135. pulumi_vault/ldap/secret_backend_static_role.py +67 -12
  136. pulumi_vault/managed/_inputs.py +289 -132
  137. pulumi_vault/managed/keys.py +27 -43
  138. pulumi_vault/managed/outputs.py +89 -132
  139. pulumi_vault/mfa_duo.py +16 -13
  140. pulumi_vault/mfa_okta.py +16 -13
  141. pulumi_vault/mfa_pingid.py +16 -13
  142. pulumi_vault/mfa_totp.py +22 -19
  143. pulumi_vault/mongodbatlas/secret_backend.py +18 -17
  144. pulumi_vault/mongodbatlas/secret_role.py +41 -38
  145. pulumi_vault/mount.py +389 -65
  146. pulumi_vault/namespace.py +26 -21
  147. pulumi_vault/nomad_secret_backend.py +16 -15
  148. pulumi_vault/nomad_secret_role.py +12 -11
  149. pulumi_vault/okta/_inputs.py +47 -8
  150. pulumi_vault/okta/auth_backend.py +483 -41
  151. pulumi_vault/okta/auth_backend_group.py +12 -11
  152. pulumi_vault/okta/auth_backend_user.py +12 -11
  153. pulumi_vault/okta/outputs.py +13 -8
  154. pulumi_vault/outputs.py +5 -0
  155. pulumi_vault/password_policy.py +18 -15
  156. pulumi_vault/pkisecret/__init__.py +3 -0
  157. pulumi_vault/pkisecret/_inputs.py +81 -0
  158. pulumi_vault/pkisecret/backend_config_cluster.py +369 -0
  159. pulumi_vault/pkisecret/backend_config_est.py +619 -0
  160. pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
  161. pulumi_vault/pkisecret/get_backend_issuer.py +63 -7
  162. pulumi_vault/pkisecret/get_backend_issuers.py +21 -12
  163. pulumi_vault/pkisecret/get_backend_key.py +24 -13
  164. pulumi_vault/pkisecret/get_backend_keys.py +21 -12
  165. pulumi_vault/pkisecret/outputs.py +69 -0
  166. pulumi_vault/pkisecret/secret_backend_cert.py +18 -15
  167. pulumi_vault/pkisecret/secret_backend_config_ca.py +16 -15
  168. pulumi_vault/pkisecret/secret_backend_config_issuers.py +12 -11
  169. pulumi_vault/pkisecret/secret_backend_config_urls.py +59 -11
  170. pulumi_vault/pkisecret/secret_backend_crl_config.py +14 -13
  171. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +16 -15
  172. pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +22 -21
  173. pulumi_vault/pkisecret/secret_backend_issuer.py +12 -11
  174. pulumi_vault/pkisecret/secret_backend_key.py +12 -7
  175. pulumi_vault/pkisecret/secret_backend_role.py +19 -16
  176. pulumi_vault/pkisecret/secret_backend_root_cert.py +16 -52
  177. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +18 -62
  178. pulumi_vault/pkisecret/secret_backend_sign.py +18 -60
  179. pulumi_vault/plugin.py +595 -0
  180. pulumi_vault/plugin_pinned_version.py +298 -0
  181. pulumi_vault/policy.py +12 -7
  182. pulumi_vault/provider.py +48 -53
  183. pulumi_vault/pulumi-plugin.json +2 -1
  184. pulumi_vault/quota_lease_count.py +58 -8
  185. pulumi_vault/quota_rate_limit.py +54 -4
  186. pulumi_vault/rabbitmq/_inputs.py +61 -0
  187. pulumi_vault/rabbitmq/outputs.py +5 -0
  188. pulumi_vault/rabbitmq/secret_backend.py +16 -15
  189. pulumi_vault/rabbitmq/secret_backend_role.py +52 -49
  190. pulumi_vault/raft_autopilot.py +12 -11
  191. pulumi_vault/raft_snapshot_agent_config.py +121 -311
  192. pulumi_vault/rgp_policy.py +14 -13
  193. pulumi_vault/saml/auth_backend.py +20 -19
  194. pulumi_vault/saml/auth_backend_role.py +90 -199
  195. pulumi_vault/secrets/__init__.py +3 -0
  196. pulumi_vault/secrets/_inputs.py +110 -0
  197. pulumi_vault/secrets/outputs.py +94 -0
  198. pulumi_vault/secrets/sync_association.py +56 -75
  199. pulumi_vault/secrets/sync_aws_destination.py +240 -29
  200. pulumi_vault/secrets/sync_azure_destination.py +90 -33
  201. pulumi_vault/secrets/sync_config.py +7 -6
  202. pulumi_vault/secrets/sync_gcp_destination.py +156 -27
  203. pulumi_vault/secrets/sync_gh_destination.py +187 -15
  204. pulumi_vault/secrets/sync_github_apps.py +375 -0
  205. pulumi_vault/secrets/sync_vercel_destination.py +72 -15
  206. pulumi_vault/ssh/_inputs.py +28 -32
  207. pulumi_vault/ssh/outputs.py +11 -32
  208. pulumi_vault/ssh/secret_backend_ca.py +106 -11
  209. pulumi_vault/ssh/secret_backend_role.py +83 -120
  210. pulumi_vault/terraformcloud/secret_backend.py +5 -56
  211. pulumi_vault/terraformcloud/secret_creds.py +14 -24
  212. pulumi_vault/terraformcloud/secret_role.py +14 -76
  213. pulumi_vault/token.py +26 -25
  214. pulumi_vault/tokenauth/auth_backend_role.py +76 -201
  215. pulumi_vault/transform/alphabet.py +16 -13
  216. pulumi_vault/transform/get_decode.py +45 -21
  217. pulumi_vault/transform/get_encode.py +45 -21
  218. pulumi_vault/transform/role.py +16 -13
  219. pulumi_vault/transform/template.py +30 -25
  220. pulumi_vault/transform/transformation.py +12 -7
  221. pulumi_vault/transit/get_decrypt.py +26 -25
  222. pulumi_vault/transit/get_encrypt.py +24 -19
  223. pulumi_vault/transit/secret_backend_key.py +25 -97
  224. pulumi_vault/transit/secret_cache_config.py +12 -11
  225. {pulumi_vault-5.21.0a1710160723.dist-info → pulumi_vault-6.5.0a1736850018.dist-info}/METADATA +8 -7
  226. pulumi_vault-6.5.0a1736850018.dist-info/RECORD +256 -0
  227. {pulumi_vault-5.21.0a1710160723.dist-info → pulumi_vault-6.5.0a1736850018.dist-info}/WHEEL +1 -1
  228. pulumi_vault-5.21.0a1710160723.dist-info/RECORD +0 -244
  229. {pulumi_vault-5.21.0a1710160723.dist-info → pulumi_vault-6.5.0a1736850018.dist-info}/top_level.txt +0 -0
pulumi_vault/plugin.py ADDED
@@ -0,0 +1,595 @@
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__ = ['PluginArgs', 'Plugin']
18
+
19
+ @pulumi.input_type
20
+ class PluginArgs:
21
+ def __init__(__self__, *,
22
+ command: pulumi.Input[str],
23
+ sha256: pulumi.Input[str],
24
+ type: pulumi.Input[str],
25
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
+ envs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
27
+ name: Optional[pulumi.Input[str]] = None,
28
+ oci_image: Optional[pulumi.Input[str]] = None,
29
+ runtime: Optional[pulumi.Input[str]] = None,
30
+ version: Optional[pulumi.Input[str]] = None):
31
+ """
32
+ The set of arguments for constructing a Plugin resource.
33
+ :param pulumi.Input[str] command: Command to execute the plugin, relative to the server's configured `plugin_directory`.
34
+ :param pulumi.Input[str] sha256: SHA256 sum of the plugin binary.
35
+ :param pulumi.Input[str] type: Type of plugin; one of "auth", "secret", or "database".
36
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] args: List of additional args to pass to the plugin.
37
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] envs: List of additional environment variables to run the plugin with in KEY=VALUE form.
38
+ :param pulumi.Input[str] name: Name of the plugin.
39
+ :param pulumi.Input[str] oci_image: Specifies OCI image to run. If specified, setting
40
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
41
+ environment variables (append-only) respectively.
42
+ :param pulumi.Input[str] runtime: Vault plugin runtime to use if `oci_image` is specified.
43
+ :param pulumi.Input[str] version: Semantic version of the plugin.
44
+ """
45
+ pulumi.set(__self__, "command", command)
46
+ pulumi.set(__self__, "sha256", sha256)
47
+ pulumi.set(__self__, "type", type)
48
+ if args is not None:
49
+ pulumi.set(__self__, "args", args)
50
+ if envs is not None:
51
+ pulumi.set(__self__, "envs", envs)
52
+ if name is not None:
53
+ pulumi.set(__self__, "name", name)
54
+ if oci_image is not None:
55
+ pulumi.set(__self__, "oci_image", oci_image)
56
+ if runtime is not None:
57
+ pulumi.set(__self__, "runtime", runtime)
58
+ if version is not None:
59
+ pulumi.set(__self__, "version", version)
60
+
61
+ @property
62
+ @pulumi.getter
63
+ def command(self) -> pulumi.Input[str]:
64
+ """
65
+ Command to execute the plugin, relative to the server's configured `plugin_directory`.
66
+ """
67
+ return pulumi.get(self, "command")
68
+
69
+ @command.setter
70
+ def command(self, value: pulumi.Input[str]):
71
+ pulumi.set(self, "command", value)
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def sha256(self) -> pulumi.Input[str]:
76
+ """
77
+ SHA256 sum of the plugin binary.
78
+ """
79
+ return pulumi.get(self, "sha256")
80
+
81
+ @sha256.setter
82
+ def sha256(self, value: pulumi.Input[str]):
83
+ pulumi.set(self, "sha256", value)
84
+
85
+ @property
86
+ @pulumi.getter
87
+ def type(self) -> pulumi.Input[str]:
88
+ """
89
+ Type of plugin; one of "auth", "secret", or "database".
90
+ """
91
+ return pulumi.get(self, "type")
92
+
93
+ @type.setter
94
+ def type(self, value: pulumi.Input[str]):
95
+ pulumi.set(self, "type", value)
96
+
97
+ @property
98
+ @pulumi.getter
99
+ def args(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
100
+ """
101
+ List of additional args to pass to the plugin.
102
+ """
103
+ return pulumi.get(self, "args")
104
+
105
+ @args.setter
106
+ def args(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
107
+ pulumi.set(self, "args", value)
108
+
109
+ @property
110
+ @pulumi.getter
111
+ def envs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
112
+ """
113
+ List of additional environment variables to run the plugin with in KEY=VALUE form.
114
+ """
115
+ return pulumi.get(self, "envs")
116
+
117
+ @envs.setter
118
+ def envs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
119
+ pulumi.set(self, "envs", value)
120
+
121
+ @property
122
+ @pulumi.getter
123
+ def name(self) -> Optional[pulumi.Input[str]]:
124
+ """
125
+ Name of the plugin.
126
+ """
127
+ return pulumi.get(self, "name")
128
+
129
+ @name.setter
130
+ def name(self, value: Optional[pulumi.Input[str]]):
131
+ pulumi.set(self, "name", value)
132
+
133
+ @property
134
+ @pulumi.getter(name="ociImage")
135
+ def oci_image(self) -> Optional[pulumi.Input[str]]:
136
+ """
137
+ Specifies OCI image to run. If specified, setting
138
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
139
+ environment variables (append-only) respectively.
140
+ """
141
+ return pulumi.get(self, "oci_image")
142
+
143
+ @oci_image.setter
144
+ def oci_image(self, value: Optional[pulumi.Input[str]]):
145
+ pulumi.set(self, "oci_image", value)
146
+
147
+ @property
148
+ @pulumi.getter
149
+ def runtime(self) -> Optional[pulumi.Input[str]]:
150
+ """
151
+ Vault plugin runtime to use if `oci_image` is specified.
152
+ """
153
+ return pulumi.get(self, "runtime")
154
+
155
+ @runtime.setter
156
+ def runtime(self, value: Optional[pulumi.Input[str]]):
157
+ pulumi.set(self, "runtime", value)
158
+
159
+ @property
160
+ @pulumi.getter
161
+ def version(self) -> Optional[pulumi.Input[str]]:
162
+ """
163
+ Semantic version of the plugin.
164
+ """
165
+ return pulumi.get(self, "version")
166
+
167
+ @version.setter
168
+ def version(self, value: Optional[pulumi.Input[str]]):
169
+ pulumi.set(self, "version", value)
170
+
171
+
172
+ @pulumi.input_type
173
+ class _PluginState:
174
+ def __init__(__self__, *,
175
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
176
+ command: Optional[pulumi.Input[str]] = None,
177
+ envs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
178
+ name: Optional[pulumi.Input[str]] = None,
179
+ oci_image: Optional[pulumi.Input[str]] = None,
180
+ runtime: Optional[pulumi.Input[str]] = None,
181
+ sha256: Optional[pulumi.Input[str]] = None,
182
+ type: Optional[pulumi.Input[str]] = None,
183
+ version: Optional[pulumi.Input[str]] = None):
184
+ """
185
+ Input properties used for looking up and filtering Plugin resources.
186
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] args: List of additional args to pass to the plugin.
187
+ :param pulumi.Input[str] command: Command to execute the plugin, relative to the server's configured `plugin_directory`.
188
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] envs: List of additional environment variables to run the plugin with in KEY=VALUE form.
189
+ :param pulumi.Input[str] name: Name of the plugin.
190
+ :param pulumi.Input[str] oci_image: Specifies OCI image to run. If specified, setting
191
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
192
+ environment variables (append-only) respectively.
193
+ :param pulumi.Input[str] runtime: Vault plugin runtime to use if `oci_image` is specified.
194
+ :param pulumi.Input[str] sha256: SHA256 sum of the plugin binary.
195
+ :param pulumi.Input[str] type: Type of plugin; one of "auth", "secret", or "database".
196
+ :param pulumi.Input[str] version: Semantic version of the plugin.
197
+ """
198
+ if args is not None:
199
+ pulumi.set(__self__, "args", args)
200
+ if command is not None:
201
+ pulumi.set(__self__, "command", command)
202
+ if envs is not None:
203
+ pulumi.set(__self__, "envs", envs)
204
+ if name is not None:
205
+ pulumi.set(__self__, "name", name)
206
+ if oci_image is not None:
207
+ pulumi.set(__self__, "oci_image", oci_image)
208
+ if runtime is not None:
209
+ pulumi.set(__self__, "runtime", runtime)
210
+ if sha256 is not None:
211
+ pulumi.set(__self__, "sha256", sha256)
212
+ if type is not None:
213
+ pulumi.set(__self__, "type", type)
214
+ if version is not None:
215
+ pulumi.set(__self__, "version", version)
216
+
217
+ @property
218
+ @pulumi.getter
219
+ def args(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
220
+ """
221
+ List of additional args to pass to the plugin.
222
+ """
223
+ return pulumi.get(self, "args")
224
+
225
+ @args.setter
226
+ def args(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
227
+ pulumi.set(self, "args", value)
228
+
229
+ @property
230
+ @pulumi.getter
231
+ def command(self) -> Optional[pulumi.Input[str]]:
232
+ """
233
+ Command to execute the plugin, relative to the server's configured `plugin_directory`.
234
+ """
235
+ return pulumi.get(self, "command")
236
+
237
+ @command.setter
238
+ def command(self, value: Optional[pulumi.Input[str]]):
239
+ pulumi.set(self, "command", value)
240
+
241
+ @property
242
+ @pulumi.getter
243
+ def envs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
244
+ """
245
+ List of additional environment variables to run the plugin with in KEY=VALUE form.
246
+ """
247
+ return pulumi.get(self, "envs")
248
+
249
+ @envs.setter
250
+ def envs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
251
+ pulumi.set(self, "envs", value)
252
+
253
+ @property
254
+ @pulumi.getter
255
+ def name(self) -> Optional[pulumi.Input[str]]:
256
+ """
257
+ Name of the plugin.
258
+ """
259
+ return pulumi.get(self, "name")
260
+
261
+ @name.setter
262
+ def name(self, value: Optional[pulumi.Input[str]]):
263
+ pulumi.set(self, "name", value)
264
+
265
+ @property
266
+ @pulumi.getter(name="ociImage")
267
+ def oci_image(self) -> Optional[pulumi.Input[str]]:
268
+ """
269
+ Specifies OCI image to run. If specified, setting
270
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
271
+ environment variables (append-only) respectively.
272
+ """
273
+ return pulumi.get(self, "oci_image")
274
+
275
+ @oci_image.setter
276
+ def oci_image(self, value: Optional[pulumi.Input[str]]):
277
+ pulumi.set(self, "oci_image", value)
278
+
279
+ @property
280
+ @pulumi.getter
281
+ def runtime(self) -> Optional[pulumi.Input[str]]:
282
+ """
283
+ Vault plugin runtime to use if `oci_image` is specified.
284
+ """
285
+ return pulumi.get(self, "runtime")
286
+
287
+ @runtime.setter
288
+ def runtime(self, value: Optional[pulumi.Input[str]]):
289
+ pulumi.set(self, "runtime", value)
290
+
291
+ @property
292
+ @pulumi.getter
293
+ def sha256(self) -> Optional[pulumi.Input[str]]:
294
+ """
295
+ SHA256 sum of the plugin binary.
296
+ """
297
+ return pulumi.get(self, "sha256")
298
+
299
+ @sha256.setter
300
+ def sha256(self, value: Optional[pulumi.Input[str]]):
301
+ pulumi.set(self, "sha256", value)
302
+
303
+ @property
304
+ @pulumi.getter
305
+ def type(self) -> Optional[pulumi.Input[str]]:
306
+ """
307
+ Type of plugin; one of "auth", "secret", or "database".
308
+ """
309
+ return pulumi.get(self, "type")
310
+
311
+ @type.setter
312
+ def type(self, value: Optional[pulumi.Input[str]]):
313
+ pulumi.set(self, "type", value)
314
+
315
+ @property
316
+ @pulumi.getter
317
+ def version(self) -> Optional[pulumi.Input[str]]:
318
+ """
319
+ Semantic version of the plugin.
320
+ """
321
+ return pulumi.get(self, "version")
322
+
323
+ @version.setter
324
+ def version(self, value: Optional[pulumi.Input[str]]):
325
+ pulumi.set(self, "version", value)
326
+
327
+
328
+ class Plugin(pulumi.CustomResource):
329
+ @overload
330
+ def __init__(__self__,
331
+ resource_name: str,
332
+ opts: Optional[pulumi.ResourceOptions] = None,
333
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
334
+ command: Optional[pulumi.Input[str]] = None,
335
+ envs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
336
+ name: Optional[pulumi.Input[str]] = None,
337
+ oci_image: Optional[pulumi.Input[str]] = None,
338
+ runtime: Optional[pulumi.Input[str]] = None,
339
+ sha256: Optional[pulumi.Input[str]] = None,
340
+ type: Optional[pulumi.Input[str]] = None,
341
+ version: Optional[pulumi.Input[str]] = None,
342
+ __props__=None):
343
+ """
344
+ ## Example Usage
345
+
346
+ ```python
347
+ import pulumi
348
+ import pulumi_vault as vault
349
+
350
+ jwt = vault.Plugin("jwt",
351
+ type="auth",
352
+ name="jwt",
353
+ command="vault-plugin-auth-jwt",
354
+ version="v0.17.0",
355
+ sha256="6bd0a803ed742aa3ce35e4fa23d2c8d550e6c1567bf63410cec489c28b68b0fc",
356
+ envs=["HTTP_PROXY=http://proxy.example.com:8080"])
357
+ jwt_auth = vault.AuthBackend("jwt_auth", type=jwt.name)
358
+ ```
359
+
360
+ ## Import
361
+
362
+ Plugins can be imported using `:type/name/:name` or `:type/version/:version/name/:name` as the ID if the version is non-empty, e.g.
363
+
364
+ ```sh
365
+ $ pulumi import vault:index/plugin:Plugin jwt auth/name/jwt
366
+ ```
367
+ ```sh
368
+ $ pulumi import vault:index/plugin:Plugin jwt auth/version/v0.17.0/name/jwt
369
+ ```
370
+
371
+ :param str resource_name: The name of the resource.
372
+ :param pulumi.ResourceOptions opts: Options for the resource.
373
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] args: List of additional args to pass to the plugin.
374
+ :param pulumi.Input[str] command: Command to execute the plugin, relative to the server's configured `plugin_directory`.
375
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] envs: List of additional environment variables to run the plugin with in KEY=VALUE form.
376
+ :param pulumi.Input[str] name: Name of the plugin.
377
+ :param pulumi.Input[str] oci_image: Specifies OCI image to run. If specified, setting
378
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
379
+ environment variables (append-only) respectively.
380
+ :param pulumi.Input[str] runtime: Vault plugin runtime to use if `oci_image` is specified.
381
+ :param pulumi.Input[str] sha256: SHA256 sum of the plugin binary.
382
+ :param pulumi.Input[str] type: Type of plugin; one of "auth", "secret", or "database".
383
+ :param pulumi.Input[str] version: Semantic version of the plugin.
384
+ """
385
+ ...
386
+ @overload
387
+ def __init__(__self__,
388
+ resource_name: str,
389
+ args: PluginArgs,
390
+ opts: Optional[pulumi.ResourceOptions] = None):
391
+ """
392
+ ## Example Usage
393
+
394
+ ```python
395
+ import pulumi
396
+ import pulumi_vault as vault
397
+
398
+ jwt = vault.Plugin("jwt",
399
+ type="auth",
400
+ name="jwt",
401
+ command="vault-plugin-auth-jwt",
402
+ version="v0.17.0",
403
+ sha256="6bd0a803ed742aa3ce35e4fa23d2c8d550e6c1567bf63410cec489c28b68b0fc",
404
+ envs=["HTTP_PROXY=http://proxy.example.com:8080"])
405
+ jwt_auth = vault.AuthBackend("jwt_auth", type=jwt.name)
406
+ ```
407
+
408
+ ## Import
409
+
410
+ Plugins can be imported using `:type/name/:name` or `:type/version/:version/name/:name` as the ID if the version is non-empty, e.g.
411
+
412
+ ```sh
413
+ $ pulumi import vault:index/plugin:Plugin jwt auth/name/jwt
414
+ ```
415
+ ```sh
416
+ $ pulumi import vault:index/plugin:Plugin jwt auth/version/v0.17.0/name/jwt
417
+ ```
418
+
419
+ :param str resource_name: The name of the resource.
420
+ :param PluginArgs args: The arguments to use to populate this resource's properties.
421
+ :param pulumi.ResourceOptions opts: Options for the resource.
422
+ """
423
+ ...
424
+ def __init__(__self__, resource_name: str, *args, **kwargs):
425
+ resource_args, opts = _utilities.get_resource_args_opts(PluginArgs, pulumi.ResourceOptions, *args, **kwargs)
426
+ if resource_args is not None:
427
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
428
+ else:
429
+ __self__._internal_init(resource_name, *args, **kwargs)
430
+
431
+ def _internal_init(__self__,
432
+ resource_name: str,
433
+ opts: Optional[pulumi.ResourceOptions] = None,
434
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
435
+ command: Optional[pulumi.Input[str]] = None,
436
+ envs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
437
+ name: Optional[pulumi.Input[str]] = None,
438
+ oci_image: Optional[pulumi.Input[str]] = None,
439
+ runtime: Optional[pulumi.Input[str]] = None,
440
+ sha256: Optional[pulumi.Input[str]] = None,
441
+ type: Optional[pulumi.Input[str]] = None,
442
+ version: Optional[pulumi.Input[str]] = None,
443
+ __props__=None):
444
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
445
+ if not isinstance(opts, pulumi.ResourceOptions):
446
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
447
+ if opts.id is None:
448
+ if __props__ is not None:
449
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
450
+ __props__ = PluginArgs.__new__(PluginArgs)
451
+
452
+ __props__.__dict__["args"] = args
453
+ if command is None and not opts.urn:
454
+ raise TypeError("Missing required property 'command'")
455
+ __props__.__dict__["command"] = command
456
+ __props__.__dict__["envs"] = None if envs is None else pulumi.Output.secret(envs)
457
+ __props__.__dict__["name"] = name
458
+ __props__.__dict__["oci_image"] = oci_image
459
+ __props__.__dict__["runtime"] = runtime
460
+ if sha256 is None and not opts.urn:
461
+ raise TypeError("Missing required property 'sha256'")
462
+ __props__.__dict__["sha256"] = sha256
463
+ if type is None and not opts.urn:
464
+ raise TypeError("Missing required property 'type'")
465
+ __props__.__dict__["type"] = type
466
+ __props__.__dict__["version"] = version
467
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["envs"])
468
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
469
+ super(Plugin, __self__).__init__(
470
+ 'vault:index/plugin:Plugin',
471
+ resource_name,
472
+ __props__,
473
+ opts)
474
+
475
+ @staticmethod
476
+ def get(resource_name: str,
477
+ id: pulumi.Input[str],
478
+ opts: Optional[pulumi.ResourceOptions] = None,
479
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
480
+ command: Optional[pulumi.Input[str]] = None,
481
+ envs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
482
+ name: Optional[pulumi.Input[str]] = None,
483
+ oci_image: Optional[pulumi.Input[str]] = None,
484
+ runtime: Optional[pulumi.Input[str]] = None,
485
+ sha256: Optional[pulumi.Input[str]] = None,
486
+ type: Optional[pulumi.Input[str]] = None,
487
+ version: Optional[pulumi.Input[str]] = None) -> 'Plugin':
488
+ """
489
+ Get an existing Plugin resource's state with the given name, id, and optional extra
490
+ properties used to qualify the lookup.
491
+
492
+ :param str resource_name: The unique name of the resulting resource.
493
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
494
+ :param pulumi.ResourceOptions opts: Options for the resource.
495
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] args: List of additional args to pass to the plugin.
496
+ :param pulumi.Input[str] command: Command to execute the plugin, relative to the server's configured `plugin_directory`.
497
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] envs: List of additional environment variables to run the plugin with in KEY=VALUE form.
498
+ :param pulumi.Input[str] name: Name of the plugin.
499
+ :param pulumi.Input[str] oci_image: Specifies OCI image to run. If specified, setting
500
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
501
+ environment variables (append-only) respectively.
502
+ :param pulumi.Input[str] runtime: Vault plugin runtime to use if `oci_image` is specified.
503
+ :param pulumi.Input[str] sha256: SHA256 sum of the plugin binary.
504
+ :param pulumi.Input[str] type: Type of plugin; one of "auth", "secret", or "database".
505
+ :param pulumi.Input[str] version: Semantic version of the plugin.
506
+ """
507
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
508
+
509
+ __props__ = _PluginState.__new__(_PluginState)
510
+
511
+ __props__.__dict__["args"] = args
512
+ __props__.__dict__["command"] = command
513
+ __props__.__dict__["envs"] = envs
514
+ __props__.__dict__["name"] = name
515
+ __props__.__dict__["oci_image"] = oci_image
516
+ __props__.__dict__["runtime"] = runtime
517
+ __props__.__dict__["sha256"] = sha256
518
+ __props__.__dict__["type"] = type
519
+ __props__.__dict__["version"] = version
520
+ return Plugin(resource_name, opts=opts, __props__=__props__)
521
+
522
+ @property
523
+ @pulumi.getter
524
+ def args(self) -> pulumi.Output[Optional[Sequence[str]]]:
525
+ """
526
+ List of additional args to pass to the plugin.
527
+ """
528
+ return pulumi.get(self, "args")
529
+
530
+ @property
531
+ @pulumi.getter
532
+ def command(self) -> pulumi.Output[str]:
533
+ """
534
+ Command to execute the plugin, relative to the server's configured `plugin_directory`.
535
+ """
536
+ return pulumi.get(self, "command")
537
+
538
+ @property
539
+ @pulumi.getter
540
+ def envs(self) -> pulumi.Output[Optional[Sequence[str]]]:
541
+ """
542
+ List of additional environment variables to run the plugin with in KEY=VALUE form.
543
+ """
544
+ return pulumi.get(self, "envs")
545
+
546
+ @property
547
+ @pulumi.getter
548
+ def name(self) -> pulumi.Output[str]:
549
+ """
550
+ Name of the plugin.
551
+ """
552
+ return pulumi.get(self, "name")
553
+
554
+ @property
555
+ @pulumi.getter(name="ociImage")
556
+ def oci_image(self) -> pulumi.Output[Optional[str]]:
557
+ """
558
+ Specifies OCI image to run. If specified, setting
559
+ `command`, `args`, and `env` will update the container's entrypoint, args, and
560
+ environment variables (append-only) respectively.
561
+ """
562
+ return pulumi.get(self, "oci_image")
563
+
564
+ @property
565
+ @pulumi.getter
566
+ def runtime(self) -> pulumi.Output[Optional[str]]:
567
+ """
568
+ Vault plugin runtime to use if `oci_image` is specified.
569
+ """
570
+ return pulumi.get(self, "runtime")
571
+
572
+ @property
573
+ @pulumi.getter
574
+ def sha256(self) -> pulumi.Output[str]:
575
+ """
576
+ SHA256 sum of the plugin binary.
577
+ """
578
+ return pulumi.get(self, "sha256")
579
+
580
+ @property
581
+ @pulumi.getter
582
+ def type(self) -> pulumi.Output[str]:
583
+ """
584
+ Type of plugin; one of "auth", "secret", or "database".
585
+ """
586
+ return pulumi.get(self, "type")
587
+
588
+ @property
589
+ @pulumi.getter
590
+ def version(self) -> pulumi.Output[Optional[str]]:
591
+ """
592
+ Semantic version of the plugin.
593
+ """
594
+ return pulumi.get(self, "version")
595
+