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: I75eb265b9634d7c2524d48212c9a2af2c39dc128
This commit is contained in:
Jesse Pretorius 2016-05-04 09:42:39 +01:00
parent c42d884756
commit 7823efb09c

View File

@ -60,7 +60,7 @@
- name: Install requires pip packages
pip:
name: "{{ item }}"
state: present
state: latest
extra_args: "{{ pip_install_options_fact }}"
register: install_packages
until: install_packages|success
@ -175,7 +175,7 @@
- name: Install pip packages (venv)
pip:
name: "{{ item }}"
state: present
state: latest
virtualenv: "{{ ironic_venv_bin | dirname }}"
virtualenv_site_packages: "no"
extra_args: "{{ pip_install_options_fact }}"
@ -195,7 +195,7 @@
- name: Install pip packages (no venv)
pip:
name: "{{ item }}"
state: present
state: latest
extra_args: "{{ pip_install_options_fact }}"
register: install_packages
until: install_packages|success