diff --git a/roles/container-engine/containerd/tasks/containerd_repo.yml b/roles/container-engine/containerd/tasks/containerd_repo.yml
index 40805d32cbe0ea0d51fd8567be3a0d8e206bf869..81971e7f3389671c4a5515afb3c5eab26befe9e7 100644
--- a/roles/container-engine/containerd/tasks/containerd_repo.yml
+++ b/roles/container-engine/containerd/tasks/containerd_repo.yml
@@ -1,7 +1,6 @@
 ---
 - name: ensure containerd repository public key is installed
-  action: "{{ containerd_repo_key_info.pkg_key }}"
-  args:
+  apt_key:
     id: "{{ item }}"
     url: "{{ containerd_repo_key_info.url }}"
     state: present
@@ -11,8 +10,7 @@
   delay: "{{ retry_stagger | d(3) }}"
   with_items: "{{ containerd_repo_key_info.repo_keys }}"
   environment: "{{ proxy_env }}"
-  when:
-    - ansible_os_family in ['Ubuntu', 'Debian']
+  when: ansible_pkg_mgr == 'apt'
 
 - name: ensure containerd repository is enabled
   action: "{{ containerd_repo_info.pkg_repo }}"
diff --git a/roles/container-engine/containerd/vars/debian.yml b/roles/container-engine/containerd/vars/debian.yml
index 03ece0d695b861e4ae9fd27b3649630fcdde7736..270a5e11fcbefcd0fcdbd2e837a252f1ddf14f82 100644
--- a/roles/container-engine/containerd/vars/debian.yml
+++ b/roles/container-engine/containerd/vars/debian.yml
@@ -4,7 +4,6 @@ containerd_package_info:
     - "{{ containerd_versioned_pkg[containerd_version | string] }}"
 
 containerd_repo_key_info:
-  pkg_key: apt_key
   url: '{{ containerd_debian_repo_gpgkey }}'
   repo_keys:
     - '{{ containerd_debian_repo_repokey }}'
diff --git a/roles/container-engine/containerd/vars/redhat.yml b/roles/container-engine/containerd/vars/redhat.yml
index 2ea9242dbd35ddf1a52222d159d6b9a87f80b0fb..25cb7247046e22388b76a0467d740ff8fb87b131 100644
--- a/roles/container-engine/containerd/vars/redhat.yml
+++ b/roles/container-engine/containerd/vars/redhat.yml
@@ -4,10 +4,6 @@ containerd_package_info:
   pkgs:
     - "{{ containerd_versioned_pkg[containerd_version | string] }}"
 
-containerd_repo_key_info:
-  pkg_key: ''
-  repo_keys: []
-
 containerd_repo_info:
   pkg_repo: ''
   repos: []
diff --git a/roles/container-engine/containerd/vars/suse.yml b/roles/container-engine/containerd/vars/suse.yml
index 1931351d116cd4b968e88b9bf41875c29933ebe0..e32c249ab95f78366051435a09e52921e19324d1 100644
--- a/roles/container-engine/containerd/vars/suse.yml
+++ b/roles/container-engine/containerd/vars/suse.yml
@@ -6,10 +6,6 @@ containerd_package_info:
   pkgs:
     - "{{ containerd_package }}"
 
-containerd_repo_key_info:
-  pkg_key: ''
-  repo_keys: []
-
 containerd_repo_info:
   pkg_repo: ''
   repos: []
diff --git a/roles/container-engine/containerd/vars/ubuntu.yml b/roles/container-engine/containerd/vars/ubuntu.yml
index cc3341fe683af25a7851242a50e17e0b501f414a..94fa56a2dec4c7347e9f327682b2fb390a9ceea0 100644
--- a/roles/container-engine/containerd/vars/ubuntu.yml
+++ b/roles/container-engine/containerd/vars/ubuntu.yml
@@ -4,7 +4,6 @@ containerd_package_info:
     - "{{ containerd_versioned_pkg[containerd_version | string] }}"
 
 containerd_repo_key_info:
-  pkg_key: apt_key
   url: '{{ containerd_ubuntu_repo_gpgkey }}'
   repo_keys:
     - '{{ containerd_ubuntu_repo_repokey }}'
