commit 71d26d69d513feeecc382c2e4b0700fc95c5120e Author: Mathieu Bultel Date: Wed Oct 7 11:47:04 2020 +0200 Add both validations path for inflight validation The ceph external deploy tasks is using validation modules via mistral. We need to setup the correct new path for mistral in order to get the module. (warn.py) Change-Id: Ide21daaac9a558561d0943cc0a380952cf7e29b3 Resolves: rhbz#1885828 (cherry picked from commit d2b373dc1d7a0cc58aa595d77c9f31e4f8194e66) diff --git a/tripleo_common/actions/ansible.py b/tripleo_common/actions/ansible.py index b1018ec..e3ded4a 100644 --- a/tripleo_common/actions/ansible.py +++ b/tripleo_common/actions/ansible.py @@ -46,33 +46,49 @@ def write_default_ansible_cfg(work_dir, ansible_config_path = os.path.join(work_dir, 'ansible.cfg') shutil.copy(base_ansible_cfg, ansible_config_path) - modules_path = ('/root/.ansible/plugins/modules:' - '/usr/share/ansible/tripleo-plugins/modules:' - '/usr/share/ansible/plugins/modules:' - '/usr/share/ansible-modules:' - '%s/library' % constants.DEFAULT_VALIDATIONS_BASEDIR) + modules_path = ( + '/root/.ansible/plugins/modules:' + '/usr/share/ansible/tripleo-plugins/modules:' + '/usr/share/ansible/plugins/modules:' + '/usr/share/ansible-modules:' + '{}/library:' + '{}/library'.format(constants.DEFAULT_VALIDATIONS_BASEDIR, + constants.DEFAULT_VALIDATIONS_LEGACY_BASEDIR)) lookups_path = ( '/root/.ansible/plugins/lookup:' '/usr/share/ansible/tripleo-plugins/lookup:' '/usr/share/ansible/plugins/lookup:' - '%s/lookup_plugins' % constants.DEFAULT_VALIDATIONS_BASEDIR) + '{}/lookup_plugins:' + '{}/lookup_plugins'.format( + constants.DEFAULT_VALIDATIONS_BASEDIR, + constants.DEFAULT_VALIDATIONS_LEGACY_BASEDIR)) callbacks_path = ( '~/.ansible/plugins/callback:' '/usr/share/ansible/tripleo-plugins/callback:' '/usr/share/ansible/plugins/callback:' - '%s/callback_plugins' % constants.DEFAULT_VALIDATIONS_BASEDIR) + '{}/callback_plugins:' + '{}/callback_plugins'.format( + constants.DEFAULT_VALIDATIONS_BASEDIR, + constants.DEFAULT_VALIDATIONS_LEGACY_BASEDIR)) + callbacks_whitelist = ','.join(['tripleo_dense', 'tripleo_profile_tasks', 'tripleo_states']) action_plugins_path = ( '~/.ansible/plugins/action:' '/usr/share/ansible/plugins/action:' '/usr/share/ansible/tripleo-plugins/action:' - '%s/action_plugins' % constants.DEFAULT_VALIDATIONS_BASEDIR) + '{}/action_plugins:' + '{}/action_plugins'.format( + constants.DEFAULT_VALIDATIONS_BASEDIR, + constants.DEFAULT_VALIDATIONS_LEGACY_BASEDIR)) filter_plugins_path = ( '~/.ansible/plugins/filter:' '/usr/share/ansible/plugins/filter:' '/usr/share/ansible/tripleo-plugins/filter:' - '%s/filter_plugins' % constants.DEFAULT_VALIDATIONS_BASEDIR) + '{}/filter_plugins:' + '{}/filter_plugins'.format( + constants.DEFAULT_VALIDATIONS_BASEDIR, + constants.DEFAULT_VALIDATIONS_LEGACY_BASEDIR)) roles_path = ('%(work_dir)s/roles:' '/root/.ansible/roles:' '/usr/share/ansible/tripleo-roles:' @@ -81,7 +97,8 @@ def write_default_ansible_cfg(work_dir, '%(ooo_val_path)s/roles:' '%(work_dir)s' % { 'work_dir': work_dir, - 'ooo_val_path': constants.DEFAULT_VALIDATIONS_BASEDIR + 'ooo_val_path': + constants.DEFAULT_VALIDATIONS_LEGACY_BASEDIR }) config = configparser.ConfigParser() diff --git a/tripleo_common/constants.py b/tripleo_common/constants.py index 0efea26..4c21dbe 100644 --- a/tripleo_common/constants.py +++ b/tripleo_common/constants.py @@ -57,10 +57,12 @@ DEFAULT_PLAN_ENV_KEY = 'parameter_defaults' DEFAULT_TEMPLATES_PATH = '/usr/share/openstack-tripleo-heat-templates/' #: The path to the base directory of tripleo-validations -DEFAULT_VALIDATIONS_BASEDIR = '/usr/share/openstack-tripleo-validations' +DEFAULT_VALIDATIONS_BASEDIR = "/usr/share/ansible" +DEFAULT_VALIDATIONS_LEGACY_BASEDIR = "/usr/share/openstack-tripleo-validations" # The path to the tripleo validations installed on the undercloud -DEFAULT_VALIDATIONS_PATH = DEFAULT_VALIDATIONS_BASEDIR + '/playbooks/' +DEFAULT_VALIDATIONS_PATH = "{}/validation-playbooks/".format( + DEFAULT_VALIDATIONS_BASEDIR) # The path to the local CA certificate installed on the undercloud LOCAL_CACERT_PATH = '/etc/pki/ca-trust/source/anchors/cm-local-ca.pem' diff --git a/tripleo_common/tests/utils/test_validations.py b/tripleo_common/tests/utils/test_validations.py index 33ac668..2b7fc54 100644 --- a/tripleo_common/tests/utils/test_validations.py +++ b/tripleo_common/tests/utils/test_validations.py @@ -262,7 +262,7 @@ class RunValidationTest(base.TestCase): 'validation_path', 'identity_file', 'plan', - '/usr/share/openstack-tripleo-validations' + '/usr/share/ansible' ) mock_download_validation.assert_called_once_with( mock_get_object_client(), 'plan', 'validation')