openstack-ansible-os_neutron/tasks/plumgrid_config.yml
Jesse Pretorius 5ce4d64150 Change pip install task state to 'latest'
Currently all pip install tasks only require the package to be
present. This means that when an environment undergoes a minor
upgrade the package is not upgraded to the same version that
was tested with. This ultimately results in a deployed
environment that does not match the tested environment.

While for the services installed into venvs this is not an
issue, it does affect those which do not use venvs and any
packages which are installed outside of a venv or on top
of a venv.

This patch changes the behaviour to ensure that the install
task will always use the latest available package. In
developer_mode this will mean using the version specified
in upper-constraints, and in an integrated build this will
mean the version which is available in the wheel repo's
folder for the tag.

Change-Id: I22821cb24642aad4bface0ae0838351cd0cce257
2016-05-04 10:38:50 +01:00

114 lines
3.3 KiB
YAML

---
#
# 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: Setup PLUMlib Neutron Config
config_template:
src: plugins/plumgrid/plumlib.ini
dest: /etc/neutron/plugins/plumgrid/plumlib.ini
owner: "{{ neutron_system_user_name }}"
group: "{{ neutron_system_group_name }}"
config_overrides: "{{ neutron_plumlib_ini_overrides }}"
config_type: "ini"
tags:
- neutron_config
- name: Place pgrc file
template:
src: plugins/plumgrid/pgrc
dest: /etc/neutron/plugins/plumgrid/pgrc
owner: "{{ neutron_system_user_name }}"
group: "{{ neutron_system_group_name }}"
tags:
- neutron_config
- name: Install plumgrid pip packages (venv)
pip:
name: "{{ item }}"
state: latest
virtualenv: "{{ neutron_venv_bin | dirname }}"
virtualenv_site_packages: "no"
extra_args: "{{ pip_install_options|default('') }}"
register: install_packages
until: install_packages|success
ignore_errors: True
retries: 5
delay: 2
with_items:
- "{{ neutron_optional_plumgrid_pip_packages }}"
when:
- neutron_venv_enabled | bool
- inventory_hostname in groups[neutron_services['neutron-server']['group']]
tags:
- neutron-install
- neutron-pip-packages
- name: Install plumgrid pip packages fall back (venv)
pip:
name: "{{ item }}"
state: latest
virtualenv: "{{ neutron_venv_bin | dirname }}"
virtualenv_site_packages: "no"
extra_args: "--isolated"
register: install_packages_fall_back
until: install_packages_fall_back|success
retries: 5
delay: 2
with_items:
- "{{ neutron_optional_plumgrid_pip_packages }}"
when:
- install_packages | failed
- neutron_venv_enabled | bool
- inventory_hostname in groups[neutron_services['neutron-server']['group']]
tags:
- neutron-install
- neutron-pip-packages
- name: Install plumgrid pip packages (no venv)
pip:
name: "{{ item }}"
state: latest
extra_args: "{{ pip_install_options|default('') }}"
register: install_packages
until: install_packages|success
retries: 5
delay: 2
ignore_errors: True
with_items:
- "{{ neutron_optional_plumgrid_pip_packages }}"
when:
- not neutron_venv_enabled | bool
- inventory_hostname in groups[neutron_services['neutron-server']['group']]
tags:
- neutron-install
- neutron-pip-packages
- name: Install plumgrid pip packages fall back (no venv)
pip:
name: "{{ item }}"
state: latest
extra_args: "--isolated"
register: install_packages_fall_back
until: install_packages_fall_back|success
retries: 5
delay: 2
with_items:
- "{{ neutron_optional_plumgrid_pip_packages }}"
when:
- install_packages | failed
- not neutron_venv_enabled | bool
- inventory_hostname in groups[neutron_services['neutron-server']['group']]
tags:
- neutron-install
- neutron-pip-packages