Add ability to change apt/yum package state

The current method of installing the distribution packages required is
set in the tasks and cannot be changed by a deployer.

Currently the apt task always installs the latest package. This results
in unexpected binary changes when a deployer may simply be trying to
execute a configuration change.

This patch adds the ability for a deployer to change the desired state
so that the results are predictable.

Change-Id: Iee1c61e431e93c60d9fa95e66a7fe278d0a11d3c
This commit is contained in:
Jesse Pretorius 2016-08-02 15:43:34 +01:00
parent c87a8c1d4c
commit 36351e9ce6
5 changed files with 20 additions and 6 deletions

View File

@ -20,8 +20,9 @@
## APT Cache Options
cache_timeout: 600
# Defines that the role will be deployed on a host machine
is_metal: true
# Set the package install state for distribution packages
# Options are 'present' and 'latest'
repo_server_package_state: "latest"
repo_worker_connections: 1024
repo_server_name: openstack-slushee

View File

@ -0,0 +1,13 @@
---
features:
- The repo_server role now supports the ability to configure whether
apt/yum tasks install the latest available package, or just ensure
that the package is present. The default action is to ensure that
the latest package is present. The action taken may be changed to
only ensure that the package is present by setting
``repo_server_package_state`` to ``present``.
upgrade:
- The repo_server role always checks whether the latest package is
installed when executed. If a deployer wishes to change the check to
only validate the presence of the package, the option
``repo_server_package_state`` should be set to ``present``.

View File

@ -33,7 +33,7 @@
- name: Install repo server packages
apt:
pkg: "{{ item }}"
state: latest
state: "{{ repo_server_package_state }}"
register: install_packages
until: install_packages|success
retries: 5

View File

@ -16,7 +16,7 @@
- name: Install repo server packages
yum:
pkg: "{{ item }}"
state: latest
state: "{{ repo_server_package_state }}"
register: install_packages
until: install_packages|success
retries: 5

View File

@ -16,7 +16,7 @@
- name: Install repo caching server packages (yum)
yum:
pkg: "{{ item }}"
state: latest
state: "{{ repo_server_package_state }}"
enablerepo: "epel-testing"
register: install_packages
until: install_packages|success
@ -30,7 +30,7 @@
- name: Install repo caching server packages (apt)
apt:
pkg: "{{ item }}"
state: latest
state: "{{ repo_server_package_state }}"
register: install_packages
until: install_packages|success
retries: 5