pulumi-vault 7.6.0a1764657486__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 (274) hide show
  1. pulumi_vault/__init__.py +1399 -0
  2. pulumi_vault/_inputs.py +2701 -0
  3. pulumi_vault/_utilities.py +331 -0
  4. pulumi_vault/ad/__init__.py +12 -0
  5. pulumi_vault/ad/get_access_credentials.py +177 -0
  6. pulumi_vault/ad/secret_backend.py +1916 -0
  7. pulumi_vault/ad/secret_library.py +546 -0
  8. pulumi_vault/ad/secret_role.py +499 -0
  9. pulumi_vault/alicloud/__init__.py +9 -0
  10. pulumi_vault/alicloud/auth_backend_role.py +866 -0
  11. pulumi_vault/approle/__init__.py +12 -0
  12. pulumi_vault/approle/auth_backend_login.py +571 -0
  13. pulumi_vault/approle/auth_backend_role.py +1082 -0
  14. pulumi_vault/approle/auth_backend_role_secret_id.py +796 -0
  15. pulumi_vault/approle/get_auth_backend_role_id.py +169 -0
  16. pulumi_vault/audit.py +499 -0
  17. pulumi_vault/audit_request_header.py +277 -0
  18. pulumi_vault/auth_backend.py +565 -0
  19. pulumi_vault/aws/__init__.py +22 -0
  20. pulumi_vault/aws/auth_backend_cert.py +420 -0
  21. pulumi_vault/aws/auth_backend_client.py +1259 -0
  22. pulumi_vault/aws/auth_backend_config_identity.py +494 -0
  23. pulumi_vault/aws/auth_backend_identity_whitelist.py +380 -0
  24. pulumi_vault/aws/auth_backend_login.py +1046 -0
  25. pulumi_vault/aws/auth_backend_role.py +1961 -0
  26. pulumi_vault/aws/auth_backend_role_tag.py +638 -0
  27. pulumi_vault/aws/auth_backend_roletag_blacklist.py +366 -0
  28. pulumi_vault/aws/auth_backend_sts_role.py +414 -0
  29. pulumi_vault/aws/get_access_credentials.py +369 -0
  30. pulumi_vault/aws/get_static_access_credentials.py +137 -0
  31. pulumi_vault/aws/secret_backend.py +2018 -0
  32. pulumi_vault/aws/secret_backend_role.py +1188 -0
  33. pulumi_vault/aws/secret_backend_static_role.py +639 -0
  34. pulumi_vault/azure/__init__.py +15 -0
  35. pulumi_vault/azure/_inputs.py +108 -0
  36. pulumi_vault/azure/auth_backend_config.py +1096 -0
  37. pulumi_vault/azure/auth_backend_role.py +1176 -0
  38. pulumi_vault/azure/backend.py +1793 -0
  39. pulumi_vault/azure/backend_role.py +883 -0
  40. pulumi_vault/azure/get_access_credentials.py +400 -0
  41. pulumi_vault/azure/outputs.py +107 -0
  42. pulumi_vault/cert_auth_backend_role.py +1539 -0
  43. pulumi_vault/config/__init__.py +9 -0
  44. pulumi_vault/config/__init__.pyi +164 -0
  45. pulumi_vault/config/_inputs.py +73 -0
  46. pulumi_vault/config/outputs.py +1225 -0
  47. pulumi_vault/config/ui_custom_message.py +530 -0
  48. pulumi_vault/config/vars.py +230 -0
  49. pulumi_vault/consul/__init__.py +10 -0
  50. pulumi_vault/consul/secret_backend.py +1517 -0
  51. pulumi_vault/consul/secret_backend_role.py +847 -0
  52. pulumi_vault/database/__init__.py +14 -0
  53. pulumi_vault/database/_inputs.py +11907 -0
  54. pulumi_vault/database/outputs.py +8496 -0
  55. pulumi_vault/database/secret_backend_connection.py +1676 -0
  56. pulumi_vault/database/secret_backend_role.py +840 -0
  57. pulumi_vault/database/secret_backend_static_role.py +881 -0
  58. pulumi_vault/database/secrets_mount.py +2160 -0
  59. pulumi_vault/egp_policy.py +399 -0
  60. pulumi_vault/gcp/__init__.py +17 -0
  61. pulumi_vault/gcp/_inputs.py +441 -0
  62. pulumi_vault/gcp/auth_backend.py +1486 -0
  63. pulumi_vault/gcp/auth_backend_role.py +1235 -0
  64. pulumi_vault/gcp/get_auth_backend_role.py +514 -0
  65. pulumi_vault/gcp/outputs.py +302 -0
  66. pulumi_vault/gcp/secret_backend.py +1807 -0
  67. pulumi_vault/gcp/secret_impersonated_account.py +484 -0
  68. pulumi_vault/gcp/secret_roleset.py +554 -0
  69. pulumi_vault/gcp/secret_static_account.py +557 -0
  70. pulumi_vault/generic/__init__.py +11 -0
  71. pulumi_vault/generic/endpoint.py +786 -0
  72. pulumi_vault/generic/get_secret.py +306 -0
  73. pulumi_vault/generic/secret.py +486 -0
  74. pulumi_vault/get_auth_backend.py +226 -0
  75. pulumi_vault/get_auth_backends.py +170 -0
  76. pulumi_vault/get_namespace.py +226 -0
  77. pulumi_vault/get_namespaces.py +202 -0
  78. pulumi_vault/get_nomad_access_token.py +210 -0
  79. pulumi_vault/get_policy_document.py +160 -0
  80. pulumi_vault/get_raft_autopilot_state.py +267 -0
  81. pulumi_vault/github/__init__.py +13 -0
  82. pulumi_vault/github/_inputs.py +225 -0
  83. pulumi_vault/github/auth_backend.py +1194 -0
  84. pulumi_vault/github/outputs.py +174 -0
  85. pulumi_vault/github/team.py +380 -0
  86. pulumi_vault/github/user.py +380 -0
  87. pulumi_vault/identity/__init__.py +35 -0
  88. pulumi_vault/identity/entity.py +447 -0
  89. pulumi_vault/identity/entity_alias.py +398 -0
  90. pulumi_vault/identity/entity_policies.py +455 -0
  91. pulumi_vault/identity/get_entity.py +384 -0
  92. pulumi_vault/identity/get_group.py +467 -0
  93. pulumi_vault/identity/get_oidc_client_creds.py +175 -0
  94. pulumi_vault/identity/get_oidc_openid_config.py +334 -0
  95. pulumi_vault/identity/get_oidc_public_keys.py +179 -0
  96. pulumi_vault/identity/group.py +805 -0
  97. pulumi_vault/identity/group_alias.py +386 -0
  98. pulumi_vault/identity/group_member_entity_ids.py +444 -0
  99. pulumi_vault/identity/group_member_group_ids.py +467 -0
  100. pulumi_vault/identity/group_policies.py +471 -0
  101. pulumi_vault/identity/mfa_duo.py +674 -0
  102. pulumi_vault/identity/mfa_login_enforcement.py +566 -0
  103. pulumi_vault/identity/mfa_okta.py +626 -0
  104. pulumi_vault/identity/mfa_pingid.py +616 -0
  105. pulumi_vault/identity/mfa_totp.py +758 -0
  106. pulumi_vault/identity/oidc.py +268 -0
  107. pulumi_vault/identity/oidc_assignment.py +375 -0
  108. pulumi_vault/identity/oidc_client.py +667 -0
  109. pulumi_vault/identity/oidc_key.py +474 -0
  110. pulumi_vault/identity/oidc_key_allowed_client_id.py +298 -0
  111. pulumi_vault/identity/oidc_provider.py +550 -0
  112. pulumi_vault/identity/oidc_role.py +543 -0
  113. pulumi_vault/identity/oidc_scope.py +355 -0
  114. pulumi_vault/identity/outputs.py +137 -0
  115. pulumi_vault/jwt/__init__.py +12 -0
  116. pulumi_vault/jwt/_inputs.py +225 -0
  117. pulumi_vault/jwt/auth_backend.py +1347 -0
  118. pulumi_vault/jwt/auth_backend_role.py +1847 -0
  119. pulumi_vault/jwt/outputs.py +174 -0
  120. pulumi_vault/kmip/__init__.py +11 -0
  121. pulumi_vault/kmip/secret_backend.py +1591 -0
  122. pulumi_vault/kmip/secret_role.py +1194 -0
  123. pulumi_vault/kmip/secret_scope.py +372 -0
  124. pulumi_vault/kubernetes/__init__.py +15 -0
  125. pulumi_vault/kubernetes/auth_backend_config.py +654 -0
  126. pulumi_vault/kubernetes/auth_backend_role.py +1031 -0
  127. pulumi_vault/kubernetes/get_auth_backend_config.py +280 -0
  128. pulumi_vault/kubernetes/get_auth_backend_role.py +470 -0
  129. pulumi_vault/kubernetes/get_service_account_token.py +344 -0
  130. pulumi_vault/kubernetes/secret_backend.py +1341 -0
  131. pulumi_vault/kubernetes/secret_backend_role.py +1140 -0
  132. pulumi_vault/kv/__init__.py +18 -0
  133. pulumi_vault/kv/_inputs.py +124 -0
  134. pulumi_vault/kv/get_secret.py +240 -0
  135. pulumi_vault/kv/get_secret_subkeys_v2.py +275 -0
  136. pulumi_vault/kv/get_secret_v2.py +315 -0
  137. pulumi_vault/kv/get_secrets_list.py +186 -0
  138. pulumi_vault/kv/get_secrets_list_v2.py +243 -0
  139. pulumi_vault/kv/outputs.py +102 -0
  140. pulumi_vault/kv/secret.py +397 -0
  141. pulumi_vault/kv/secret_backend_v2.py +455 -0
  142. pulumi_vault/kv/secret_v2.py +970 -0
  143. pulumi_vault/ldap/__init__.py +19 -0
  144. pulumi_vault/ldap/_inputs.py +225 -0
  145. pulumi_vault/ldap/auth_backend.py +2520 -0
  146. pulumi_vault/ldap/auth_backend_group.py +386 -0
  147. pulumi_vault/ldap/auth_backend_user.py +439 -0
  148. pulumi_vault/ldap/get_dynamic_credentials.py +181 -0
  149. pulumi_vault/ldap/get_static_credentials.py +192 -0
  150. pulumi_vault/ldap/outputs.py +174 -0
  151. pulumi_vault/ldap/secret_backend.py +2207 -0
  152. pulumi_vault/ldap/secret_backend_dynamic_role.py +767 -0
  153. pulumi_vault/ldap/secret_backend_library_set.py +552 -0
  154. pulumi_vault/ldap/secret_backend_static_role.py +541 -0
  155. pulumi_vault/managed/__init__.py +11 -0
  156. pulumi_vault/managed/_inputs.py +944 -0
  157. pulumi_vault/managed/keys.py +398 -0
  158. pulumi_vault/managed/outputs.py +667 -0
  159. pulumi_vault/mfa_duo.py +589 -0
  160. pulumi_vault/mfa_okta.py +623 -0
  161. pulumi_vault/mfa_pingid.py +670 -0
  162. pulumi_vault/mfa_totp.py +620 -0
  163. pulumi_vault/mongodbatlas/__init__.py +10 -0
  164. pulumi_vault/mongodbatlas/secret_backend.py +388 -0
  165. pulumi_vault/mongodbatlas/secret_role.py +726 -0
  166. pulumi_vault/mount.py +1262 -0
  167. pulumi_vault/namespace.py +452 -0
  168. pulumi_vault/nomad_secret_backend.py +1559 -0
  169. pulumi_vault/nomad_secret_role.py +489 -0
  170. pulumi_vault/oci_auth_backend.py +676 -0
  171. pulumi_vault/oci_auth_backend_role.py +852 -0
  172. pulumi_vault/okta/__init__.py +13 -0
  173. pulumi_vault/okta/_inputs.py +320 -0
  174. pulumi_vault/okta/auth_backend.py +1231 -0
  175. pulumi_vault/okta/auth_backend_group.py +369 -0
  176. pulumi_vault/okta/auth_backend_user.py +416 -0
  177. pulumi_vault/okta/outputs.py +244 -0
  178. pulumi_vault/outputs.py +502 -0
  179. pulumi_vault/pkisecret/__init__.py +38 -0
  180. pulumi_vault/pkisecret/_inputs.py +270 -0
  181. pulumi_vault/pkisecret/backend_acme_eab.py +550 -0
  182. pulumi_vault/pkisecret/backend_config_acme.py +690 -0
  183. pulumi_vault/pkisecret/backend_config_auto_tidy.py +1370 -0
  184. pulumi_vault/pkisecret/backend_config_cluster.py +370 -0
  185. pulumi_vault/pkisecret/backend_config_cmpv2.py +693 -0
  186. pulumi_vault/pkisecret/backend_config_est.py +756 -0
  187. pulumi_vault/pkisecret/backend_config_scep.py +738 -0
  188. pulumi_vault/pkisecret/get_backend_cert_metadata.py +277 -0
  189. pulumi_vault/pkisecret/get_backend_config_cmpv2.py +226 -0
  190. pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
  191. pulumi_vault/pkisecret/get_backend_config_scep.py +271 -0
  192. pulumi_vault/pkisecret/get_backend_issuer.py +395 -0
  193. pulumi_vault/pkisecret/get_backend_issuers.py +192 -0
  194. pulumi_vault/pkisecret/get_backend_key.py +211 -0
  195. pulumi_vault/pkisecret/get_backend_keys.py +192 -0
  196. pulumi_vault/pkisecret/outputs.py +270 -0
  197. pulumi_vault/pkisecret/secret_backend_cert.py +1315 -0
  198. pulumi_vault/pkisecret/secret_backend_config_ca.py +386 -0
  199. pulumi_vault/pkisecret/secret_backend_config_issuers.py +392 -0
  200. pulumi_vault/pkisecret/secret_backend_config_urls.py +462 -0
  201. pulumi_vault/pkisecret/secret_backend_crl_config.py +846 -0
  202. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +1629 -0
  203. pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +444 -0
  204. pulumi_vault/pkisecret/secret_backend_issuer.py +1089 -0
  205. pulumi_vault/pkisecret/secret_backend_key.py +613 -0
  206. pulumi_vault/pkisecret/secret_backend_role.py +2694 -0
  207. pulumi_vault/pkisecret/secret_backend_root_cert.py +2134 -0
  208. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +2031 -0
  209. pulumi_vault/pkisecret/secret_backend_sign.py +1194 -0
  210. pulumi_vault/plugin.py +596 -0
  211. pulumi_vault/plugin_pinned_version.py +299 -0
  212. pulumi_vault/policy.py +279 -0
  213. pulumi_vault/provider.py +781 -0
  214. pulumi_vault/pulumi-plugin.json +5 -0
  215. pulumi_vault/py.typed +0 -0
  216. pulumi_vault/quota_lease_count.py +504 -0
  217. pulumi_vault/quota_rate_limit.py +751 -0
  218. pulumi_vault/rabbitmq/__init__.py +12 -0
  219. pulumi_vault/rabbitmq/_inputs.py +235 -0
  220. pulumi_vault/rabbitmq/outputs.py +144 -0
  221. pulumi_vault/rabbitmq/secret_backend.py +1437 -0
  222. pulumi_vault/rabbitmq/secret_backend_role.py +496 -0
  223. pulumi_vault/raft_autopilot.py +609 -0
  224. pulumi_vault/raft_snapshot_agent_config.py +1591 -0
  225. pulumi_vault/rgp_policy.py +349 -0
  226. pulumi_vault/saml/__init__.py +12 -0
  227. pulumi_vault/saml/_inputs.py +225 -0
  228. pulumi_vault/saml/auth_backend.py +811 -0
  229. pulumi_vault/saml/auth_backend_role.py +1068 -0
  230. pulumi_vault/saml/outputs.py +174 -0
  231. pulumi_vault/scep_auth_backend_role.py +908 -0
  232. pulumi_vault/secrets/__init__.py +18 -0
  233. pulumi_vault/secrets/_inputs.py +110 -0
  234. pulumi_vault/secrets/outputs.py +94 -0
  235. pulumi_vault/secrets/sync_association.py +450 -0
  236. pulumi_vault/secrets/sync_aws_destination.py +780 -0
  237. pulumi_vault/secrets/sync_azure_destination.py +736 -0
  238. pulumi_vault/secrets/sync_config.py +303 -0
  239. pulumi_vault/secrets/sync_gcp_destination.py +572 -0
  240. pulumi_vault/secrets/sync_gh_destination.py +688 -0
  241. pulumi_vault/secrets/sync_github_apps.py +376 -0
  242. pulumi_vault/secrets/sync_vercel_destination.py +603 -0
  243. pulumi_vault/ssh/__init__.py +13 -0
  244. pulumi_vault/ssh/_inputs.py +76 -0
  245. pulumi_vault/ssh/get_secret_backend_sign.py +294 -0
  246. pulumi_vault/ssh/outputs.py +51 -0
  247. pulumi_vault/ssh/secret_backend_ca.py +588 -0
  248. pulumi_vault/ssh/secret_backend_role.py +1493 -0
  249. pulumi_vault/terraformcloud/__init__.py +11 -0
  250. pulumi_vault/terraformcloud/secret_backend.py +1321 -0
  251. pulumi_vault/terraformcloud/secret_creds.py +445 -0
  252. pulumi_vault/terraformcloud/secret_role.py +563 -0
  253. pulumi_vault/token.py +1026 -0
  254. pulumi_vault/tokenauth/__init__.py +9 -0
  255. pulumi_vault/tokenauth/auth_backend_role.py +1135 -0
  256. pulumi_vault/transform/__init__.py +14 -0
  257. pulumi_vault/transform/alphabet.py +348 -0
  258. pulumi_vault/transform/get_decode.py +287 -0
  259. pulumi_vault/transform/get_encode.py +291 -0
  260. pulumi_vault/transform/role.py +350 -0
  261. pulumi_vault/transform/template.py +592 -0
  262. pulumi_vault/transform/transformation.py +608 -0
  263. pulumi_vault/transit/__init__.py +15 -0
  264. pulumi_vault/transit/get_cmac.py +256 -0
  265. pulumi_vault/transit/get_decrypt.py +181 -0
  266. pulumi_vault/transit/get_encrypt.py +174 -0
  267. pulumi_vault/transit/get_sign.py +328 -0
  268. pulumi_vault/transit/get_verify.py +373 -0
  269. pulumi_vault/transit/secret_backend_key.py +1202 -0
  270. pulumi_vault/transit/secret_cache_config.py +302 -0
  271. pulumi_vault-7.6.0a1764657486.dist-info/METADATA +92 -0
  272. pulumi_vault-7.6.0a1764657486.dist-info/RECORD +274 -0
  273. pulumi_vault-7.6.0a1764657486.dist-info/WHEEL +5 -0
  274. pulumi_vault-7.6.0a1764657486.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1591 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
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__ = ['RaftSnapshotAgentConfigArgs', 'RaftSnapshotAgentConfig']
18
+
19
+ @pulumi.input_type
20
+ class RaftSnapshotAgentConfigArgs:
21
+ def __init__(__self__, *,
22
+ interval_seconds: pulumi.Input[_builtins.int],
23
+ path_prefix: pulumi.Input[_builtins.str],
24
+ storage_type: pulumi.Input[_builtins.str],
25
+ aws_access_key_id: Optional[pulumi.Input[_builtins.str]] = None,
26
+ aws_s3_bucket: Optional[pulumi.Input[_builtins.str]] = None,
27
+ aws_s3_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
28
+ aws_s3_enable_kms: Optional[pulumi.Input[_builtins.bool]] = None,
29
+ aws_s3_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
30
+ aws_s3_force_path_style: Optional[pulumi.Input[_builtins.bool]] = None,
31
+ aws_s3_kms_key: Optional[pulumi.Input[_builtins.str]] = None,
32
+ aws_s3_region: Optional[pulumi.Input[_builtins.str]] = None,
33
+ aws_s3_server_side_encryption: Optional[pulumi.Input[_builtins.bool]] = None,
34
+ aws_secret_access_key: Optional[pulumi.Input[_builtins.str]] = None,
35
+ aws_session_token: Optional[pulumi.Input[_builtins.str]] = None,
36
+ azure_account_key: Optional[pulumi.Input[_builtins.str]] = None,
37
+ azure_account_name: Optional[pulumi.Input[_builtins.str]] = None,
38
+ azure_blob_environment: Optional[pulumi.Input[_builtins.str]] = None,
39
+ azure_container_name: Optional[pulumi.Input[_builtins.str]] = None,
40
+ azure_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
41
+ file_prefix: Optional[pulumi.Input[_builtins.str]] = None,
42
+ google_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
43
+ google_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
44
+ google_gcs_bucket: Optional[pulumi.Input[_builtins.str]] = None,
45
+ google_service_account_key: Optional[pulumi.Input[_builtins.str]] = None,
46
+ local_max_space: Optional[pulumi.Input[_builtins.int]] = None,
47
+ name: Optional[pulumi.Input[_builtins.str]] = None,
48
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
49
+ retain: Optional[pulumi.Input[_builtins.int]] = None):
50
+ """
51
+ The set of arguments for constructing a RaftSnapshotAgentConfig resource.
52
+ :param pulumi.Input[_builtins.int] interval_seconds: `<required>` - Time (in seconds) between snapshots.
53
+ :param pulumi.Input[_builtins.str] path_prefix: `<required>` - For `storage_type = "local"`, the directory to
54
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
55
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
56
+ Types `local` and `aws-s3` the trailing `/` is optional.
57
+ :param pulumi.Input[_builtins.str] storage_type: `<required>` - One of "local", "azure-blob", "aws-s3",
58
+ or "google-gcs". The remaining parameters described below are all specific to
59
+ the selected `storage_type` and prefixed accordingly.
60
+ :param pulumi.Input[_builtins.str] aws_access_key_id: AWS access key ID.
61
+ :param pulumi.Input[_builtins.str] aws_s3_bucket: S3 bucket to write snapshots to.
62
+ :param pulumi.Input[_builtins.bool] aws_s3_disable_tls: Disable TLS for the S3 endpoint. This should only be used for testing purposes.
63
+ :param pulumi.Input[_builtins.bool] aws_s3_enable_kms: Use KMS to encrypt bucket contents.
64
+ :param pulumi.Input[_builtins.str] aws_s3_endpoint: AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
65
+ :param pulumi.Input[_builtins.bool] aws_s3_force_path_style: Use the endpoint/bucket URL style instead of bucket.endpoint.
66
+ :param pulumi.Input[_builtins.str] aws_s3_kms_key: Use named KMS key, when aws_s3_enable_kms=true
67
+ :param pulumi.Input[_builtins.str] aws_s3_region: AWS region bucket is in.
68
+ :param pulumi.Input[_builtins.bool] aws_s3_server_side_encryption: Use AES256 to encrypt bucket contents.
69
+ :param pulumi.Input[_builtins.str] aws_secret_access_key: AWS secret access key.
70
+ :param pulumi.Input[_builtins.str] aws_session_token: AWS session token.
71
+ :param pulumi.Input[_builtins.str] azure_account_key: Azure account key.
72
+ :param pulumi.Input[_builtins.str] azure_account_name: Azure account name.
73
+ :param pulumi.Input[_builtins.str] azure_blob_environment: Azure blob environment.
74
+ :param pulumi.Input[_builtins.str] azure_container_name: Azure container name to write snapshots to.
75
+ :param pulumi.Input[_builtins.str] azure_endpoint: Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
76
+ :param pulumi.Input[_builtins.str] file_prefix: Within the directory or bucket
77
+ prefix given by `path_prefix`, the file or object name of snapshot files
78
+ will start with this string.
79
+ :param pulumi.Input[_builtins.bool] google_disable_tls: Disable TLS for the GCS endpoint.
80
+ :param pulumi.Input[_builtins.str] google_endpoint: GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
81
+ :param pulumi.Input[_builtins.str] google_gcs_bucket: GCS bucket to write snapshots to.
82
+ :param pulumi.Input[_builtins.str] google_service_account_key: Google service account key in JSON format.
83
+ :param pulumi.Input[_builtins.int] local_max_space: The maximum space, in bytes, to use for snapshots.
84
+ :param pulumi.Input[_builtins.str] name: `<required>` – Name of the configuration to modify.
85
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
86
+ The value should not contain leading or trailing forward slashes.
87
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
88
+ *Available only for Vault Enterprise*.
89
+ :param pulumi.Input[_builtins.int] retain: How many snapshots are to be kept; when writing a
90
+ snapshot, if there are more snapshots already stored than this number, the
91
+ oldest ones will be deleted.
92
+ """
93
+ pulumi.set(__self__, "interval_seconds", interval_seconds)
94
+ pulumi.set(__self__, "path_prefix", path_prefix)
95
+ pulumi.set(__self__, "storage_type", storage_type)
96
+ if aws_access_key_id is not None:
97
+ pulumi.set(__self__, "aws_access_key_id", aws_access_key_id)
98
+ if aws_s3_bucket is not None:
99
+ pulumi.set(__self__, "aws_s3_bucket", aws_s3_bucket)
100
+ if aws_s3_disable_tls is not None:
101
+ pulumi.set(__self__, "aws_s3_disable_tls", aws_s3_disable_tls)
102
+ if aws_s3_enable_kms is not None:
103
+ pulumi.set(__self__, "aws_s3_enable_kms", aws_s3_enable_kms)
104
+ if aws_s3_endpoint is not None:
105
+ pulumi.set(__self__, "aws_s3_endpoint", aws_s3_endpoint)
106
+ if aws_s3_force_path_style is not None:
107
+ pulumi.set(__self__, "aws_s3_force_path_style", aws_s3_force_path_style)
108
+ if aws_s3_kms_key is not None:
109
+ pulumi.set(__self__, "aws_s3_kms_key", aws_s3_kms_key)
110
+ if aws_s3_region is not None:
111
+ pulumi.set(__self__, "aws_s3_region", aws_s3_region)
112
+ if aws_s3_server_side_encryption is not None:
113
+ pulumi.set(__self__, "aws_s3_server_side_encryption", aws_s3_server_side_encryption)
114
+ if aws_secret_access_key is not None:
115
+ pulumi.set(__self__, "aws_secret_access_key", aws_secret_access_key)
116
+ if aws_session_token is not None:
117
+ pulumi.set(__self__, "aws_session_token", aws_session_token)
118
+ if azure_account_key is not None:
119
+ pulumi.set(__self__, "azure_account_key", azure_account_key)
120
+ if azure_account_name is not None:
121
+ pulumi.set(__self__, "azure_account_name", azure_account_name)
122
+ if azure_blob_environment is not None:
123
+ pulumi.set(__self__, "azure_blob_environment", azure_blob_environment)
124
+ if azure_container_name is not None:
125
+ pulumi.set(__self__, "azure_container_name", azure_container_name)
126
+ if azure_endpoint is not None:
127
+ pulumi.set(__self__, "azure_endpoint", azure_endpoint)
128
+ if file_prefix is not None:
129
+ pulumi.set(__self__, "file_prefix", file_prefix)
130
+ if google_disable_tls is not None:
131
+ pulumi.set(__self__, "google_disable_tls", google_disable_tls)
132
+ if google_endpoint is not None:
133
+ pulumi.set(__self__, "google_endpoint", google_endpoint)
134
+ if google_gcs_bucket is not None:
135
+ pulumi.set(__self__, "google_gcs_bucket", google_gcs_bucket)
136
+ if google_service_account_key is not None:
137
+ pulumi.set(__self__, "google_service_account_key", google_service_account_key)
138
+ if local_max_space is not None:
139
+ pulumi.set(__self__, "local_max_space", local_max_space)
140
+ if name is not None:
141
+ pulumi.set(__self__, "name", name)
142
+ if namespace is not None:
143
+ pulumi.set(__self__, "namespace", namespace)
144
+ if retain is not None:
145
+ pulumi.set(__self__, "retain", retain)
146
+
147
+ @_builtins.property
148
+ @pulumi.getter(name="intervalSeconds")
149
+ def interval_seconds(self) -> pulumi.Input[_builtins.int]:
150
+ """
151
+ `<required>` - Time (in seconds) between snapshots.
152
+ """
153
+ return pulumi.get(self, "interval_seconds")
154
+
155
+ @interval_seconds.setter
156
+ def interval_seconds(self, value: pulumi.Input[_builtins.int]):
157
+ pulumi.set(self, "interval_seconds", value)
158
+
159
+ @_builtins.property
160
+ @pulumi.getter(name="pathPrefix")
161
+ def path_prefix(self) -> pulumi.Input[_builtins.str]:
162
+ """
163
+ `<required>` - For `storage_type = "local"`, the directory to
164
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
165
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
166
+ Types `local` and `aws-s3` the trailing `/` is optional.
167
+ """
168
+ return pulumi.get(self, "path_prefix")
169
+
170
+ @path_prefix.setter
171
+ def path_prefix(self, value: pulumi.Input[_builtins.str]):
172
+ pulumi.set(self, "path_prefix", value)
173
+
174
+ @_builtins.property
175
+ @pulumi.getter(name="storageType")
176
+ def storage_type(self) -> pulumi.Input[_builtins.str]:
177
+ """
178
+ `<required>` - One of "local", "azure-blob", "aws-s3",
179
+ or "google-gcs". The remaining parameters described below are all specific to
180
+ the selected `storage_type` and prefixed accordingly.
181
+ """
182
+ return pulumi.get(self, "storage_type")
183
+
184
+ @storage_type.setter
185
+ def storage_type(self, value: pulumi.Input[_builtins.str]):
186
+ pulumi.set(self, "storage_type", value)
187
+
188
+ @_builtins.property
189
+ @pulumi.getter(name="awsAccessKeyId")
190
+ def aws_access_key_id(self) -> Optional[pulumi.Input[_builtins.str]]:
191
+ """
192
+ AWS access key ID.
193
+ """
194
+ return pulumi.get(self, "aws_access_key_id")
195
+
196
+ @aws_access_key_id.setter
197
+ def aws_access_key_id(self, value: Optional[pulumi.Input[_builtins.str]]):
198
+ pulumi.set(self, "aws_access_key_id", value)
199
+
200
+ @_builtins.property
201
+ @pulumi.getter(name="awsS3Bucket")
202
+ def aws_s3_bucket(self) -> Optional[pulumi.Input[_builtins.str]]:
203
+ """
204
+ S3 bucket to write snapshots to.
205
+ """
206
+ return pulumi.get(self, "aws_s3_bucket")
207
+
208
+ @aws_s3_bucket.setter
209
+ def aws_s3_bucket(self, value: Optional[pulumi.Input[_builtins.str]]):
210
+ pulumi.set(self, "aws_s3_bucket", value)
211
+
212
+ @_builtins.property
213
+ @pulumi.getter(name="awsS3DisableTls")
214
+ def aws_s3_disable_tls(self) -> Optional[pulumi.Input[_builtins.bool]]:
215
+ """
216
+ Disable TLS for the S3 endpoint. This should only be used for testing purposes.
217
+ """
218
+ return pulumi.get(self, "aws_s3_disable_tls")
219
+
220
+ @aws_s3_disable_tls.setter
221
+ def aws_s3_disable_tls(self, value: Optional[pulumi.Input[_builtins.bool]]):
222
+ pulumi.set(self, "aws_s3_disable_tls", value)
223
+
224
+ @_builtins.property
225
+ @pulumi.getter(name="awsS3EnableKms")
226
+ def aws_s3_enable_kms(self) -> Optional[pulumi.Input[_builtins.bool]]:
227
+ """
228
+ Use KMS to encrypt bucket contents.
229
+ """
230
+ return pulumi.get(self, "aws_s3_enable_kms")
231
+
232
+ @aws_s3_enable_kms.setter
233
+ def aws_s3_enable_kms(self, value: Optional[pulumi.Input[_builtins.bool]]):
234
+ pulumi.set(self, "aws_s3_enable_kms", value)
235
+
236
+ @_builtins.property
237
+ @pulumi.getter(name="awsS3Endpoint")
238
+ def aws_s3_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
239
+ """
240
+ AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
241
+ """
242
+ return pulumi.get(self, "aws_s3_endpoint")
243
+
244
+ @aws_s3_endpoint.setter
245
+ def aws_s3_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
246
+ pulumi.set(self, "aws_s3_endpoint", value)
247
+
248
+ @_builtins.property
249
+ @pulumi.getter(name="awsS3ForcePathStyle")
250
+ def aws_s3_force_path_style(self) -> Optional[pulumi.Input[_builtins.bool]]:
251
+ """
252
+ Use the endpoint/bucket URL style instead of bucket.endpoint.
253
+ """
254
+ return pulumi.get(self, "aws_s3_force_path_style")
255
+
256
+ @aws_s3_force_path_style.setter
257
+ def aws_s3_force_path_style(self, value: Optional[pulumi.Input[_builtins.bool]]):
258
+ pulumi.set(self, "aws_s3_force_path_style", value)
259
+
260
+ @_builtins.property
261
+ @pulumi.getter(name="awsS3KmsKey")
262
+ def aws_s3_kms_key(self) -> Optional[pulumi.Input[_builtins.str]]:
263
+ """
264
+ Use named KMS key, when aws_s3_enable_kms=true
265
+ """
266
+ return pulumi.get(self, "aws_s3_kms_key")
267
+
268
+ @aws_s3_kms_key.setter
269
+ def aws_s3_kms_key(self, value: Optional[pulumi.Input[_builtins.str]]):
270
+ pulumi.set(self, "aws_s3_kms_key", value)
271
+
272
+ @_builtins.property
273
+ @pulumi.getter(name="awsS3Region")
274
+ def aws_s3_region(self) -> Optional[pulumi.Input[_builtins.str]]:
275
+ """
276
+ AWS region bucket is in.
277
+ """
278
+ return pulumi.get(self, "aws_s3_region")
279
+
280
+ @aws_s3_region.setter
281
+ def aws_s3_region(self, value: Optional[pulumi.Input[_builtins.str]]):
282
+ pulumi.set(self, "aws_s3_region", value)
283
+
284
+ @_builtins.property
285
+ @pulumi.getter(name="awsS3ServerSideEncryption")
286
+ def aws_s3_server_side_encryption(self) -> Optional[pulumi.Input[_builtins.bool]]:
287
+ """
288
+ Use AES256 to encrypt bucket contents.
289
+ """
290
+ return pulumi.get(self, "aws_s3_server_side_encryption")
291
+
292
+ @aws_s3_server_side_encryption.setter
293
+ def aws_s3_server_side_encryption(self, value: Optional[pulumi.Input[_builtins.bool]]):
294
+ pulumi.set(self, "aws_s3_server_side_encryption", value)
295
+
296
+ @_builtins.property
297
+ @pulumi.getter(name="awsSecretAccessKey")
298
+ def aws_secret_access_key(self) -> Optional[pulumi.Input[_builtins.str]]:
299
+ """
300
+ AWS secret access key.
301
+ """
302
+ return pulumi.get(self, "aws_secret_access_key")
303
+
304
+ @aws_secret_access_key.setter
305
+ def aws_secret_access_key(self, value: Optional[pulumi.Input[_builtins.str]]):
306
+ pulumi.set(self, "aws_secret_access_key", value)
307
+
308
+ @_builtins.property
309
+ @pulumi.getter(name="awsSessionToken")
310
+ def aws_session_token(self) -> Optional[pulumi.Input[_builtins.str]]:
311
+ """
312
+ AWS session token.
313
+ """
314
+ return pulumi.get(self, "aws_session_token")
315
+
316
+ @aws_session_token.setter
317
+ def aws_session_token(self, value: Optional[pulumi.Input[_builtins.str]]):
318
+ pulumi.set(self, "aws_session_token", value)
319
+
320
+ @_builtins.property
321
+ @pulumi.getter(name="azureAccountKey")
322
+ def azure_account_key(self) -> Optional[pulumi.Input[_builtins.str]]:
323
+ """
324
+ Azure account key.
325
+ """
326
+ return pulumi.get(self, "azure_account_key")
327
+
328
+ @azure_account_key.setter
329
+ def azure_account_key(self, value: Optional[pulumi.Input[_builtins.str]]):
330
+ pulumi.set(self, "azure_account_key", value)
331
+
332
+ @_builtins.property
333
+ @pulumi.getter(name="azureAccountName")
334
+ def azure_account_name(self) -> Optional[pulumi.Input[_builtins.str]]:
335
+ """
336
+ Azure account name.
337
+ """
338
+ return pulumi.get(self, "azure_account_name")
339
+
340
+ @azure_account_name.setter
341
+ def azure_account_name(self, value: Optional[pulumi.Input[_builtins.str]]):
342
+ pulumi.set(self, "azure_account_name", value)
343
+
344
+ @_builtins.property
345
+ @pulumi.getter(name="azureBlobEnvironment")
346
+ def azure_blob_environment(self) -> Optional[pulumi.Input[_builtins.str]]:
347
+ """
348
+ Azure blob environment.
349
+ """
350
+ return pulumi.get(self, "azure_blob_environment")
351
+
352
+ @azure_blob_environment.setter
353
+ def azure_blob_environment(self, value: Optional[pulumi.Input[_builtins.str]]):
354
+ pulumi.set(self, "azure_blob_environment", value)
355
+
356
+ @_builtins.property
357
+ @pulumi.getter(name="azureContainerName")
358
+ def azure_container_name(self) -> Optional[pulumi.Input[_builtins.str]]:
359
+ """
360
+ Azure container name to write snapshots to.
361
+ """
362
+ return pulumi.get(self, "azure_container_name")
363
+
364
+ @azure_container_name.setter
365
+ def azure_container_name(self, value: Optional[pulumi.Input[_builtins.str]]):
366
+ pulumi.set(self, "azure_container_name", value)
367
+
368
+ @_builtins.property
369
+ @pulumi.getter(name="azureEndpoint")
370
+ def azure_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
371
+ """
372
+ Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
373
+ """
374
+ return pulumi.get(self, "azure_endpoint")
375
+
376
+ @azure_endpoint.setter
377
+ def azure_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
378
+ pulumi.set(self, "azure_endpoint", value)
379
+
380
+ @_builtins.property
381
+ @pulumi.getter(name="filePrefix")
382
+ def file_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
383
+ """
384
+ Within the directory or bucket
385
+ prefix given by `path_prefix`, the file or object name of snapshot files
386
+ will start with this string.
387
+ """
388
+ return pulumi.get(self, "file_prefix")
389
+
390
+ @file_prefix.setter
391
+ def file_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
392
+ pulumi.set(self, "file_prefix", value)
393
+
394
+ @_builtins.property
395
+ @pulumi.getter(name="googleDisableTls")
396
+ def google_disable_tls(self) -> Optional[pulumi.Input[_builtins.bool]]:
397
+ """
398
+ Disable TLS for the GCS endpoint.
399
+ """
400
+ return pulumi.get(self, "google_disable_tls")
401
+
402
+ @google_disable_tls.setter
403
+ def google_disable_tls(self, value: Optional[pulumi.Input[_builtins.bool]]):
404
+ pulumi.set(self, "google_disable_tls", value)
405
+
406
+ @_builtins.property
407
+ @pulumi.getter(name="googleEndpoint")
408
+ def google_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
409
+ """
410
+ GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
411
+ """
412
+ return pulumi.get(self, "google_endpoint")
413
+
414
+ @google_endpoint.setter
415
+ def google_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
416
+ pulumi.set(self, "google_endpoint", value)
417
+
418
+ @_builtins.property
419
+ @pulumi.getter(name="googleGcsBucket")
420
+ def google_gcs_bucket(self) -> Optional[pulumi.Input[_builtins.str]]:
421
+ """
422
+ GCS bucket to write snapshots to.
423
+ """
424
+ return pulumi.get(self, "google_gcs_bucket")
425
+
426
+ @google_gcs_bucket.setter
427
+ def google_gcs_bucket(self, value: Optional[pulumi.Input[_builtins.str]]):
428
+ pulumi.set(self, "google_gcs_bucket", value)
429
+
430
+ @_builtins.property
431
+ @pulumi.getter(name="googleServiceAccountKey")
432
+ def google_service_account_key(self) -> Optional[pulumi.Input[_builtins.str]]:
433
+ """
434
+ Google service account key in JSON format.
435
+ """
436
+ return pulumi.get(self, "google_service_account_key")
437
+
438
+ @google_service_account_key.setter
439
+ def google_service_account_key(self, value: Optional[pulumi.Input[_builtins.str]]):
440
+ pulumi.set(self, "google_service_account_key", value)
441
+
442
+ @_builtins.property
443
+ @pulumi.getter(name="localMaxSpace")
444
+ def local_max_space(self) -> Optional[pulumi.Input[_builtins.int]]:
445
+ """
446
+ The maximum space, in bytes, to use for snapshots.
447
+ """
448
+ return pulumi.get(self, "local_max_space")
449
+
450
+ @local_max_space.setter
451
+ def local_max_space(self, value: Optional[pulumi.Input[_builtins.int]]):
452
+ pulumi.set(self, "local_max_space", value)
453
+
454
+ @_builtins.property
455
+ @pulumi.getter
456
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
457
+ """
458
+ `<required>` – Name of the configuration to modify.
459
+ """
460
+ return pulumi.get(self, "name")
461
+
462
+ @name.setter
463
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
464
+ pulumi.set(self, "name", value)
465
+
466
+ @_builtins.property
467
+ @pulumi.getter
468
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
469
+ """
470
+ The namespace to provision the resource in.
471
+ The value should not contain leading or trailing forward slashes.
472
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
473
+ *Available only for Vault Enterprise*.
474
+ """
475
+ return pulumi.get(self, "namespace")
476
+
477
+ @namespace.setter
478
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
479
+ pulumi.set(self, "namespace", value)
480
+
481
+ @_builtins.property
482
+ @pulumi.getter
483
+ def retain(self) -> Optional[pulumi.Input[_builtins.int]]:
484
+ """
485
+ How many snapshots are to be kept; when writing a
486
+ snapshot, if there are more snapshots already stored than this number, the
487
+ oldest ones will be deleted.
488
+ """
489
+ return pulumi.get(self, "retain")
490
+
491
+ @retain.setter
492
+ def retain(self, value: Optional[pulumi.Input[_builtins.int]]):
493
+ pulumi.set(self, "retain", value)
494
+
495
+
496
+ @pulumi.input_type
497
+ class _RaftSnapshotAgentConfigState:
498
+ def __init__(__self__, *,
499
+ aws_access_key_id: Optional[pulumi.Input[_builtins.str]] = None,
500
+ aws_s3_bucket: Optional[pulumi.Input[_builtins.str]] = None,
501
+ aws_s3_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
502
+ aws_s3_enable_kms: Optional[pulumi.Input[_builtins.bool]] = None,
503
+ aws_s3_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
504
+ aws_s3_force_path_style: Optional[pulumi.Input[_builtins.bool]] = None,
505
+ aws_s3_kms_key: Optional[pulumi.Input[_builtins.str]] = None,
506
+ aws_s3_region: Optional[pulumi.Input[_builtins.str]] = None,
507
+ aws_s3_server_side_encryption: Optional[pulumi.Input[_builtins.bool]] = None,
508
+ aws_secret_access_key: Optional[pulumi.Input[_builtins.str]] = None,
509
+ aws_session_token: Optional[pulumi.Input[_builtins.str]] = None,
510
+ azure_account_key: Optional[pulumi.Input[_builtins.str]] = None,
511
+ azure_account_name: Optional[pulumi.Input[_builtins.str]] = None,
512
+ azure_blob_environment: Optional[pulumi.Input[_builtins.str]] = None,
513
+ azure_container_name: Optional[pulumi.Input[_builtins.str]] = None,
514
+ azure_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
515
+ file_prefix: Optional[pulumi.Input[_builtins.str]] = None,
516
+ google_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
517
+ google_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
518
+ google_gcs_bucket: Optional[pulumi.Input[_builtins.str]] = None,
519
+ google_service_account_key: Optional[pulumi.Input[_builtins.str]] = None,
520
+ interval_seconds: Optional[pulumi.Input[_builtins.int]] = None,
521
+ local_max_space: Optional[pulumi.Input[_builtins.int]] = None,
522
+ name: Optional[pulumi.Input[_builtins.str]] = None,
523
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
524
+ path_prefix: Optional[pulumi.Input[_builtins.str]] = None,
525
+ retain: Optional[pulumi.Input[_builtins.int]] = None,
526
+ storage_type: Optional[pulumi.Input[_builtins.str]] = None):
527
+ """
528
+ Input properties used for looking up and filtering RaftSnapshotAgentConfig resources.
529
+ :param pulumi.Input[_builtins.str] aws_access_key_id: AWS access key ID.
530
+ :param pulumi.Input[_builtins.str] aws_s3_bucket: S3 bucket to write snapshots to.
531
+ :param pulumi.Input[_builtins.bool] aws_s3_disable_tls: Disable TLS for the S3 endpoint. This should only be used for testing purposes.
532
+ :param pulumi.Input[_builtins.bool] aws_s3_enable_kms: Use KMS to encrypt bucket contents.
533
+ :param pulumi.Input[_builtins.str] aws_s3_endpoint: AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
534
+ :param pulumi.Input[_builtins.bool] aws_s3_force_path_style: Use the endpoint/bucket URL style instead of bucket.endpoint.
535
+ :param pulumi.Input[_builtins.str] aws_s3_kms_key: Use named KMS key, when aws_s3_enable_kms=true
536
+ :param pulumi.Input[_builtins.str] aws_s3_region: AWS region bucket is in.
537
+ :param pulumi.Input[_builtins.bool] aws_s3_server_side_encryption: Use AES256 to encrypt bucket contents.
538
+ :param pulumi.Input[_builtins.str] aws_secret_access_key: AWS secret access key.
539
+ :param pulumi.Input[_builtins.str] aws_session_token: AWS session token.
540
+ :param pulumi.Input[_builtins.str] azure_account_key: Azure account key.
541
+ :param pulumi.Input[_builtins.str] azure_account_name: Azure account name.
542
+ :param pulumi.Input[_builtins.str] azure_blob_environment: Azure blob environment.
543
+ :param pulumi.Input[_builtins.str] azure_container_name: Azure container name to write snapshots to.
544
+ :param pulumi.Input[_builtins.str] azure_endpoint: Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
545
+ :param pulumi.Input[_builtins.str] file_prefix: Within the directory or bucket
546
+ prefix given by `path_prefix`, the file or object name of snapshot files
547
+ will start with this string.
548
+ :param pulumi.Input[_builtins.bool] google_disable_tls: Disable TLS for the GCS endpoint.
549
+ :param pulumi.Input[_builtins.str] google_endpoint: GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
550
+ :param pulumi.Input[_builtins.str] google_gcs_bucket: GCS bucket to write snapshots to.
551
+ :param pulumi.Input[_builtins.str] google_service_account_key: Google service account key in JSON format.
552
+ :param pulumi.Input[_builtins.int] interval_seconds: `<required>` - Time (in seconds) between snapshots.
553
+ :param pulumi.Input[_builtins.int] local_max_space: The maximum space, in bytes, to use for snapshots.
554
+ :param pulumi.Input[_builtins.str] name: `<required>` – Name of the configuration to modify.
555
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
556
+ The value should not contain leading or trailing forward slashes.
557
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
558
+ *Available only for Vault Enterprise*.
559
+ :param pulumi.Input[_builtins.str] path_prefix: `<required>` - For `storage_type = "local"`, the directory to
560
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
561
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
562
+ Types `local` and `aws-s3` the trailing `/` is optional.
563
+ :param pulumi.Input[_builtins.int] retain: How many snapshots are to be kept; when writing a
564
+ snapshot, if there are more snapshots already stored than this number, the
565
+ oldest ones will be deleted.
566
+ :param pulumi.Input[_builtins.str] storage_type: `<required>` - One of "local", "azure-blob", "aws-s3",
567
+ or "google-gcs". The remaining parameters described below are all specific to
568
+ the selected `storage_type` and prefixed accordingly.
569
+ """
570
+ if aws_access_key_id is not None:
571
+ pulumi.set(__self__, "aws_access_key_id", aws_access_key_id)
572
+ if aws_s3_bucket is not None:
573
+ pulumi.set(__self__, "aws_s3_bucket", aws_s3_bucket)
574
+ if aws_s3_disable_tls is not None:
575
+ pulumi.set(__self__, "aws_s3_disable_tls", aws_s3_disable_tls)
576
+ if aws_s3_enable_kms is not None:
577
+ pulumi.set(__self__, "aws_s3_enable_kms", aws_s3_enable_kms)
578
+ if aws_s3_endpoint is not None:
579
+ pulumi.set(__self__, "aws_s3_endpoint", aws_s3_endpoint)
580
+ if aws_s3_force_path_style is not None:
581
+ pulumi.set(__self__, "aws_s3_force_path_style", aws_s3_force_path_style)
582
+ if aws_s3_kms_key is not None:
583
+ pulumi.set(__self__, "aws_s3_kms_key", aws_s3_kms_key)
584
+ if aws_s3_region is not None:
585
+ pulumi.set(__self__, "aws_s3_region", aws_s3_region)
586
+ if aws_s3_server_side_encryption is not None:
587
+ pulumi.set(__self__, "aws_s3_server_side_encryption", aws_s3_server_side_encryption)
588
+ if aws_secret_access_key is not None:
589
+ pulumi.set(__self__, "aws_secret_access_key", aws_secret_access_key)
590
+ if aws_session_token is not None:
591
+ pulumi.set(__self__, "aws_session_token", aws_session_token)
592
+ if azure_account_key is not None:
593
+ pulumi.set(__self__, "azure_account_key", azure_account_key)
594
+ if azure_account_name is not None:
595
+ pulumi.set(__self__, "azure_account_name", azure_account_name)
596
+ if azure_blob_environment is not None:
597
+ pulumi.set(__self__, "azure_blob_environment", azure_blob_environment)
598
+ if azure_container_name is not None:
599
+ pulumi.set(__self__, "azure_container_name", azure_container_name)
600
+ if azure_endpoint is not None:
601
+ pulumi.set(__self__, "azure_endpoint", azure_endpoint)
602
+ if file_prefix is not None:
603
+ pulumi.set(__self__, "file_prefix", file_prefix)
604
+ if google_disable_tls is not None:
605
+ pulumi.set(__self__, "google_disable_tls", google_disable_tls)
606
+ if google_endpoint is not None:
607
+ pulumi.set(__self__, "google_endpoint", google_endpoint)
608
+ if google_gcs_bucket is not None:
609
+ pulumi.set(__self__, "google_gcs_bucket", google_gcs_bucket)
610
+ if google_service_account_key is not None:
611
+ pulumi.set(__self__, "google_service_account_key", google_service_account_key)
612
+ if interval_seconds is not None:
613
+ pulumi.set(__self__, "interval_seconds", interval_seconds)
614
+ if local_max_space is not None:
615
+ pulumi.set(__self__, "local_max_space", local_max_space)
616
+ if name is not None:
617
+ pulumi.set(__self__, "name", name)
618
+ if namespace is not None:
619
+ pulumi.set(__self__, "namespace", namespace)
620
+ if path_prefix is not None:
621
+ pulumi.set(__self__, "path_prefix", path_prefix)
622
+ if retain is not None:
623
+ pulumi.set(__self__, "retain", retain)
624
+ if storage_type is not None:
625
+ pulumi.set(__self__, "storage_type", storage_type)
626
+
627
+ @_builtins.property
628
+ @pulumi.getter(name="awsAccessKeyId")
629
+ def aws_access_key_id(self) -> Optional[pulumi.Input[_builtins.str]]:
630
+ """
631
+ AWS access key ID.
632
+ """
633
+ return pulumi.get(self, "aws_access_key_id")
634
+
635
+ @aws_access_key_id.setter
636
+ def aws_access_key_id(self, value: Optional[pulumi.Input[_builtins.str]]):
637
+ pulumi.set(self, "aws_access_key_id", value)
638
+
639
+ @_builtins.property
640
+ @pulumi.getter(name="awsS3Bucket")
641
+ def aws_s3_bucket(self) -> Optional[pulumi.Input[_builtins.str]]:
642
+ """
643
+ S3 bucket to write snapshots to.
644
+ """
645
+ return pulumi.get(self, "aws_s3_bucket")
646
+
647
+ @aws_s3_bucket.setter
648
+ def aws_s3_bucket(self, value: Optional[pulumi.Input[_builtins.str]]):
649
+ pulumi.set(self, "aws_s3_bucket", value)
650
+
651
+ @_builtins.property
652
+ @pulumi.getter(name="awsS3DisableTls")
653
+ def aws_s3_disable_tls(self) -> Optional[pulumi.Input[_builtins.bool]]:
654
+ """
655
+ Disable TLS for the S3 endpoint. This should only be used for testing purposes.
656
+ """
657
+ return pulumi.get(self, "aws_s3_disable_tls")
658
+
659
+ @aws_s3_disable_tls.setter
660
+ def aws_s3_disable_tls(self, value: Optional[pulumi.Input[_builtins.bool]]):
661
+ pulumi.set(self, "aws_s3_disable_tls", value)
662
+
663
+ @_builtins.property
664
+ @pulumi.getter(name="awsS3EnableKms")
665
+ def aws_s3_enable_kms(self) -> Optional[pulumi.Input[_builtins.bool]]:
666
+ """
667
+ Use KMS to encrypt bucket contents.
668
+ """
669
+ return pulumi.get(self, "aws_s3_enable_kms")
670
+
671
+ @aws_s3_enable_kms.setter
672
+ def aws_s3_enable_kms(self, value: Optional[pulumi.Input[_builtins.bool]]):
673
+ pulumi.set(self, "aws_s3_enable_kms", value)
674
+
675
+ @_builtins.property
676
+ @pulumi.getter(name="awsS3Endpoint")
677
+ def aws_s3_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
678
+ """
679
+ AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
680
+ """
681
+ return pulumi.get(self, "aws_s3_endpoint")
682
+
683
+ @aws_s3_endpoint.setter
684
+ def aws_s3_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
685
+ pulumi.set(self, "aws_s3_endpoint", value)
686
+
687
+ @_builtins.property
688
+ @pulumi.getter(name="awsS3ForcePathStyle")
689
+ def aws_s3_force_path_style(self) -> Optional[pulumi.Input[_builtins.bool]]:
690
+ """
691
+ Use the endpoint/bucket URL style instead of bucket.endpoint.
692
+ """
693
+ return pulumi.get(self, "aws_s3_force_path_style")
694
+
695
+ @aws_s3_force_path_style.setter
696
+ def aws_s3_force_path_style(self, value: Optional[pulumi.Input[_builtins.bool]]):
697
+ pulumi.set(self, "aws_s3_force_path_style", value)
698
+
699
+ @_builtins.property
700
+ @pulumi.getter(name="awsS3KmsKey")
701
+ def aws_s3_kms_key(self) -> Optional[pulumi.Input[_builtins.str]]:
702
+ """
703
+ Use named KMS key, when aws_s3_enable_kms=true
704
+ """
705
+ return pulumi.get(self, "aws_s3_kms_key")
706
+
707
+ @aws_s3_kms_key.setter
708
+ def aws_s3_kms_key(self, value: Optional[pulumi.Input[_builtins.str]]):
709
+ pulumi.set(self, "aws_s3_kms_key", value)
710
+
711
+ @_builtins.property
712
+ @pulumi.getter(name="awsS3Region")
713
+ def aws_s3_region(self) -> Optional[pulumi.Input[_builtins.str]]:
714
+ """
715
+ AWS region bucket is in.
716
+ """
717
+ return pulumi.get(self, "aws_s3_region")
718
+
719
+ @aws_s3_region.setter
720
+ def aws_s3_region(self, value: Optional[pulumi.Input[_builtins.str]]):
721
+ pulumi.set(self, "aws_s3_region", value)
722
+
723
+ @_builtins.property
724
+ @pulumi.getter(name="awsS3ServerSideEncryption")
725
+ def aws_s3_server_side_encryption(self) -> Optional[pulumi.Input[_builtins.bool]]:
726
+ """
727
+ Use AES256 to encrypt bucket contents.
728
+ """
729
+ return pulumi.get(self, "aws_s3_server_side_encryption")
730
+
731
+ @aws_s3_server_side_encryption.setter
732
+ def aws_s3_server_side_encryption(self, value: Optional[pulumi.Input[_builtins.bool]]):
733
+ pulumi.set(self, "aws_s3_server_side_encryption", value)
734
+
735
+ @_builtins.property
736
+ @pulumi.getter(name="awsSecretAccessKey")
737
+ def aws_secret_access_key(self) -> Optional[pulumi.Input[_builtins.str]]:
738
+ """
739
+ AWS secret access key.
740
+ """
741
+ return pulumi.get(self, "aws_secret_access_key")
742
+
743
+ @aws_secret_access_key.setter
744
+ def aws_secret_access_key(self, value: Optional[pulumi.Input[_builtins.str]]):
745
+ pulumi.set(self, "aws_secret_access_key", value)
746
+
747
+ @_builtins.property
748
+ @pulumi.getter(name="awsSessionToken")
749
+ def aws_session_token(self) -> Optional[pulumi.Input[_builtins.str]]:
750
+ """
751
+ AWS session token.
752
+ """
753
+ return pulumi.get(self, "aws_session_token")
754
+
755
+ @aws_session_token.setter
756
+ def aws_session_token(self, value: Optional[pulumi.Input[_builtins.str]]):
757
+ pulumi.set(self, "aws_session_token", value)
758
+
759
+ @_builtins.property
760
+ @pulumi.getter(name="azureAccountKey")
761
+ def azure_account_key(self) -> Optional[pulumi.Input[_builtins.str]]:
762
+ """
763
+ Azure account key.
764
+ """
765
+ return pulumi.get(self, "azure_account_key")
766
+
767
+ @azure_account_key.setter
768
+ def azure_account_key(self, value: Optional[pulumi.Input[_builtins.str]]):
769
+ pulumi.set(self, "azure_account_key", value)
770
+
771
+ @_builtins.property
772
+ @pulumi.getter(name="azureAccountName")
773
+ def azure_account_name(self) -> Optional[pulumi.Input[_builtins.str]]:
774
+ """
775
+ Azure account name.
776
+ """
777
+ return pulumi.get(self, "azure_account_name")
778
+
779
+ @azure_account_name.setter
780
+ def azure_account_name(self, value: Optional[pulumi.Input[_builtins.str]]):
781
+ pulumi.set(self, "azure_account_name", value)
782
+
783
+ @_builtins.property
784
+ @pulumi.getter(name="azureBlobEnvironment")
785
+ def azure_blob_environment(self) -> Optional[pulumi.Input[_builtins.str]]:
786
+ """
787
+ Azure blob environment.
788
+ """
789
+ return pulumi.get(self, "azure_blob_environment")
790
+
791
+ @azure_blob_environment.setter
792
+ def azure_blob_environment(self, value: Optional[pulumi.Input[_builtins.str]]):
793
+ pulumi.set(self, "azure_blob_environment", value)
794
+
795
+ @_builtins.property
796
+ @pulumi.getter(name="azureContainerName")
797
+ def azure_container_name(self) -> Optional[pulumi.Input[_builtins.str]]:
798
+ """
799
+ Azure container name to write snapshots to.
800
+ """
801
+ return pulumi.get(self, "azure_container_name")
802
+
803
+ @azure_container_name.setter
804
+ def azure_container_name(self, value: Optional[pulumi.Input[_builtins.str]]):
805
+ pulumi.set(self, "azure_container_name", value)
806
+
807
+ @_builtins.property
808
+ @pulumi.getter(name="azureEndpoint")
809
+ def azure_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
810
+ """
811
+ Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
812
+ """
813
+ return pulumi.get(self, "azure_endpoint")
814
+
815
+ @azure_endpoint.setter
816
+ def azure_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
817
+ pulumi.set(self, "azure_endpoint", value)
818
+
819
+ @_builtins.property
820
+ @pulumi.getter(name="filePrefix")
821
+ def file_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
822
+ """
823
+ Within the directory or bucket
824
+ prefix given by `path_prefix`, the file or object name of snapshot files
825
+ will start with this string.
826
+ """
827
+ return pulumi.get(self, "file_prefix")
828
+
829
+ @file_prefix.setter
830
+ def file_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
831
+ pulumi.set(self, "file_prefix", value)
832
+
833
+ @_builtins.property
834
+ @pulumi.getter(name="googleDisableTls")
835
+ def google_disable_tls(self) -> Optional[pulumi.Input[_builtins.bool]]:
836
+ """
837
+ Disable TLS for the GCS endpoint.
838
+ """
839
+ return pulumi.get(self, "google_disable_tls")
840
+
841
+ @google_disable_tls.setter
842
+ def google_disable_tls(self, value: Optional[pulumi.Input[_builtins.bool]]):
843
+ pulumi.set(self, "google_disable_tls", value)
844
+
845
+ @_builtins.property
846
+ @pulumi.getter(name="googleEndpoint")
847
+ def google_endpoint(self) -> Optional[pulumi.Input[_builtins.str]]:
848
+ """
849
+ GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
850
+ """
851
+ return pulumi.get(self, "google_endpoint")
852
+
853
+ @google_endpoint.setter
854
+ def google_endpoint(self, value: Optional[pulumi.Input[_builtins.str]]):
855
+ pulumi.set(self, "google_endpoint", value)
856
+
857
+ @_builtins.property
858
+ @pulumi.getter(name="googleGcsBucket")
859
+ def google_gcs_bucket(self) -> Optional[pulumi.Input[_builtins.str]]:
860
+ """
861
+ GCS bucket to write snapshots to.
862
+ """
863
+ return pulumi.get(self, "google_gcs_bucket")
864
+
865
+ @google_gcs_bucket.setter
866
+ def google_gcs_bucket(self, value: Optional[pulumi.Input[_builtins.str]]):
867
+ pulumi.set(self, "google_gcs_bucket", value)
868
+
869
+ @_builtins.property
870
+ @pulumi.getter(name="googleServiceAccountKey")
871
+ def google_service_account_key(self) -> Optional[pulumi.Input[_builtins.str]]:
872
+ """
873
+ Google service account key in JSON format.
874
+ """
875
+ return pulumi.get(self, "google_service_account_key")
876
+
877
+ @google_service_account_key.setter
878
+ def google_service_account_key(self, value: Optional[pulumi.Input[_builtins.str]]):
879
+ pulumi.set(self, "google_service_account_key", value)
880
+
881
+ @_builtins.property
882
+ @pulumi.getter(name="intervalSeconds")
883
+ def interval_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
884
+ """
885
+ `<required>` - Time (in seconds) between snapshots.
886
+ """
887
+ return pulumi.get(self, "interval_seconds")
888
+
889
+ @interval_seconds.setter
890
+ def interval_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
891
+ pulumi.set(self, "interval_seconds", value)
892
+
893
+ @_builtins.property
894
+ @pulumi.getter(name="localMaxSpace")
895
+ def local_max_space(self) -> Optional[pulumi.Input[_builtins.int]]:
896
+ """
897
+ The maximum space, in bytes, to use for snapshots.
898
+ """
899
+ return pulumi.get(self, "local_max_space")
900
+
901
+ @local_max_space.setter
902
+ def local_max_space(self, value: Optional[pulumi.Input[_builtins.int]]):
903
+ pulumi.set(self, "local_max_space", value)
904
+
905
+ @_builtins.property
906
+ @pulumi.getter
907
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
908
+ """
909
+ `<required>` – Name of the configuration to modify.
910
+ """
911
+ return pulumi.get(self, "name")
912
+
913
+ @name.setter
914
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
915
+ pulumi.set(self, "name", value)
916
+
917
+ @_builtins.property
918
+ @pulumi.getter
919
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
920
+ """
921
+ The namespace to provision the resource in.
922
+ The value should not contain leading or trailing forward slashes.
923
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
924
+ *Available only for Vault Enterprise*.
925
+ """
926
+ return pulumi.get(self, "namespace")
927
+
928
+ @namespace.setter
929
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
930
+ pulumi.set(self, "namespace", value)
931
+
932
+ @_builtins.property
933
+ @pulumi.getter(name="pathPrefix")
934
+ def path_prefix(self) -> Optional[pulumi.Input[_builtins.str]]:
935
+ """
936
+ `<required>` - For `storage_type = "local"`, the directory to
937
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
938
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
939
+ Types `local` and `aws-s3` the trailing `/` is optional.
940
+ """
941
+ return pulumi.get(self, "path_prefix")
942
+
943
+ @path_prefix.setter
944
+ def path_prefix(self, value: Optional[pulumi.Input[_builtins.str]]):
945
+ pulumi.set(self, "path_prefix", value)
946
+
947
+ @_builtins.property
948
+ @pulumi.getter
949
+ def retain(self) -> Optional[pulumi.Input[_builtins.int]]:
950
+ """
951
+ How many snapshots are to be kept; when writing a
952
+ snapshot, if there are more snapshots already stored than this number, the
953
+ oldest ones will be deleted.
954
+ """
955
+ return pulumi.get(self, "retain")
956
+
957
+ @retain.setter
958
+ def retain(self, value: Optional[pulumi.Input[_builtins.int]]):
959
+ pulumi.set(self, "retain", value)
960
+
961
+ @_builtins.property
962
+ @pulumi.getter(name="storageType")
963
+ def storage_type(self) -> Optional[pulumi.Input[_builtins.str]]:
964
+ """
965
+ `<required>` - One of "local", "azure-blob", "aws-s3",
966
+ or "google-gcs". The remaining parameters described below are all specific to
967
+ the selected `storage_type` and prefixed accordingly.
968
+ """
969
+ return pulumi.get(self, "storage_type")
970
+
971
+ @storage_type.setter
972
+ def storage_type(self, value: Optional[pulumi.Input[_builtins.str]]):
973
+ pulumi.set(self, "storage_type", value)
974
+
975
+
976
+ @pulumi.type_token("vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig")
977
+ class RaftSnapshotAgentConfig(pulumi.CustomResource):
978
+ @overload
979
+ def __init__(__self__,
980
+ resource_name: str,
981
+ opts: Optional[pulumi.ResourceOptions] = None,
982
+ aws_access_key_id: Optional[pulumi.Input[_builtins.str]] = None,
983
+ aws_s3_bucket: Optional[pulumi.Input[_builtins.str]] = None,
984
+ aws_s3_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
985
+ aws_s3_enable_kms: Optional[pulumi.Input[_builtins.bool]] = None,
986
+ aws_s3_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
987
+ aws_s3_force_path_style: Optional[pulumi.Input[_builtins.bool]] = None,
988
+ aws_s3_kms_key: Optional[pulumi.Input[_builtins.str]] = None,
989
+ aws_s3_region: Optional[pulumi.Input[_builtins.str]] = None,
990
+ aws_s3_server_side_encryption: Optional[pulumi.Input[_builtins.bool]] = None,
991
+ aws_secret_access_key: Optional[pulumi.Input[_builtins.str]] = None,
992
+ aws_session_token: Optional[pulumi.Input[_builtins.str]] = None,
993
+ azure_account_key: Optional[pulumi.Input[_builtins.str]] = None,
994
+ azure_account_name: Optional[pulumi.Input[_builtins.str]] = None,
995
+ azure_blob_environment: Optional[pulumi.Input[_builtins.str]] = None,
996
+ azure_container_name: Optional[pulumi.Input[_builtins.str]] = None,
997
+ azure_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
998
+ file_prefix: Optional[pulumi.Input[_builtins.str]] = None,
999
+ google_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
1000
+ google_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1001
+ google_gcs_bucket: Optional[pulumi.Input[_builtins.str]] = None,
1002
+ google_service_account_key: Optional[pulumi.Input[_builtins.str]] = None,
1003
+ interval_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1004
+ local_max_space: Optional[pulumi.Input[_builtins.int]] = None,
1005
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1006
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1007
+ path_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1008
+ retain: Optional[pulumi.Input[_builtins.int]] = None,
1009
+ storage_type: Optional[pulumi.Input[_builtins.str]] = None,
1010
+ __props__=None):
1011
+ """
1012
+ ## Example Usage
1013
+
1014
+ ### Local Storage
1015
+ ```python
1016
+ import pulumi
1017
+ import pulumi_vault as vault
1018
+
1019
+ local_backups = vault.RaftSnapshotAgentConfig("local_backups",
1020
+ name="local",
1021
+ interval_seconds=86400,
1022
+ retain=7,
1023
+ path_prefix="/opt/vault/snapshots/",
1024
+ storage_type="local",
1025
+ local_max_space=10000000)
1026
+ ```
1027
+
1028
+ ### Azure BLOB
1029
+
1030
+ ```python
1031
+ import pulumi
1032
+ import pulumi_vault as vault
1033
+
1034
+ config = pulumi.Config()
1035
+ azure_account_name = config.require_object("azureAccountName")
1036
+ azure_account_key = config.require_object("azureAccountKey")
1037
+ azure_backups = vault.RaftSnapshotAgentConfig("azure_backups",
1038
+ name="azure_backup",
1039
+ interval_seconds=86400,
1040
+ retain=7,
1041
+ path_prefix="/",
1042
+ storage_type="azure-blob",
1043
+ azure_container_name="vault-blob",
1044
+ azure_account_name=azure_account_name,
1045
+ azure_account_key=azure_account_key)
1046
+ ```
1047
+
1048
+ ## Import
1049
+
1050
+ Raft Snapshot Agent Configurations can be imported using the `name`, e.g.
1051
+
1052
+ ```sh
1053
+ $ pulumi import vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig local local
1054
+ ```
1055
+
1056
+ :param str resource_name: The name of the resource.
1057
+ :param pulumi.ResourceOptions opts: Options for the resource.
1058
+ :param pulumi.Input[_builtins.str] aws_access_key_id: AWS access key ID.
1059
+ :param pulumi.Input[_builtins.str] aws_s3_bucket: S3 bucket to write snapshots to.
1060
+ :param pulumi.Input[_builtins.bool] aws_s3_disable_tls: Disable TLS for the S3 endpoint. This should only be used for testing purposes.
1061
+ :param pulumi.Input[_builtins.bool] aws_s3_enable_kms: Use KMS to encrypt bucket contents.
1062
+ :param pulumi.Input[_builtins.str] aws_s3_endpoint: AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
1063
+ :param pulumi.Input[_builtins.bool] aws_s3_force_path_style: Use the endpoint/bucket URL style instead of bucket.endpoint.
1064
+ :param pulumi.Input[_builtins.str] aws_s3_kms_key: Use named KMS key, when aws_s3_enable_kms=true
1065
+ :param pulumi.Input[_builtins.str] aws_s3_region: AWS region bucket is in.
1066
+ :param pulumi.Input[_builtins.bool] aws_s3_server_side_encryption: Use AES256 to encrypt bucket contents.
1067
+ :param pulumi.Input[_builtins.str] aws_secret_access_key: AWS secret access key.
1068
+ :param pulumi.Input[_builtins.str] aws_session_token: AWS session token.
1069
+ :param pulumi.Input[_builtins.str] azure_account_key: Azure account key.
1070
+ :param pulumi.Input[_builtins.str] azure_account_name: Azure account name.
1071
+ :param pulumi.Input[_builtins.str] azure_blob_environment: Azure blob environment.
1072
+ :param pulumi.Input[_builtins.str] azure_container_name: Azure container name to write snapshots to.
1073
+ :param pulumi.Input[_builtins.str] azure_endpoint: Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
1074
+ :param pulumi.Input[_builtins.str] file_prefix: Within the directory or bucket
1075
+ prefix given by `path_prefix`, the file or object name of snapshot files
1076
+ will start with this string.
1077
+ :param pulumi.Input[_builtins.bool] google_disable_tls: Disable TLS for the GCS endpoint.
1078
+ :param pulumi.Input[_builtins.str] google_endpoint: GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
1079
+ :param pulumi.Input[_builtins.str] google_gcs_bucket: GCS bucket to write snapshots to.
1080
+ :param pulumi.Input[_builtins.str] google_service_account_key: Google service account key in JSON format.
1081
+ :param pulumi.Input[_builtins.int] interval_seconds: `<required>` - Time (in seconds) between snapshots.
1082
+ :param pulumi.Input[_builtins.int] local_max_space: The maximum space, in bytes, to use for snapshots.
1083
+ :param pulumi.Input[_builtins.str] name: `<required>` – Name of the configuration to modify.
1084
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1085
+ The value should not contain leading or trailing forward slashes.
1086
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1087
+ *Available only for Vault Enterprise*.
1088
+ :param pulumi.Input[_builtins.str] path_prefix: `<required>` - For `storage_type = "local"`, the directory to
1089
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
1090
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
1091
+ Types `local` and `aws-s3` the trailing `/` is optional.
1092
+ :param pulumi.Input[_builtins.int] retain: How many snapshots are to be kept; when writing a
1093
+ snapshot, if there are more snapshots already stored than this number, the
1094
+ oldest ones will be deleted.
1095
+ :param pulumi.Input[_builtins.str] storage_type: `<required>` - One of "local", "azure-blob", "aws-s3",
1096
+ or "google-gcs". The remaining parameters described below are all specific to
1097
+ the selected `storage_type` and prefixed accordingly.
1098
+ """
1099
+ ...
1100
+ @overload
1101
+ def __init__(__self__,
1102
+ resource_name: str,
1103
+ args: RaftSnapshotAgentConfigArgs,
1104
+ opts: Optional[pulumi.ResourceOptions] = None):
1105
+ """
1106
+ ## Example Usage
1107
+
1108
+ ### Local Storage
1109
+ ```python
1110
+ import pulumi
1111
+ import pulumi_vault as vault
1112
+
1113
+ local_backups = vault.RaftSnapshotAgentConfig("local_backups",
1114
+ name="local",
1115
+ interval_seconds=86400,
1116
+ retain=7,
1117
+ path_prefix="/opt/vault/snapshots/",
1118
+ storage_type="local",
1119
+ local_max_space=10000000)
1120
+ ```
1121
+
1122
+ ### Azure BLOB
1123
+
1124
+ ```python
1125
+ import pulumi
1126
+ import pulumi_vault as vault
1127
+
1128
+ config = pulumi.Config()
1129
+ azure_account_name = config.require_object("azureAccountName")
1130
+ azure_account_key = config.require_object("azureAccountKey")
1131
+ azure_backups = vault.RaftSnapshotAgentConfig("azure_backups",
1132
+ name="azure_backup",
1133
+ interval_seconds=86400,
1134
+ retain=7,
1135
+ path_prefix="/",
1136
+ storage_type="azure-blob",
1137
+ azure_container_name="vault-blob",
1138
+ azure_account_name=azure_account_name,
1139
+ azure_account_key=azure_account_key)
1140
+ ```
1141
+
1142
+ ## Import
1143
+
1144
+ Raft Snapshot Agent Configurations can be imported using the `name`, e.g.
1145
+
1146
+ ```sh
1147
+ $ pulumi import vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig local local
1148
+ ```
1149
+
1150
+ :param str resource_name: The name of the resource.
1151
+ :param RaftSnapshotAgentConfigArgs args: The arguments to use to populate this resource's properties.
1152
+ :param pulumi.ResourceOptions opts: Options for the resource.
1153
+ """
1154
+ ...
1155
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1156
+ resource_args, opts = _utilities.get_resource_args_opts(RaftSnapshotAgentConfigArgs, pulumi.ResourceOptions, *args, **kwargs)
1157
+ if resource_args is not None:
1158
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1159
+ else:
1160
+ __self__._internal_init(resource_name, *args, **kwargs)
1161
+
1162
+ def _internal_init(__self__,
1163
+ resource_name: str,
1164
+ opts: Optional[pulumi.ResourceOptions] = None,
1165
+ aws_access_key_id: Optional[pulumi.Input[_builtins.str]] = None,
1166
+ aws_s3_bucket: Optional[pulumi.Input[_builtins.str]] = None,
1167
+ aws_s3_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
1168
+ aws_s3_enable_kms: Optional[pulumi.Input[_builtins.bool]] = None,
1169
+ aws_s3_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1170
+ aws_s3_force_path_style: Optional[pulumi.Input[_builtins.bool]] = None,
1171
+ aws_s3_kms_key: Optional[pulumi.Input[_builtins.str]] = None,
1172
+ aws_s3_region: Optional[pulumi.Input[_builtins.str]] = None,
1173
+ aws_s3_server_side_encryption: Optional[pulumi.Input[_builtins.bool]] = None,
1174
+ aws_secret_access_key: Optional[pulumi.Input[_builtins.str]] = None,
1175
+ aws_session_token: Optional[pulumi.Input[_builtins.str]] = None,
1176
+ azure_account_key: Optional[pulumi.Input[_builtins.str]] = None,
1177
+ azure_account_name: Optional[pulumi.Input[_builtins.str]] = None,
1178
+ azure_blob_environment: Optional[pulumi.Input[_builtins.str]] = None,
1179
+ azure_container_name: Optional[pulumi.Input[_builtins.str]] = None,
1180
+ azure_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1181
+ file_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1182
+ google_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
1183
+ google_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1184
+ google_gcs_bucket: Optional[pulumi.Input[_builtins.str]] = None,
1185
+ google_service_account_key: Optional[pulumi.Input[_builtins.str]] = None,
1186
+ interval_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1187
+ local_max_space: Optional[pulumi.Input[_builtins.int]] = None,
1188
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1189
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1190
+ path_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1191
+ retain: Optional[pulumi.Input[_builtins.int]] = None,
1192
+ storage_type: Optional[pulumi.Input[_builtins.str]] = None,
1193
+ __props__=None):
1194
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1195
+ if not isinstance(opts, pulumi.ResourceOptions):
1196
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1197
+ if opts.id is None:
1198
+ if __props__ is not None:
1199
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1200
+ __props__ = RaftSnapshotAgentConfigArgs.__new__(RaftSnapshotAgentConfigArgs)
1201
+
1202
+ __props__.__dict__["aws_access_key_id"] = aws_access_key_id
1203
+ __props__.__dict__["aws_s3_bucket"] = aws_s3_bucket
1204
+ __props__.__dict__["aws_s3_disable_tls"] = aws_s3_disable_tls
1205
+ __props__.__dict__["aws_s3_enable_kms"] = aws_s3_enable_kms
1206
+ __props__.__dict__["aws_s3_endpoint"] = aws_s3_endpoint
1207
+ __props__.__dict__["aws_s3_force_path_style"] = aws_s3_force_path_style
1208
+ __props__.__dict__["aws_s3_kms_key"] = aws_s3_kms_key
1209
+ __props__.__dict__["aws_s3_region"] = aws_s3_region
1210
+ __props__.__dict__["aws_s3_server_side_encryption"] = aws_s3_server_side_encryption
1211
+ __props__.__dict__["aws_secret_access_key"] = aws_secret_access_key
1212
+ __props__.__dict__["aws_session_token"] = aws_session_token
1213
+ __props__.__dict__["azure_account_key"] = azure_account_key
1214
+ __props__.__dict__["azure_account_name"] = azure_account_name
1215
+ __props__.__dict__["azure_blob_environment"] = azure_blob_environment
1216
+ __props__.__dict__["azure_container_name"] = azure_container_name
1217
+ __props__.__dict__["azure_endpoint"] = azure_endpoint
1218
+ __props__.__dict__["file_prefix"] = file_prefix
1219
+ __props__.__dict__["google_disable_tls"] = google_disable_tls
1220
+ __props__.__dict__["google_endpoint"] = google_endpoint
1221
+ __props__.__dict__["google_gcs_bucket"] = google_gcs_bucket
1222
+ __props__.__dict__["google_service_account_key"] = google_service_account_key
1223
+ if interval_seconds is None and not opts.urn:
1224
+ raise TypeError("Missing required property 'interval_seconds'")
1225
+ __props__.__dict__["interval_seconds"] = interval_seconds
1226
+ __props__.__dict__["local_max_space"] = local_max_space
1227
+ __props__.__dict__["name"] = name
1228
+ __props__.__dict__["namespace"] = namespace
1229
+ if path_prefix is None and not opts.urn:
1230
+ raise TypeError("Missing required property 'path_prefix'")
1231
+ __props__.__dict__["path_prefix"] = path_prefix
1232
+ __props__.__dict__["retain"] = retain
1233
+ if storage_type is None and not opts.urn:
1234
+ raise TypeError("Missing required property 'storage_type'")
1235
+ __props__.__dict__["storage_type"] = storage_type
1236
+ super(RaftSnapshotAgentConfig, __self__).__init__(
1237
+ 'vault:index/raftSnapshotAgentConfig:RaftSnapshotAgentConfig',
1238
+ resource_name,
1239
+ __props__,
1240
+ opts)
1241
+
1242
+ @staticmethod
1243
+ def get(resource_name: str,
1244
+ id: pulumi.Input[str],
1245
+ opts: Optional[pulumi.ResourceOptions] = None,
1246
+ aws_access_key_id: Optional[pulumi.Input[_builtins.str]] = None,
1247
+ aws_s3_bucket: Optional[pulumi.Input[_builtins.str]] = None,
1248
+ aws_s3_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
1249
+ aws_s3_enable_kms: Optional[pulumi.Input[_builtins.bool]] = None,
1250
+ aws_s3_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1251
+ aws_s3_force_path_style: Optional[pulumi.Input[_builtins.bool]] = None,
1252
+ aws_s3_kms_key: Optional[pulumi.Input[_builtins.str]] = None,
1253
+ aws_s3_region: Optional[pulumi.Input[_builtins.str]] = None,
1254
+ aws_s3_server_side_encryption: Optional[pulumi.Input[_builtins.bool]] = None,
1255
+ aws_secret_access_key: Optional[pulumi.Input[_builtins.str]] = None,
1256
+ aws_session_token: Optional[pulumi.Input[_builtins.str]] = None,
1257
+ azure_account_key: Optional[pulumi.Input[_builtins.str]] = None,
1258
+ azure_account_name: Optional[pulumi.Input[_builtins.str]] = None,
1259
+ azure_blob_environment: Optional[pulumi.Input[_builtins.str]] = None,
1260
+ azure_container_name: Optional[pulumi.Input[_builtins.str]] = None,
1261
+ azure_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1262
+ file_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1263
+ google_disable_tls: Optional[pulumi.Input[_builtins.bool]] = None,
1264
+ google_endpoint: Optional[pulumi.Input[_builtins.str]] = None,
1265
+ google_gcs_bucket: Optional[pulumi.Input[_builtins.str]] = None,
1266
+ google_service_account_key: Optional[pulumi.Input[_builtins.str]] = None,
1267
+ interval_seconds: Optional[pulumi.Input[_builtins.int]] = None,
1268
+ local_max_space: Optional[pulumi.Input[_builtins.int]] = None,
1269
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1270
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1271
+ path_prefix: Optional[pulumi.Input[_builtins.str]] = None,
1272
+ retain: Optional[pulumi.Input[_builtins.int]] = None,
1273
+ storage_type: Optional[pulumi.Input[_builtins.str]] = None) -> 'RaftSnapshotAgentConfig':
1274
+ """
1275
+ Get an existing RaftSnapshotAgentConfig resource's state with the given name, id, and optional extra
1276
+ properties used to qualify the lookup.
1277
+
1278
+ :param str resource_name: The unique name of the resulting resource.
1279
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1280
+ :param pulumi.ResourceOptions opts: Options for the resource.
1281
+ :param pulumi.Input[_builtins.str] aws_access_key_id: AWS access key ID.
1282
+ :param pulumi.Input[_builtins.str] aws_s3_bucket: S3 bucket to write snapshots to.
1283
+ :param pulumi.Input[_builtins.bool] aws_s3_disable_tls: Disable TLS for the S3 endpoint. This should only be used for testing purposes.
1284
+ :param pulumi.Input[_builtins.bool] aws_s3_enable_kms: Use KMS to encrypt bucket contents.
1285
+ :param pulumi.Input[_builtins.str] aws_s3_endpoint: AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
1286
+ :param pulumi.Input[_builtins.bool] aws_s3_force_path_style: Use the endpoint/bucket URL style instead of bucket.endpoint.
1287
+ :param pulumi.Input[_builtins.str] aws_s3_kms_key: Use named KMS key, when aws_s3_enable_kms=true
1288
+ :param pulumi.Input[_builtins.str] aws_s3_region: AWS region bucket is in.
1289
+ :param pulumi.Input[_builtins.bool] aws_s3_server_side_encryption: Use AES256 to encrypt bucket contents.
1290
+ :param pulumi.Input[_builtins.str] aws_secret_access_key: AWS secret access key.
1291
+ :param pulumi.Input[_builtins.str] aws_session_token: AWS session token.
1292
+ :param pulumi.Input[_builtins.str] azure_account_key: Azure account key.
1293
+ :param pulumi.Input[_builtins.str] azure_account_name: Azure account name.
1294
+ :param pulumi.Input[_builtins.str] azure_blob_environment: Azure blob environment.
1295
+ :param pulumi.Input[_builtins.str] azure_container_name: Azure container name to write snapshots to.
1296
+ :param pulumi.Input[_builtins.str] azure_endpoint: Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
1297
+ :param pulumi.Input[_builtins.str] file_prefix: Within the directory or bucket
1298
+ prefix given by `path_prefix`, the file or object name of snapshot files
1299
+ will start with this string.
1300
+ :param pulumi.Input[_builtins.bool] google_disable_tls: Disable TLS for the GCS endpoint.
1301
+ :param pulumi.Input[_builtins.str] google_endpoint: GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
1302
+ :param pulumi.Input[_builtins.str] google_gcs_bucket: GCS bucket to write snapshots to.
1303
+ :param pulumi.Input[_builtins.str] google_service_account_key: Google service account key in JSON format.
1304
+ :param pulumi.Input[_builtins.int] interval_seconds: `<required>` - Time (in seconds) between snapshots.
1305
+ :param pulumi.Input[_builtins.int] local_max_space: The maximum space, in bytes, to use for snapshots.
1306
+ :param pulumi.Input[_builtins.str] name: `<required>` – Name of the configuration to modify.
1307
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1308
+ The value should not contain leading or trailing forward slashes.
1309
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1310
+ *Available only for Vault Enterprise*.
1311
+ :param pulumi.Input[_builtins.str] path_prefix: `<required>` - For `storage_type = "local"`, the directory to
1312
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
1313
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
1314
+ Types `local` and `aws-s3` the trailing `/` is optional.
1315
+ :param pulumi.Input[_builtins.int] retain: How many snapshots are to be kept; when writing a
1316
+ snapshot, if there are more snapshots already stored than this number, the
1317
+ oldest ones will be deleted.
1318
+ :param pulumi.Input[_builtins.str] storage_type: `<required>` - One of "local", "azure-blob", "aws-s3",
1319
+ or "google-gcs". The remaining parameters described below are all specific to
1320
+ the selected `storage_type` and prefixed accordingly.
1321
+ """
1322
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1323
+
1324
+ __props__ = _RaftSnapshotAgentConfigState.__new__(_RaftSnapshotAgentConfigState)
1325
+
1326
+ __props__.__dict__["aws_access_key_id"] = aws_access_key_id
1327
+ __props__.__dict__["aws_s3_bucket"] = aws_s3_bucket
1328
+ __props__.__dict__["aws_s3_disable_tls"] = aws_s3_disable_tls
1329
+ __props__.__dict__["aws_s3_enable_kms"] = aws_s3_enable_kms
1330
+ __props__.__dict__["aws_s3_endpoint"] = aws_s3_endpoint
1331
+ __props__.__dict__["aws_s3_force_path_style"] = aws_s3_force_path_style
1332
+ __props__.__dict__["aws_s3_kms_key"] = aws_s3_kms_key
1333
+ __props__.__dict__["aws_s3_region"] = aws_s3_region
1334
+ __props__.__dict__["aws_s3_server_side_encryption"] = aws_s3_server_side_encryption
1335
+ __props__.__dict__["aws_secret_access_key"] = aws_secret_access_key
1336
+ __props__.__dict__["aws_session_token"] = aws_session_token
1337
+ __props__.__dict__["azure_account_key"] = azure_account_key
1338
+ __props__.__dict__["azure_account_name"] = azure_account_name
1339
+ __props__.__dict__["azure_blob_environment"] = azure_blob_environment
1340
+ __props__.__dict__["azure_container_name"] = azure_container_name
1341
+ __props__.__dict__["azure_endpoint"] = azure_endpoint
1342
+ __props__.__dict__["file_prefix"] = file_prefix
1343
+ __props__.__dict__["google_disable_tls"] = google_disable_tls
1344
+ __props__.__dict__["google_endpoint"] = google_endpoint
1345
+ __props__.__dict__["google_gcs_bucket"] = google_gcs_bucket
1346
+ __props__.__dict__["google_service_account_key"] = google_service_account_key
1347
+ __props__.__dict__["interval_seconds"] = interval_seconds
1348
+ __props__.__dict__["local_max_space"] = local_max_space
1349
+ __props__.__dict__["name"] = name
1350
+ __props__.__dict__["namespace"] = namespace
1351
+ __props__.__dict__["path_prefix"] = path_prefix
1352
+ __props__.__dict__["retain"] = retain
1353
+ __props__.__dict__["storage_type"] = storage_type
1354
+ return RaftSnapshotAgentConfig(resource_name, opts=opts, __props__=__props__)
1355
+
1356
+ @_builtins.property
1357
+ @pulumi.getter(name="awsAccessKeyId")
1358
+ def aws_access_key_id(self) -> pulumi.Output[Optional[_builtins.str]]:
1359
+ """
1360
+ AWS access key ID.
1361
+ """
1362
+ return pulumi.get(self, "aws_access_key_id")
1363
+
1364
+ @_builtins.property
1365
+ @pulumi.getter(name="awsS3Bucket")
1366
+ def aws_s3_bucket(self) -> pulumi.Output[Optional[_builtins.str]]:
1367
+ """
1368
+ S3 bucket to write snapshots to.
1369
+ """
1370
+ return pulumi.get(self, "aws_s3_bucket")
1371
+
1372
+ @_builtins.property
1373
+ @pulumi.getter(name="awsS3DisableTls")
1374
+ def aws_s3_disable_tls(self) -> pulumi.Output[Optional[_builtins.bool]]:
1375
+ """
1376
+ Disable TLS for the S3 endpoint. This should only be used for testing purposes.
1377
+ """
1378
+ return pulumi.get(self, "aws_s3_disable_tls")
1379
+
1380
+ @_builtins.property
1381
+ @pulumi.getter(name="awsS3EnableKms")
1382
+ def aws_s3_enable_kms(self) -> pulumi.Output[Optional[_builtins.bool]]:
1383
+ """
1384
+ Use KMS to encrypt bucket contents.
1385
+ """
1386
+ return pulumi.get(self, "aws_s3_enable_kms")
1387
+
1388
+ @_builtins.property
1389
+ @pulumi.getter(name="awsS3Endpoint")
1390
+ def aws_s3_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1391
+ """
1392
+ AWS endpoint. This is typically only set when using a non-AWS S3 implementation like Minio.
1393
+ """
1394
+ return pulumi.get(self, "aws_s3_endpoint")
1395
+
1396
+ @_builtins.property
1397
+ @pulumi.getter(name="awsS3ForcePathStyle")
1398
+ def aws_s3_force_path_style(self) -> pulumi.Output[Optional[_builtins.bool]]:
1399
+ """
1400
+ Use the endpoint/bucket URL style instead of bucket.endpoint.
1401
+ """
1402
+ return pulumi.get(self, "aws_s3_force_path_style")
1403
+
1404
+ @_builtins.property
1405
+ @pulumi.getter(name="awsS3KmsKey")
1406
+ def aws_s3_kms_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1407
+ """
1408
+ Use named KMS key, when aws_s3_enable_kms=true
1409
+ """
1410
+ return pulumi.get(self, "aws_s3_kms_key")
1411
+
1412
+ @_builtins.property
1413
+ @pulumi.getter(name="awsS3Region")
1414
+ def aws_s3_region(self) -> pulumi.Output[Optional[_builtins.str]]:
1415
+ """
1416
+ AWS region bucket is in.
1417
+ """
1418
+ return pulumi.get(self, "aws_s3_region")
1419
+
1420
+ @_builtins.property
1421
+ @pulumi.getter(name="awsS3ServerSideEncryption")
1422
+ def aws_s3_server_side_encryption(self) -> pulumi.Output[Optional[_builtins.bool]]:
1423
+ """
1424
+ Use AES256 to encrypt bucket contents.
1425
+ """
1426
+ return pulumi.get(self, "aws_s3_server_side_encryption")
1427
+
1428
+ @_builtins.property
1429
+ @pulumi.getter(name="awsSecretAccessKey")
1430
+ def aws_secret_access_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1431
+ """
1432
+ AWS secret access key.
1433
+ """
1434
+ return pulumi.get(self, "aws_secret_access_key")
1435
+
1436
+ @_builtins.property
1437
+ @pulumi.getter(name="awsSessionToken")
1438
+ def aws_session_token(self) -> pulumi.Output[Optional[_builtins.str]]:
1439
+ """
1440
+ AWS session token.
1441
+ """
1442
+ return pulumi.get(self, "aws_session_token")
1443
+
1444
+ @_builtins.property
1445
+ @pulumi.getter(name="azureAccountKey")
1446
+ def azure_account_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1447
+ """
1448
+ Azure account key.
1449
+ """
1450
+ return pulumi.get(self, "azure_account_key")
1451
+
1452
+ @_builtins.property
1453
+ @pulumi.getter(name="azureAccountName")
1454
+ def azure_account_name(self) -> pulumi.Output[Optional[_builtins.str]]:
1455
+ """
1456
+ Azure account name.
1457
+ """
1458
+ return pulumi.get(self, "azure_account_name")
1459
+
1460
+ @_builtins.property
1461
+ @pulumi.getter(name="azureBlobEnvironment")
1462
+ def azure_blob_environment(self) -> pulumi.Output[Optional[_builtins.str]]:
1463
+ """
1464
+ Azure blob environment.
1465
+ """
1466
+ return pulumi.get(self, "azure_blob_environment")
1467
+
1468
+ @_builtins.property
1469
+ @pulumi.getter(name="azureContainerName")
1470
+ def azure_container_name(self) -> pulumi.Output[Optional[_builtins.str]]:
1471
+ """
1472
+ Azure container name to write snapshots to.
1473
+ """
1474
+ return pulumi.get(self, "azure_container_name")
1475
+
1476
+ @_builtins.property
1477
+ @pulumi.getter(name="azureEndpoint")
1478
+ def azure_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1479
+ """
1480
+ Azure blob storage endpoint. This is typically only set when using a non-Azure implementation like Azurite.
1481
+ """
1482
+ return pulumi.get(self, "azure_endpoint")
1483
+
1484
+ @_builtins.property
1485
+ @pulumi.getter(name="filePrefix")
1486
+ def file_prefix(self) -> pulumi.Output[Optional[_builtins.str]]:
1487
+ """
1488
+ Within the directory or bucket
1489
+ prefix given by `path_prefix`, the file or object name of snapshot files
1490
+ will start with this string.
1491
+ """
1492
+ return pulumi.get(self, "file_prefix")
1493
+
1494
+ @_builtins.property
1495
+ @pulumi.getter(name="googleDisableTls")
1496
+ def google_disable_tls(self) -> pulumi.Output[Optional[_builtins.bool]]:
1497
+ """
1498
+ Disable TLS for the GCS endpoint.
1499
+ """
1500
+ return pulumi.get(self, "google_disable_tls")
1501
+
1502
+ @_builtins.property
1503
+ @pulumi.getter(name="googleEndpoint")
1504
+ def google_endpoint(self) -> pulumi.Output[Optional[_builtins.str]]:
1505
+ """
1506
+ GCS endpoint. This is typically only set when using a non-Google GCS implementation like fake-gcs-server.
1507
+ """
1508
+ return pulumi.get(self, "google_endpoint")
1509
+
1510
+ @_builtins.property
1511
+ @pulumi.getter(name="googleGcsBucket")
1512
+ def google_gcs_bucket(self) -> pulumi.Output[Optional[_builtins.str]]:
1513
+ """
1514
+ GCS bucket to write snapshots to.
1515
+ """
1516
+ return pulumi.get(self, "google_gcs_bucket")
1517
+
1518
+ @_builtins.property
1519
+ @pulumi.getter(name="googleServiceAccountKey")
1520
+ def google_service_account_key(self) -> pulumi.Output[Optional[_builtins.str]]:
1521
+ """
1522
+ Google service account key in JSON format.
1523
+ """
1524
+ return pulumi.get(self, "google_service_account_key")
1525
+
1526
+ @_builtins.property
1527
+ @pulumi.getter(name="intervalSeconds")
1528
+ def interval_seconds(self) -> pulumi.Output[_builtins.int]:
1529
+ """
1530
+ `<required>` - Time (in seconds) between snapshots.
1531
+ """
1532
+ return pulumi.get(self, "interval_seconds")
1533
+
1534
+ @_builtins.property
1535
+ @pulumi.getter(name="localMaxSpace")
1536
+ def local_max_space(self) -> pulumi.Output[Optional[_builtins.int]]:
1537
+ """
1538
+ The maximum space, in bytes, to use for snapshots.
1539
+ """
1540
+ return pulumi.get(self, "local_max_space")
1541
+
1542
+ @_builtins.property
1543
+ @pulumi.getter
1544
+ def name(self) -> pulumi.Output[_builtins.str]:
1545
+ """
1546
+ `<required>` – Name of the configuration to modify.
1547
+ """
1548
+ return pulumi.get(self, "name")
1549
+
1550
+ @_builtins.property
1551
+ @pulumi.getter
1552
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
1553
+ """
1554
+ The namespace to provision the resource in.
1555
+ The value should not contain leading or trailing forward slashes.
1556
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1557
+ *Available only for Vault Enterprise*.
1558
+ """
1559
+ return pulumi.get(self, "namespace")
1560
+
1561
+ @_builtins.property
1562
+ @pulumi.getter(name="pathPrefix")
1563
+ def path_prefix(self) -> pulumi.Output[_builtins.str]:
1564
+ """
1565
+ `<required>` - For `storage_type = "local"`, the directory to
1566
+ write the snapshots in. For cloud storage types, the bucket prefix to use.
1567
+ Types `azure-s3` and `google-gcs` require a trailing `/` (slash).
1568
+ Types `local` and `aws-s3` the trailing `/` is optional.
1569
+ """
1570
+ return pulumi.get(self, "path_prefix")
1571
+
1572
+ @_builtins.property
1573
+ @pulumi.getter
1574
+ def retain(self) -> pulumi.Output[Optional[_builtins.int]]:
1575
+ """
1576
+ How many snapshots are to be kept; when writing a
1577
+ snapshot, if there are more snapshots already stored than this number, the
1578
+ oldest ones will be deleted.
1579
+ """
1580
+ return pulumi.get(self, "retain")
1581
+
1582
+ @_builtins.property
1583
+ @pulumi.getter(name="storageType")
1584
+ def storage_type(self) -> pulumi.Output[_builtins.str]:
1585
+ """
1586
+ `<required>` - One of "local", "azure-blob", "aws-s3",
1587
+ or "google-gcs". The remaining parameters described below are all specific to
1588
+ the selected `storage_type` and prefixed accordingly.
1589
+ """
1590
+ return pulumi.get(self, "storage_type")
1591
+