From 0e4456ae3ac8669b277f96546ef957582e5d11f5 Mon Sep 17 00:00:00 2001 From: Olivier Bourdon Date: Thu, 1 Feb 2018 11:32:09 +0100 Subject: [PATCH] Fix for proper deployment when keystone enabled and minimal OS Due to the fact that the openstack CLI can not be found on the minimal OS (Ubuntu Xenial + OpenSSH server ~ 363 packages) and that some tasks related to Keystone use this utility it should be installed like the other Ironic CLIs Change-Id: I3c2056cd1fe8551ca7dcb7f122e8982d5f9301a5 Closes-Bug: #1747349 --- doc/source/install/keystone.rst | 6 ++++-- .../roles/bifrost-keystone-install/tasks/install.yml | 8 ++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/doc/source/install/keystone.rst b/doc/source/install/keystone.rst index 97c1ad3ab..1c8fed608 100644 --- a/doc/source/install/keystone.rst +++ b/doc/source/install/keystone.rst @@ -11,9 +11,11 @@ Installation with Keystone Bifrost can now install and make use of keystone. In order to enable this as part of the installation, the ``enable_keystone`` variable must be set to ``true``, either in ``playbooks/inventory/group_vars/target`` -or on the command line during installation. Example:: +or on the command line during installation. Note that enable_keystone and +noauth_mode are mutually exclusive so they should have an opposite value of +oneanother. Example:: - ansible-playbook -vvvv -i inventory/target install.yaml -e enable_keystone=true + ansible-playbook -vvvv -i inventory/target install.yaml -e enable_keystone=true -e noauth_mode=false However, prior to installation, overriding credentials should be set in order to customize the deployment to meet your needs. diff --git a/playbooks/roles/bifrost-keystone-install/tasks/install.yml b/playbooks/roles/bifrost-keystone-install/tasks/install.yml index d6cef34de..dae6ed42d 100644 --- a/playbooks/roles/bifrost-keystone-install/tasks/install.yml +++ b/playbooks/roles/bifrost-keystone-install/tasks/install.yml @@ -64,6 +64,14 @@ - skip_install is not defined - enable_venv | bool == false +- name: "Install python-openstackclient if not using a venv" + include: pip_install.yml + package=python-openstackclient + extra_args="-c {{ upper_constraints_file }}" + when: + - skip_install is not defined + - enable_venv | bool == false + - name: "Install keystone using pip" include: pip_install.yml package=keystone