From a82979d1450a5ea0db7a66afab2e8801b450e19f Mon Sep 17 00:00:00 2001 From: Frode Nordahl Date: Mon, 30 Sep 2019 15:24:21 +0200 Subject: [PATCH] vault: Await execution prior to validation step Make it possible for consumers of the ``auto_initialize_no_validation`` function to execute subsequent setup and test code that require vault and the consumers of the ``certificates`` relation to be ready. With the current order of execution, it is not possible to use the configure function in models where ``keystone`` application is not present. --- zaza/openstack/charm_tests/vault/setup.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/zaza/openstack/charm_tests/vault/setup.py b/zaza/openstack/charm_tests/vault/setup.py index ca97bf0..efb3a8d 100644 --- a/zaza/openstack/charm_tests/vault/setup.py +++ b/zaza/openstack/charm_tests/vault/setup.py @@ -83,6 +83,11 @@ def auto_initialize(cacert=None, validation_application='keystone'): root_ca=cacertificate, allowed_domains='openstack.local') + zaza.model.wait_for_agent_status() + test_config = lifecycle_utils.get_charm_config() + zaza.model.wait_for_application_states( + states=test_config.get('target_deploy_status', {})) + if validation_application: validate_ca(cacertificate, application=validation_application) # Once validation has completed restart nova-compute to work around @@ -120,9 +125,6 @@ def validate_ca(cacertificate, application="keystone", port=5000): application, zaza.openstack.utilities.openstack.KEYSTONE_REMOTE_CACERT, cacertificate.decode().strip()) - test_config = lifecycle_utils.get_charm_config() - zaza.model.wait_for_application_states( - states=test_config.get('target_deploy_status', {})) vip = (zaza.model.get_application_config(application) .get("vip").get("value")) if vip: