From 34cfe72eadcfcf84eb5160fabfdb421ed47da3ac Mon Sep 17 00:00:00 2001 From: Andy McCrae Date: Mon, 17 Oct 2016 17:32:05 +0100 Subject: [PATCH] Move ironic pip install into it's own path This PR fixes the installation of pip packages for ironic so that we correctly install python-ironicclient when using ironic, and not when using kvm. Change-Id: I829921fb6ff2266cc5293017b290d84573516065 --- defaults/main.yml | 2 ++ tasks/nova_compute.yml | 3 +++ tasks/nova_compute_ironic.yml | 29 +++++++++++++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 tasks/nova_compute_ironic.yml diff --git a/defaults/main.yml b/defaults/main.yml index 38745867..1c4f7bae 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -404,6 +404,8 @@ nova_requires_pip_packages: nova_compute_pip_packages: - libvirt-python + +nova_compute_ironic_pip_packages: - python-ironicclient # Common pip packages diff --git a/tasks/nova_compute.yml b/tasks/nova_compute.yml index 8809c86c..81a17e94 100644 --- a/tasks/nova_compute.yml +++ b/tasks/nova_compute.yml @@ -22,6 +22,9 @@ - include: nova_compute_lxd.yml when: nova_virt_type == 'lxd' +- include: nova_compute_ironic.yml + when: nova_virt_type == 'ironic' + - include: nova_compute_key_populate.yml - include: nova_compute_key_distribute.yml diff --git a/tasks/nova_compute_ironic.yml b/tasks/nova_compute_ironic.yml new file mode 100644 index 00000000..74ad353d --- /dev/null +++ b/tasks/nova_compute_ironic.yml @@ -0,0 +1,29 @@ +--- +# Copyright 2016, Walmart Stores, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +- name: Install pip packages (venv) + pip: + name: "{{ nova_compute_ironic_pip_packages | join(' ') }}" + state: latest + virtualenv: "{{ nova_bin | dirname }}" + virtualenv_site_packages: "no" + extra_args: "{{ pip_install_options_fact|default('') }}" + register: install_packages + until: install_packages|success + retries: 5 + delay: 2 + tags: + - nova-install + - nova-pip-packages