commit 59c5006e3a13350da8947b040365858afda82f93 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 3a65307..5c6fdd6 100644 --- a/tripleo_common/actions/ansible.py +++ b/tripleo_common/actions/ansible.py @@ -46,31 +46,46 @@ 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:' - '%s/library' % constants.DEFAULT_VALIDATIONS_BASEDIR) + modules_path = ( + '/root/.ansible/plugins/modules:' + '/usr/share/ansible/tripleo-plugins/modules:' + '/usr/share/ansible/plugins/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', 'profile_tasks']) 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:' @@ -79,7 +94,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 778c857..fb3bfbc 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 92a9541..6de4fc5 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')