From 559b4493ed2eac6bd3fb4b84824ad36334e46c22 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) (cherry picked from commit bc80c2aa89bde4965d51980a5969cd92779f6337) --- .../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 a93eec532..771530551 100644 --- a/tripleo_ansible/roles/tripleo-podman/defaults/main.yml +++ b/tripleo_ansible/roles/tripleo-podman/defaults/main.yml @@ -21,6 +21,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_debug: false 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 aad06ac1d..63247abc6 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 e6aa4de8a..dc42eb3f2 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 +_tripleo_buildah_packages: + - buildah-1.11.6 + _tripleo_podman_purge_packages: - docker - docker-ce