From 278107e3916a3a5929e2bf1867972ec103898597 Mon Sep 17 00:00:00 2001 From: Liam Young Date: Fri, 26 Apr 2019 16:44:15 +0100 Subject: [PATCH] Merge pull request #229 from ChrisMacNaughton/bug/1826542 ensure we have a secret KV backend --- zaza/openstack/charm_tests/vault/tests.py | 1 + zaza/openstack/charm_tests/vault/utils.py | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/zaza/openstack/charm_tests/vault/tests.py b/zaza/openstack/charm_tests/vault/tests.py index 85c729a..800a863 100644 --- a/zaza/openstack/charm_tests/vault/tests.py +++ b/zaza/openstack/charm_tests/vault/tests.py @@ -44,6 +44,7 @@ class BaseVaultTest(unittest.TestCase): cls.vault_creds = vault_utils.get_credentails() vault_utils.unseal_all(cls.clients, cls.vault_creds['keys'][0]) vault_utils.auth_all(cls.clients, cls.vault_creds['root_token']) + vault_utils.ensure_secret_backend(cls.clients[0]) class UnsealVault(BaseVaultTest): diff --git a/zaza/openstack/charm_tests/vault/utils.py b/zaza/openstack/charm_tests/vault/utils.py index f3ccc21..da60cf9 100644 --- a/zaza/openstack/charm_tests/vault/utils.py +++ b/zaza/openstack/charm_tests/vault/utils.py @@ -141,6 +141,22 @@ def is_initialized(client): return initialized +def ensure_secret_backend(client): + """Ensure that vault has a KV backend mounted at secret. + + :param client: Client to use to talk to vault + :type client: CharmVaultClient + """ + try: + client.hvac_client.enable_secret_backend( + backend_type='kv', + description='Charm created KV backend', + mount_point='secret', + options={'version': 1}) + except hvac.exceptions.InvalidRequest: + pass + + def get_credentails(): """Retrieve vault token and keys from unit.