diff --git a/playbooks/roles/haproxy_server/defaults/main.yml b/playbooks/roles/haproxy_server/defaults/main.yml index 61ceebe566..96dcc6a79e 100644 --- a/playbooks/roles/haproxy_server/defaults/main.yml +++ b/playbooks/roles/haproxy_server/defaults/main.yml @@ -13,6 +13,10 @@ # See the License for the specific language governing permissions and # limitations under the License. +# Set the package install state for distribution packages +# Options are 'present' and 'latest' +haproxy_package_state: "latest" + ## Haproxy Configuration haproxy_rise: 3 haproxy_fall: 3 diff --git a/playbooks/roles/haproxy_server/tasks/haproxy_add_ppa_repo.yml b/playbooks/roles/haproxy_server/tasks/haproxy_add_ppa_repo.yml index f7cc6c0a32..246f1765de 100644 --- a/playbooks/roles/haproxy_server/tasks/haproxy_add_ppa_repo.yml +++ b/playbooks/roles/haproxy_server/tasks/haproxy_add_ppa_repo.yml @@ -35,7 +35,7 @@ - name: Install haproxy pre packages apt: pkg: "{{ item }}" - state: latest + state: "{{ haproxy_package_state }}" register: install_packages until: install_packages|success retries: 5 diff --git a/playbooks/roles/haproxy_server/tasks/haproxy_install_apt.yml b/playbooks/roles/haproxy_server/tasks/haproxy_install_apt.yml index a6533a3f82..55b83fdcc0 100644 --- a/playbooks/roles/haproxy_server/tasks/haproxy_install_apt.yml +++ b/playbooks/roles/haproxy_server/tasks/haproxy_install_apt.yml @@ -38,7 +38,7 @@ - name: Install HAProxy Packages apt: pkg: "{{ item }}" - state: latest + state: "{{ haproxy_package_state }}" register: install_packages until: install_packages|success retries: 5 diff --git a/playbooks/roles/haproxy_server/tasks/haproxy_install_yum.yml b/playbooks/roles/haproxy_server/tasks/haproxy_install_yum.yml index 67265fcb1c..810fde8005 100644 --- a/playbooks/roles/haproxy_server/tasks/haproxy_install_yum.yml +++ b/playbooks/roles/haproxy_server/tasks/haproxy_install_yum.yml @@ -16,7 +16,7 @@ - name: Install yum packages yum: pkg: "{{ item }}" - state: present + state: "{{ haproxy_package_state }}" register: install_packages until: install_packages|success retries: 5 diff --git a/releasenotes/notes/package-state-ab251d8987422f59.yaml b/releasenotes/notes/package-state-ab251d8987422f59.yaml new file mode 100644 index 0000000000..ac2c6627c6 --- /dev/null +++ b/releasenotes/notes/package-state-ab251d8987422f59.yaml @@ -0,0 +1,13 @@ +--- +features: + - The haproxy_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 + ``haproxy_package_state`` to ``present``. +upgrade: + - The haproxy_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 + ``haproxy_package_state`` should be set to ``present``.