From f5885d05ea3caaea98a87253f02add4e218dda1c Mon Sep 17 00:00:00 2001
From: Peter Pan <peter.pan@daocloud.io>
Date: Wed, 29 Sep 2021 21:32:48 +0800
Subject: [PATCH] In CentOS 8.x Docker install Step: remove podman when
 existing (#8016)

---
 roles/container-engine/docker/defaults/main.yml     |  4 ++++
 roles/container-engine/docker/tasks/pre-upgrade.yml | 11 +++++++++++
 2 files changed, 15 insertions(+)

diff --git a/roles/container-engine/docker/defaults/main.yml b/roles/container-engine/docker/defaults/main.yml
index 5f376b03e..d4d7e53b2 100644
--- a/roles/container-engine/docker/defaults/main.yml
+++ b/roles/container-engine/docker/defaults/main.yml
@@ -33,6 +33,10 @@ docker_remove_packages_yum:
   - docker-logrotate
   - docker-engine-selinux.noarch
 
+# remove podman to avoid containerd.io confliction
+podman_remove_packages_yum:
+  - podman
+
 docker_remove_packages_apt:
   - docker
   - docker-engine
diff --git a/roles/container-engine/docker/tasks/pre-upgrade.yml b/roles/container-engine/docker/tasks/pre-upgrade.yml
index 85c1819a0..f346b46de 100644
--- a/roles/container-engine/docker/tasks/pre-upgrade.yml
+++ b/roles/container-engine/docker/tasks/pre-upgrade.yml
@@ -15,6 +15,17 @@
     - ansible_os_family == 'Debian'
     - (docker_versioned_pkg[docker_version | string] is search('docker-ce'))
 
+
+- name: Ensure podman not installed. | RedHat
+  package:
+    name: '{{ podman_remove_packages_yum }}'
+    state: absent
+  when:
+    - ansible_os_family == 'RedHat'
+    - (docker_versioned_pkg[docker_version | string] is search('docker-ce'))
+    - not is_ostree
+
+
 - name: Ensure old versions of Docker are not installed. | RedHat
   package:
     name: '{{ docker_remove_packages_yum }}'
-- 
GitLab