From bc80c2aa89bde4965d51980a5969cd92779f6337 Mon Sep 17 00:00:00 2001 From: "Chandan Kumar (raukadah)" Date: Fri, 7 Aug 2020 16:44:21 +0530 Subject: [PATCH] [tripleo-podman] Install specific version of buildah tripleo_podman_buildah_login.yml playbook from tripleo_podman role is used in periodic jobs in upstream & downstream to push containers. In CentOS/RHEL, buildah comes from multiple repos, sometimes untested package from diffferent repo get installed causing issues. Making it parameterized will help to install specific version of buildah and avoid breakage. Change-Id: I751452d4f60ceedd099f76e8127694a96a0b9549 Signed-off-by: Chandan Kumar (raukadah) --- .../roles/tripleo_podman/defaults/main.yml | 1 + .../tasks/tripleo_podman_buildah_login.yml | 15 +++++++++++++-- .../roles/tripleo_podman/vars/redhat.yml | 3 +++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/tripleo_ansible/roles/tripleo_podman/defaults/main.yml b/tripleo_ansible/roles/tripleo_podman/defaults/main.yml index 505a8bc4d..623d53cb2 100644 --- a/tripleo_ansible/roles/tripleo_podman/defaults/main.yml +++ b/tripleo_ansible/roles/tripleo_podman/defaults/main.yml @@ -24,6 +24,7 @@ tripleo_container_registry_insecure_registries: [] tripleo_container_registry_login: false tripleo_container_registry_logins: {} tripleo_podman_packages: "{{ _tripleo_podman_packages | default([]) }}" +tripleo_buildah_packages: "{{ _tripleo_buildah_packages | default([]) }}" tripleo_podman_purge_packages: "{{ _tripleo_podman_purge_packages | default([]) }}" tripleo_podman_tls_verify: true tripleo_podman_unqualified_search_registries: diff --git a/tripleo_ansible/roles/tripleo_podman/tasks/tripleo_podman_buildah_login.yml b/tripleo_ansible/roles/tripleo_podman/tasks/tripleo_podman_buildah_login.yml index 8826e10eb..8f95de3f1 100644 --- a/tripleo_ansible/roles/tripleo_podman/tasks/tripleo_podman_buildah_login.yml +++ b/tripleo_ansible/roles/tripleo_podman/tasks/tripleo_podman_buildah_login.yml @@ -14,12 +14,23 @@ # License for the specific language governing permissions and limitations # under the License. +- name: Gather variables for each operating system for installing buildah + include_vars: "{{ item }}" + with_first_found: + - skip: true + files: + - "{{ ansible_distribution | lower }}-{{ ansible_distribution_version | lower }}.yml" + - "{{ ansible_distribution | lower }}-{{ ansible_distribution_major_version | lower }}.yml" + - "{{ ansible_os_family | lower }}-{{ ansible_distribution_major_version | lower }}.yml" + - "{{ ansible_distribution | lower }}.yml" + - "{{ ansible_os_family | lower }}-{{ ansible_distribution_version.split('.')[0] }}.yml" + - "{{ ansible_os_family | lower }}.yml" - name: ensure buildah is installed become: true package: - name: "buildah" - state: latest + name: "{{ tripleo_buildah_packages }}" + state: present - name: Perform container registry login(s) with buildah become: true diff --git a/tripleo_ansible/roles/tripleo_podman/vars/redhat.yml b/tripleo_ansible/roles/tripleo_podman/vars/redhat.yml index 6da0f0e8b..efa3a20cf 100644 --- a/tripleo_ansible/roles/tripleo_podman/vars/redhat.yml +++ b/tripleo_ansible/roles/tripleo_podman/vars/redhat.yml @@ -18,6 +18,9 @@ _tripleo_podman_packages: - podman-1.6.4 +_tripleo_buildah_packages: + - buildah-1.11.6 + _tripleo_podman_purge_packages: - docker - docker-ce