Avoid docker-runc removal

This commit is contained in:
Houssem Ben Ali 2025-10-01 17:53:33 +02:00
parent a6f361f39f
commit 2f5715734b
No known key found for this signature in database
GPG Key ID: 049BFBE52CB08FC1
2 changed files with 28 additions and 24 deletions

View File

@ -1,27 +1,26 @@
--- ---
- name: Ensure old versions of Docker are not installed. # Remove old or conflicting Docker packages
- name: Ensure old versions of Docker are not installed
package: package:
name: name: "{{ docker_obsolete_packages }}"
- docker
- docker-engine
- docker.io
- docker-ce
- docker-ce-cli
state: absent state: absent
- name: Add Docker repository (openSUSE / SLES). # Add Docker repository (openSUSE / SLES)
- name: Add Docker repository
zypper_repository: zypper_repository:
name: "docker-ce" name: "docker-ce"
repo: "{{ docker_zypper_repo_url }}" repo: "{{ docker_zypper_repo_url }}"
state: present state: present
auto_import_keys: yes auto_import_keys: yes
when: docker_add_repo | bool == true when: docker_add_repo | bool
- name: Refresh zypper repositories. # Refresh zypper repositories to pick up the new Docker repo
- name: Refresh zypper repositories
command: zypper --non-interactive refresh command: zypper --non-interactive refresh
when: docker_add_repo | bool == true when: docker_add_repo | bool
- name: Ensure Docker packages are installed. # Install Docker packages
- name: Ensure Docker packages are installed
ansible.legacy.zypper: ansible.legacy.zypper:
name: "{{ docker_packages }}" name: "{{ docker_packages }}"
state: present state: present

View File

@ -1,8 +1,9 @@
--- ---
# Used only for openSUSE / SLES (Suse OS-Family) # Used only for openSUSE / SLES (SUSE OS-Family)
# https://en.opensuse.org/Docker # https://en.opensuse.org/Docker
# https://docs.docker.com/engine/install/binaries/ # https://docs.docker.com/engine/install/binaries/
# Packages to remove if present (old or conflicting Docker packages)
docker_obsolete_packages: docker_obsolete_packages:
- docker-engine - docker-engine
- docker.io - docker.io
@ -13,24 +14,28 @@ docker_obsolete_packages:
- containerd.io - containerd.io
- runc - runc
# SUSE provides a monolithic "docker" package and companions. # Packages to install on openSUSE / SLES
# Use 'runc' from repo, not 'docker-runc' (avoids conflicts on Leap 15.6)
docker_packages: docker_packages:
- docker - docker
- containerd - containerd
- docker-runc - runc
# Map SUSE releases to Docker repository paths
docker_suse_release: >- docker_suse_release: >-
{{ 'openSUSE_Leap_15.5' {% if ansible_distribution_version is match('15\\.6') %}
if ansible_distribution_version is match('15\.5') openSUSE_Leap_15.6
else 'openSUSE_Leap_15.4' {% elif ansible_distribution_version is match('15\\.5') %}
if ansible_distribution_version is match('15\.4') openSUSE_Leap_15.5
else 'openSUSE_Tumbleweed' {% elif ansible_distribution_version is match('15\\.4') %}
if ansible_distribution == 'openSUSE Tumbleweed' openSUSE_Leap_15.4
else 'openSUSE_Leap_' + ansible_distribution_version }} {% else %}
openSUSE_Tumbleweed
{% endif %}
# Official Docker repo URL for openSUSE Leap
# Official repo for openSUSE Leap (adjust $releasever if needed)
docker_zypper_repo_url: >- docker_zypper_repo_url: >-
https://download.opensuse.org/repositories/Virtualization:/containers/{{ docker_suse_release }}/ https://download.opensuse.org/repositories/Virtualization:/containers/{{ docker_suse_release }}/
# Control whether to add the Docker repository
docker_add_repo: true docker_add_repo: true