diff --git a/roles/container-engine/docker/tasks/main.yml b/roles/container-engine/docker/tasks/main.yml
index 6fc9995f824d229090100488892bde1df172a2bb..325b70f02759e21cfae93d315c80116659523df4 100644
--- a/roles/container-engine/docker/tasks/main.yml
+++ b/roles/container-engine/docker/tasks/main.yml
@@ -54,8 +54,7 @@
 - import_tasks: pre-upgrade.yml
 
 - name: ensure docker-ce repository public key is installed
-  action: "{{ docker_repo_key_info.pkg_key }}"
-  args:
+  apt_key:
     id: "{{ item }}"
     url: "{{ docker_repo_key_info.url }}"
     state: present
@@ -65,7 +64,7 @@
   delay: "{{ retry_stagger | d(3) }}"
   with_items: "{{ docker_repo_key_info.repo_keys }}"
   environment: "{{ proxy_env }}"
-  when: not (ansible_os_family in ["Flatcar Container Linux by Kinvolk", "RedHat", "Suse", "ClearLinux"] or is_ostree)
+  when: ansible_pkg_mgr == 'apt'
 
 - name: ensure docker-ce repository is enabled
   action: "{{ docker_repo_info.pkg_repo }}"
diff --git a/roles/container-engine/docker/vars/debian.yml b/roles/container-engine/docker/vars/debian.yml
index e0e8359c778b848f45ed104d5b4068ec5fec0446..097f3c753a6a24d85c5d65f7adba6189da24fc2d 100644
--- a/roles/container-engine/docker/vars/debian.yml
+++ b/roles/container-engine/docker/vars/debian.yml
@@ -21,7 +21,6 @@ docker_package_info:
     - "{{ docker_versioned_pkg[docker_version | string] }}"
 
 docker_repo_key_info:
-  pkg_key: apt_key
   url: '{{ docker_debian_repo_gpgkey }}'
   repo_keys:
     - 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
diff --git a/roles/container-engine/docker/vars/redhat.yml b/roles/container-engine/docker/vars/redhat.yml
index 011858d1a09dddbbb9a5e87b826819d3869c46dc..25c790b57de104627c0f8bde44d5baf016bd912e 100644
--- a/roles/container-engine/docker/vars/redhat.yml
+++ b/roles/container-engine/docker/vars/redhat.yml
@@ -23,10 +23,6 @@ docker_package_info:
     - "{{ docker_cli_versioned_pkg[docker_cli_version | string] }}"
     - "{{ docker_versioned_pkg[docker_version | string] }}"
 
-docker_repo_key_info:
-  pkg_key: ''
-  repo_keys: []
-
 docker_repo_info:
   pkg_repo: ''
   repos: []
diff --git a/roles/container-engine/docker/vars/suse.yml b/roles/container-engine/docker/vars/suse.yml
index b326275a55667a78c6249f72f6311e36be4ee13d..fb7b91ffee7480a1d0820caf43b465a53f8a2052 100644
--- a/roles/container-engine/docker/vars/suse.yml
+++ b/roles/container-engine/docker/vars/suse.yml
@@ -5,10 +5,6 @@ docker_package_info:
     - docker
     - containerd
 
-docker_repo_key_info:
-  pkg_key: ''
-  repo_keys: []
-
 docker_repo_info:
   pkg_repo: ''
   repos: []
diff --git a/roles/container-engine/docker/vars/ubuntu.yml b/roles/container-engine/docker/vars/ubuntu.yml
index d1609b63f3b0457425665087d403e9daad33e0c1..128510b12ecea6038392ad62da9ac0ca6bff78ac 100644
--- a/roles/container-engine/docker/vars/ubuntu.yml
+++ b/roles/container-engine/docker/vars/ubuntu.yml
@@ -21,7 +21,6 @@ docker_package_info:
     - "{{ docker_versioned_pkg[docker_version | string] }}"
 
 docker_repo_key_info:
-  pkg_key: apt_key
   url: '{{ docker_ubuntu_repo_gpgkey }}'
   repo_keys:
     - 9DC858229FC7DD38854AE2D88D81803C0EBFCD88