diff --git a/.gitlab-ci/packet.yml b/.gitlab-ci/packet.yml
index 58204c703363cdac16d9d717bb3c5f91426535be..2f9c46def797e7f1c80f8d2e6894f126c8d714e4 100644
--- a/.gitlab-ci/packet.yml
+++ b/.gitlab-ci/packet.yml
@@ -22,11 +22,6 @@
   allow_failure: true
   extends: .packet
 
-packet_ubuntu18-calico-aio:
-  stage: deploy-part2
-  extends: .packet_pr
-  when: on_success
-
 # The ubuntu20-calico-aio jobs are meant as early stages to prevent running the full CI if something is horribly broken
 packet_ubuntu20-calico-aio:
   stage: deploy-part1
@@ -54,7 +49,12 @@ packet_ubuntu20-calico-aio-ansible-2_11:
 
 # ### PR JOBS PART2
 
-packet_centos7-flannel-containerd-addons-ha:
+packet_ubuntu18-calico-aio:
+  stage: deploy-part2
+  extends: .packet_pr
+  when: on_success
+
+packet_centos7-flannel-addons-ha:
   extends: .packet_pr
   stage: deploy-part2
   when: on_success
@@ -70,7 +70,7 @@ packet_ubuntu18-crio:
   stage: deploy-part2
   when: manual
 
-packet_ubuntu16-canal-kubeadm-ha:
+packet_ubuntu16-canal-ha:
   stage: deploy-part2
   extends: .packet_periodic
   when: on_success
@@ -100,7 +100,12 @@ packet_debian10-cilium-svc-proxy:
   extends: .packet_periodic
   when: on_success
 
-packet_debian10-containerd:
+packet_debian10-aio:
+  stage: deploy-part2
+  extends: .packet_pr
+  when: on_success
+
+packet_debian10-docker:
   stage: deploy-part2
   extends: .packet_pr
   when: on_success
@@ -110,6 +115,11 @@ packet_debian11-calico:
   extends: .packet_pr
   when: on_success
 
+packet_debian11-docker:
+  stage: deploy-part2
+  extends: .packet_pr
+  when: on_success
+
 packet_centos7-calico-ha-once-localhost:
   stage: deploy-part2
   extends: .packet_pr
@@ -130,7 +140,12 @@ packet_centos8-calico:
   extends: .packet_pr
   when: on_success
 
-packet_fedora34-weave:
+packet_centos8-docker:
+  stage: deploy-part2
+  extends: .packet_pr
+  when: on_success
+
+packet_fedora34-docker-weave:
   stage: deploy-part2
   extends: .packet_pr
   when: on_success
@@ -147,7 +162,7 @@ packet_ubuntu18-ovn4nfv:
 
 # ### MANUAL JOBS
 
-packet_ubuntu16-weave-sep:
+packet_ubuntu16-docker-weave-sep:
   stage: deploy-part2
   extends: .packet_pr
   when: manual
@@ -157,12 +172,12 @@ packet_ubuntu18-cilium-sep:
   extends: .packet_pr
   when: manual
 
-packet_ubuntu18-flannel-containerd-ha:
+packet_ubuntu18-flannel-ha:
   stage: deploy-part2
   extends: .packet_pr
   when: manual
 
-packet_ubuntu18-flannel-containerd-ha-once:
+packet_ubuntu18-flannel-ha-once:
   stage: deploy-part2
   extends: .packet_pr
   when: manual
@@ -220,7 +235,7 @@ packet_centos8-calico-nodelocaldns-secondary:
   extends: .packet_pr
   when: manual
 
-packet_fedora34-kube-ovn-containerd:
+packet_fedora34-kube-ovn:
   stage: deploy-part2
   extends: .packet_periodic
   when: on_success
@@ -228,7 +243,7 @@ packet_fedora34-kube-ovn-containerd:
 # ### PR JOBS PART3
 # Long jobs (45min+)
 
-packet_centos7-weave-upgrade-ha:
+packet_centos7-docker-weave-upgrade-ha:
   stage: deploy-part3
   extends: .packet_periodic
   when: on_success
@@ -241,14 +256,14 @@ packet_ubuntu20-calico-ha-wireguard:
   extends: .packet_pr
   when: manual
 
-packet_debian9-calico-upgrade:
+packet_debian10-calico-upgrade:
   stage: deploy-part3
   extends: .packet_pr
   when: on_success
   variables:
     UPGRADE_TEST: graceful
 
-packet_debian9-calico-upgrade-once:
+packet_debian10-calico-upgrade-once:
   stage: deploy-part3
   extends: .packet_periodic
   when: on_success
diff --git a/Vagrantfile b/Vagrantfile
index 27e807b1232dcb91693b53bb0f131995f6334125..0d9e471ed3392c8c039edd03810fb52320d35106 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -55,7 +55,7 @@ $network_plugin ||= "flannel"
 # Setting multi_networking to true will install Multus: https://github.com/intel/multus-cni
 $multi_networking ||= false
 $download_run_once ||= "True"
-$download_force_cache ||= "True"
+$download_force_cache ||= "False"
 # The first three nodes are etcd servers
 $etcd_instances ||= $num_instances
 # The first two nodes are kube masters
diff --git a/docs/ci.md b/docs/ci.md
index 1be41d311710d025942b4b40c788ba6782e37fd1..cfaf24fa715b7857f7c0d9ca88d34ca2ea0385a3 100644
--- a/docs/ci.md
+++ b/docs/ci.md
@@ -2,21 +2,21 @@
 
 To generate this Matrix run `./tests/scripts/md-table/main.py`
 
-## docker
+## containerd
 
 | OS / CNI | calico | canal | cilium | flannel | kube-ovn | kube-router | macvlan | ovn4nfv | weave |
 |---| --- | --- | --- | --- | --- | --- | --- | --- | --- |
 amazon |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-centos7 |  :white_check_mark: | :x: | :x: | :x: | :x: | :white_check_mark: | :x: | :x: | :white_check_mark: |
+centos7 |  :white_check_mark: | :x: | :x: | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: | :x: |
 centos8 |  :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: |
-debian10 |  :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: |
+debian10 |  :white_check_mark: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: |
 debian11 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-debian9 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: | :x: | :x: |
+debian9 |  :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: | :x: | :x: |
 fedora33 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-fedora34 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: |
+fedora34 |  :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: |
 opensuse |  :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 oracle7 |  :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-ubuntu16 |  :x: | :white_check_mark: | :x: | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: | :white_check_mark: |
+ubuntu16 |  :x: | :white_check_mark: | :x: | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: | :x: |
 ubuntu18 |  :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :white_check_mark: | :white_check_mark: |
 ubuntu20 |  :white_check_mark: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
 
@@ -38,20 +38,20 @@ ubuntu16 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 ubuntu18 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 ubuntu20 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 
-## containerd
+## docker
 
 | OS / CNI | calico | canal | cilium | flannel | kube-ovn | kube-router | macvlan | ovn4nfv | weave |
 |---| --- | --- | --- | --- | --- | --- | --- | --- | --- |
 amazon |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-centos7 |  :x: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
-centos8 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
+centos7 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: |
+centos8 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 debian10 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-debian11 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
+debian11 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 debian9 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 fedora33 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-fedora34 |  :x: | :x: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: |
+fedora34 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: |
 opensuse |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
 oracle7 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-ubuntu16 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-ubuntu18 |  :x: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
-ubuntu20 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
+ubuntu16 |  :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: |
+ubuntu18 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
+ubuntu20 |  :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
diff --git a/inventory/sample/group_vars/etcd.yml b/inventory/sample/group_vars/etcd.yml
index 6c6765ed630fda60679128f8ac8060b61ac0191c..ae22d8279815925683487b8cbc4355edb913a6ea 100644
--- a/inventory/sample/group_vars/etcd.yml
+++ b/inventory/sample/group_vars/etcd.yml
@@ -19,4 +19,5 @@
 # etcd_peer_client_auth: true
 
 ## Settings for etcd deployment type
-etcd_deployment_type: docker
+# Set this to docker if you are using container_manager: docker
+etcd_deployment_type: host
diff --git a/inventory/sample/group_vars/k8s_cluster/k8s-cluster.yml b/inventory/sample/group_vars/k8s_cluster/k8s-cluster.yml
index dbd66d3ddd006d0c35256833dfa022c76bf953df..6c2cc8c4a5665bfcf79ad92b7bd324579f5cf172 100644
--- a/inventory/sample/group_vars/k8s_cluster/k8s-cluster.yml
+++ b/inventory/sample/group_vars/k8s_cluster/k8s-cluster.yml
@@ -202,7 +202,8 @@ dns_domain: "{{ cluster_name }}"
 
 ## Container runtime
 ## docker for docker, crio for cri-o and containerd for containerd.
-container_manager: docker
+## Default: containerd
+container_manager: containerd
 
 # Additional container runtimes
 kata_containers_enabled: false
diff --git a/roles/kubespray-defaults/defaults/main.yaml b/roles/kubespray-defaults/defaults/main.yaml
index 18e0913df268d1d6e14f86ee8a4ba2baac3912ca..e4da8ae45c63fd3aac045cc4eeb871e033fc44c1 100644
--- a/roles/kubespray-defaults/defaults/main.yaml
+++ b/roles/kubespray-defaults/defaults/main.yaml
@@ -253,7 +253,7 @@ kubelet_shutdown_grace_period_critical_pods: 20s
 deploy_container_engine: inventory_hostname in groups['k8s_cluster'] or etcd_deployment_type != 'host'
 
 # Container for runtime
-container_manager: docker
+container_manager: containerd
 
 # Enable Kata Containers as additional container runtime
 # When enabled, it requires `container_manager` different than Docker
@@ -344,7 +344,7 @@ docker_containerd_version: 1.4.9
 
 # Settings for containerized control plane (etcd/kubelet/secrets)
 # deployment type for legacy etcd mode
-etcd_deployment_type: docker
+etcd_deployment_type: host
 cert_management: script
 
 # Make a copy of kubeconfig on the host that runs Ansible in {{ inventory_dir }}/artifacts
diff --git a/tests/files/packet_centos7-calico-ha-once-localhost.yml b/tests/files/packet_centos7-calico-ha-once-localhost.yml
index dc08a314bdd27e5319aa4e6e3555f347a141c5f2..160a70d6be2118e6178c65f70ce65751f4f93dfb 100644
--- a/tests/files/packet_centos7-calico-ha-once-localhost.yml
+++ b/tests/files/packet_centos7-calico-ha-once-localhost.yml
@@ -15,3 +15,7 @@ typha_secure: true
 disable_ipv6_dns: true
 
 auto_renew_certificates: true
+
+# Docker settings
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_centos7-weave-upgrade-ha.yml b/tests/files/packet_centos7-docker-weave-upgrade-ha.yml
similarity index 77%
rename from tests/files/packet_centos7-weave-upgrade-ha.yml
rename to tests/files/packet_centos7-docker-weave-upgrade-ha.yml
index d455a9f7ad59781d8929b755739594edb95d76d9..6b5a0f3d6b29016b94fb6c8ee914a595a02a8a86 100644
--- a/tests/files/packet_centos7-weave-upgrade-ha.yml
+++ b/tests/files/packet_centos7-docker-weave-upgrade-ha.yml
@@ -9,5 +9,9 @@ deploy_netchecker: true
 kubernetes_audit: true
 dns_min_replicas: 1
 
+# Docker specific settings:
+container_manager: docker
+etcd_deployment_type: docker
+
 # Needed to upgrade from 1.16 to 1.17, otherwise upgrade is partial and bug followed
 upgrade_cluster_setup: true
diff --git a/tests/files/packet_centos7-flannel-containerd-addons-ha.yml b/tests/files/packet_centos7-flannel-addons-ha.yml
similarity index 95%
rename from tests/files/packet_centos7-flannel-containerd-addons-ha.yml
rename to tests/files/packet_centos7-flannel-addons-ha.yml
index d47ef416f6b6d6d055954acbc0080bb67a5c9968..83707694a62c49039c8ee38594d17246ec7e9ad1 100644
--- a/tests/files/packet_centos7-flannel-containerd-addons-ha.yml
+++ b/tests/files/packet_centos7-flannel-addons-ha.yml
@@ -12,10 +12,8 @@ download_run_once: true
 helm_enabled: true
 krew_enabled: true
 kubernetes_audit: true
-container_manager: containerd
 etcd_events_cluster_enabled: true
 local_volume_provisioner_enabled: true
-etcd_deployment_type: host
 deploy_netchecker: true
 dns_min_replicas: 1
 kube_encrypt_secret_data: true
diff --git a/tests/files/packet_centos8-crio.yml b/tests/files/packet_centos8-crio.yml
index dda9223435d642aa8da6f166089f29da68dafde0..49f364c9784bce9e9d77b301f13b1ee20d73ff4f 100644
--- a/tests/files/packet_centos8-crio.yml
+++ b/tests/files/packet_centos8-crio.yml
@@ -8,9 +8,6 @@ deploy_netchecker: true
 dns_min_replicas: 1
 container_manager: crio
 
-# CRI-O requirements
-etcd_deployment_type: host
-
 # required
 calico_iptables_backend: "Auto"
 
diff --git a/tests/files/packet_centos8-docker.yml b/tests/files/packet_centos8-docker.yml
new file mode 100644
index 0000000000000000000000000000000000000000..e5cf0b87e64abbcee382c2679e1b5befdabb4a69
--- /dev/null
+++ b/tests/files/packet_centos8-docker.yml
@@ -0,0 +1,16 @@
+---
+# Instance settings
+cloud_image: centos-8
+mode: default
+vm_memory: 3072Mi
+
+# Kubespray settings
+deploy_netchecker: true
+dns_min_replicas: 1
+
+# required
+calico_iptables_backend: "Auto"
+
+# Use docker
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_debian10-aio.yml b/tests/files/packet_debian10-aio.yml
new file mode 100644
index 0000000000000000000000000000000000000000..d0b85fa5b412c973dea80f263258047a82cb16b7
--- /dev/null
+++ b/tests/files/packet_debian10-aio.yml
@@ -0,0 +1,13 @@
+---
+# Instance settings
+cloud_image: debian-10
+mode: default
+
+# Kubespray settings
+deploy_netchecker: true
+dns_min_replicas: 1
+
+helm_enabled: true
+krew_enabled: true
+
+auto_renew_certificates: true
diff --git a/tests/files/packet_debian9-calico-upgrade-once.yml b/tests/files/packet_debian10-calico-upgrade-once.yml
similarity index 66%
rename from tests/files/packet_debian9-calico-upgrade-once.yml
rename to tests/files/packet_debian10-calico-upgrade-once.yml
index dcf4186c795db2499fe2d78cc1560d6cd3cba7c5..3e356e2f5355b4a3c2cc5d9a6b50a9adcf482b52 100644
--- a/tests/files/packet_debian9-calico-upgrade-once.yml
+++ b/tests/files/packet_debian10-calico-upgrade-once.yml
@@ -1,6 +1,6 @@
 ---
 # Instance settings
-cloud_image: debian-9
+cloud_image: debian-10
 mode: default
 
 # Kubespray settings
@@ -9,5 +9,9 @@ deploy_netchecker: true
 dns_min_replicas: 1
 download_run_once: true
 
+# Docker specific settings:
+container_manager: docker
+etcd_deployment_type: docker
+
 # Make docker happy
 docker_containerd_version: latest
diff --git a/tests/files/packet_debian9-calico-upgrade.yml b/tests/files/packet_debian10-calico-upgrade.yml
similarity index 55%
rename from tests/files/packet_debian9-calico-upgrade.yml
rename to tests/files/packet_debian10-calico-upgrade.yml
index bc6837a11fb4830299ebc4992baafe07b5e5bf34..daf0e70917d347bfa34af48c9bd46f667b0ae6ce 100644
--- a/tests/files/packet_debian9-calico-upgrade.yml
+++ b/tests/files/packet_debian10-calico-upgrade.yml
@@ -1,6 +1,6 @@
 ---
 # Instance settings
-cloud_image: debian-9
+cloud_image: debian-10
 mode: default
 
 # Kubespray settings
@@ -8,5 +8,6 @@ kube_network_plugin: calico
 deploy_netchecker: true
 dns_min_replicas: 1
 
-# Make docker happy
-docker_containerd_version: latest
+# Docker specific settings:
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_debian10-containerd.yml b/tests/files/packet_debian10-containerd.yml
deleted file mode 100644
index d08477a5b0c7463edeaeefdac4db5a8fb396fc62..0000000000000000000000000000000000000000
--- a/tests/files/packet_debian10-containerd.yml
+++ /dev/null
@@ -1,19 +0,0 @@
----
-# Instance settings
-cloud_image: debian-10
-mode: default
-
-# Kubespray settings
-container_manager: containerd
-etcd_deployment_type: host
-deploy_netchecker: true
-dns_min_replicas: 1
-
-helm_enabled: true
-krew_enabled: true
-
-# https://gitlab.com/miouge/kubespray-ci/-/blob/a4fd5ed6857807f1c353cb60848aedebaf7d2c94/manifests/http-proxy.yml#L42
-http_proxy: http://172.30.30.30:8888
-https_proxy: http://172.30.30.30:8888
-
-auto_renew_certificates: true
diff --git a/tests/files/packet_debian10-docker.yml b/tests/files/packet_debian10-docker.yml
new file mode 100644
index 0000000000000000000000000000000000000000..be7105be902179efd74e1a90cb4e1992055ab193
--- /dev/null
+++ b/tests/files/packet_debian10-docker.yml
@@ -0,0 +1,12 @@
+---
+# Instance settings
+cloud_image: debian-10
+mode: default
+
+# Kubespray settings
+deploy_netchecker: true
+dns_min_replicas: 1
+
+# Use docker
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_debian11-calico.yml b/tests/files/packet_debian11-calico.yml
index 048bdb9a22d50a56a2141e670fd9fae23a8d0726..e0a19ec8166f3b9495a1988b164ed160300df575 100644
--- a/tests/files/packet_debian11-calico.yml
+++ b/tests/files/packet_debian11-calico.yml
@@ -4,6 +4,5 @@ cloud_image: debian-11
 mode: default
 
 # Kubespray settings
-etcd_deployment_type: host
 deploy_netchecker: true
 dns_min_replicas: 1
diff --git a/tests/files/packet_debian11-docker.yml b/tests/files/packet_debian11-docker.yml
new file mode 100644
index 0000000000000000000000000000000000000000..377acd2c84eefe5eb313b3551cabfbb939b92291
--- /dev/null
+++ b/tests/files/packet_debian11-docker.yml
@@ -0,0 +1,12 @@
+---
+# Instance settings
+cloud_image: debian-11
+mode: default
+
+# Kubespray settings
+deploy_netchecker: true
+dns_min_replicas: 1
+
+# Use docker
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_debian9-macvlan.yml b/tests/files/packet_debian9-macvlan.yml
index accf275df12bc73447e9a96f3a30aa9b45813ff4..7a80202f650bc1dd5596756a67f3f6ae407fa9d8 100644
--- a/tests/files/packet_debian9-macvlan.yml
+++ b/tests/files/packet_debian9-macvlan.yml
@@ -12,6 +12,3 @@ kube_proxy_masquerade_all: true
 macvlan_interface: "eth0"
 
 auto_renew_certificates: true
-
-# Make docker happy
-docker_containerd_version: latest
diff --git a/tests/files/packet_fedora34-kube-ovn-containerd.yml b/tests/files/packet_fedora34-docker-weave.yml
similarity index 53%
rename from tests/files/packet_fedora34-kube-ovn-containerd.yml
rename to tests/files/packet_fedora34-docker-weave.yml
index f3a26624597a04b889fc02aa60e1dfee70ab6164..e6429dfe67ca3c0112f12b82b83a0b56d99309c3 100644
--- a/tests/files/packet_fedora34-kube-ovn-containerd.yml
+++ b/tests/files/packet_fedora34-docker-weave.yml
@@ -4,8 +4,10 @@ cloud_image: fedora-34
 mode: default
 
 # Kubespray settings
-container_manager: containerd
-etcd_deployment_type: host
 deploy_netchecker: true
 dns_min_replicas: 1
-kube_network_plugin: kube-ovn
+kube_network_plugin: weave
+
+# Docker specific settings:
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_fedora34-weave.yml b/tests/files/packet_fedora34-kube-ovn.yml
similarity index 80%
rename from tests/files/packet_fedora34-weave.yml
rename to tests/files/packet_fedora34-kube-ovn.yml
index e5d921f8cb02444af2695b8911647c83ff022457..cc76baff2865efd5fec29f108cbdaed7b541b7e3 100644
--- a/tests/files/packet_fedora34-weave.yml
+++ b/tests/files/packet_fedora34-kube-ovn.yml
@@ -6,4 +6,4 @@ mode: default
 # Kubespray settings
 deploy_netchecker: true
 dns_min_replicas: 1
-kube_network_plugin: weave
+kube_network_plugin: kube-ovn
diff --git a/tests/files/packet_ubuntu16-canal-kubeadm-ha.yml b/tests/files/packet_ubuntu16-canal-ha.yml
similarity index 74%
rename from tests/files/packet_ubuntu16-canal-kubeadm-ha.yml
rename to tests/files/packet_ubuntu16-canal-ha.yml
index ac64817aa6e54627577c02c12aacd66175ab1b8a..2e359ee5bc21f54825cc8bc2a40a920073a4559c 100644
--- a/tests/files/packet_ubuntu16-canal-kubeadm-ha.yml
+++ b/tests/files/packet_ubuntu16-canal-ha.yml
@@ -8,6 +8,3 @@ calico_datastore: etcd
 kube_network_plugin: canal
 deploy_netchecker: true
 dns_min_replicas: 1
-
-# Make docker jobs happy
-docker_containerd_version: latest
diff --git a/tests/files/packet_ubuntu16-canal-sep.yml b/tests/files/packet_ubuntu16-canal-sep.yml
index 01fcaff881294cbcb260110991937b2fbbc17be2..a88dcacc618c6c094c908c717afc0f385c99bd1d 100644
--- a/tests/files/packet_ubuntu16-canal-sep.yml
+++ b/tests/files/packet_ubuntu16-canal-sep.yml
@@ -8,6 +8,3 @@ calico_datastore: etcd
 kube_network_plugin: canal
 deploy_netchecker: true
 dns_min_replicas: 1
-
-# Make docker jobs happy
-docker_containerd_version: latest
diff --git a/tests/files/packet_ubuntu16-weave-sep.yml b/tests/files/packet_ubuntu16-docker-weave-sep.yml
similarity index 69%
rename from tests/files/packet_ubuntu16-weave-sep.yml
rename to tests/files/packet_ubuntu16-docker-weave-sep.yml
index 22cfe0e516cf40ab6b1d1489a6825888d6d53e06..18cd8b4e0f8f3b6f86bbef9069a3865b2e6bf284 100644
--- a/tests/files/packet_ubuntu16-weave-sep.yml
+++ b/tests/files/packet_ubuntu16-docker-weave-sep.yml
@@ -8,7 +8,8 @@ kube_network_plugin: weave
 deploy_netchecker: true
 dns_min_replicas: 1
 
-auto_renew_certificates: true
+# Docker specific settings:
+container_manager: docker
+etcd_deployment_type: docker
 
-# Make docker jobs happy
-docker_containerd_version: latest
+auto_renew_certificates: true
diff --git a/tests/files/packet_ubuntu16-flannel-ha.yml b/tests/files/packet_ubuntu16-flannel-ha.yml
index c4af804a153526f23f8f66c04d42a0afdd9a155d..8253ca8fae09ea9b0f3612a7f5525b0652b0ac3a 100644
--- a/tests/files/packet_ubuntu16-flannel-ha.yml
+++ b/tests/files/packet_ubuntu16-flannel-ha.yml
@@ -10,6 +10,3 @@ kubeadm_certificate_key: 3998c58db6497dd17d909394e62d515368c06ec617710d02edea31c
 skip_non_kubeadm_warning: true
 deploy_netchecker: true
 dns_min_replicas: 1
-
-# Make docker jobs happy
-docker_containerd_version: latest
diff --git a/tests/files/packet_ubuntu16-kube-router-sep.yml b/tests/files/packet_ubuntu16-kube-router-sep.yml
index 91aa6cbe1ca079cb97120ba829c359bde98cbf2d..19043df07c707c338c76b0e0d56983157bc35c4f 100644
--- a/tests/files/packet_ubuntu16-kube-router-sep.yml
+++ b/tests/files/packet_ubuntu16-kube-router-sep.yml
@@ -8,6 +8,3 @@ bootstrap_os: ubuntu
 kube_network_plugin: kube-router
 deploy_netchecker: true
 dns_min_replicas: 1
-
-# Make docker jobs happy
-docker_containerd_version: latest
diff --git a/tests/files/packet_ubuntu16-kube-router-svc-proxy.yml b/tests/files/packet_ubuntu16-kube-router-svc-proxy.yml
index 433557b9832dbd856b8614fdfc757a3784b9f106..8be6ef3f5371dce2c3b66a419dc047bd0b49dfa4 100644
--- a/tests/files/packet_ubuntu16-kube-router-svc-proxy.yml
+++ b/tests/files/packet_ubuntu16-kube-router-svc-proxy.yml
@@ -10,6 +10,3 @@ deploy_netchecker: true
 dns_min_replicas: 1
 
 kube_router_run_service_proxy: true
-
-# Make docker jobs happy
-docker_containerd_version: latest
diff --git a/tests/files/packet_ubuntu18-crio.yml b/tests/files/packet_ubuntu18-crio.yml
index 2cd78739a6423cd03a88473239a8abaf8cd92174..962ce0e044b32ec0fc5a2739d874713d000f209a 100644
--- a/tests/files/packet_ubuntu18-crio.yml
+++ b/tests/files/packet_ubuntu18-crio.yml
@@ -10,6 +10,3 @@ container_manager: crio
 
 download_localhost: false
 download_run_once: true
-
-# CRI-O requirements
-etcd_deployment_type: host
diff --git a/tests/files/packet_ubuntu18-docker.yml b/tests/files/packet_ubuntu18-docker.yml
new file mode 100644
index 0000000000000000000000000000000000000000..15fc060f03b33d13a4a69bf21aeeaca27fb6db37
--- /dev/null
+++ b/tests/files/packet_ubuntu18-docker.yml
@@ -0,0 +1,13 @@
+---
+# Instance settings
+cloud_image: ubuntu-1804
+mode: aio
+vm_memory: 1600Mi
+
+# Kubespray settings
+deploy_netchecker: true
+dns_min_replicas: 1
+
+# Use docker
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/files/packet_ubuntu18-flannel-containerd-ha-once.yml b/tests/files/packet_ubuntu18-flannel-ha-once.yml
similarity index 92%
rename from tests/files/packet_ubuntu18-flannel-containerd-ha-once.yml
rename to tests/files/packet_ubuntu18-flannel-ha-once.yml
index 2537168ec56d2e07fef21fcd8c40578a48d11edc..1326015f90a719fcf11ed5f5ddb990e15385f664 100644
--- a/tests/files/packet_ubuntu18-flannel-containerd-ha-once.yml
+++ b/tests/files/packet_ubuntu18-flannel-ha-once.yml
@@ -11,10 +11,8 @@ kube_network_plugin: flannel
 helm_enabled: true
 krew_enabled: true
 kubernetes_audit: true
-container_manager: containerd
 etcd_events_cluster_enabled: true
 local_volume_provisioner_enabled: true
-etcd_deployment_type: host
 deploy_netchecker: true
 dns_min_replicas: 1
 kube_encrypt_secret_data: true
diff --git a/tests/files/packet_ubuntu18-flannel-containerd-ha.yml b/tests/files/packet_ubuntu18-flannel-ha.yml
similarity index 92%
rename from tests/files/packet_ubuntu18-flannel-containerd-ha.yml
rename to tests/files/packet_ubuntu18-flannel-ha.yml
index 2537168ec56d2e07fef21fcd8c40578a48d11edc..1326015f90a719fcf11ed5f5ddb990e15385f664 100644
--- a/tests/files/packet_ubuntu18-flannel-containerd-ha.yml
+++ b/tests/files/packet_ubuntu18-flannel-ha.yml
@@ -11,10 +11,8 @@ kube_network_plugin: flannel
 helm_enabled: true
 krew_enabled: true
 kubernetes_audit: true
-container_manager: containerd
 etcd_events_cluster_enabled: true
 local_volume_provisioner_enabled: true
-etcd_deployment_type: host
 deploy_netchecker: true
 dns_min_replicas: 1
 kube_encrypt_secret_data: true
diff --git a/tests/files/packet_ubuntu20-docker.yml b/tests/files/packet_ubuntu20-docker.yml
new file mode 100644
index 0000000000000000000000000000000000000000..22af1c65d415b51c6c4c8d6ac4ef39001888ca86
--- /dev/null
+++ b/tests/files/packet_ubuntu20-docker.yml
@@ -0,0 +1,19 @@
+---
+# Instance settings
+cloud_image: ubuntu-2004
+mode: aio
+vm_memory: 1600Mi
+
+# Kubespray settings
+deploy_netchecker: true
+dns_min_replicas: 1
+
+# Currently ipvs not available on KVM: https://packages.ubuntu.com/search?suite=focal&arch=amd64&mode=exactfilename&searchon=contents&keywords=ip_vs_sh.ko
+kube_proxy_mode: iptables
+enable_nodelocaldns: False
+
+auto_renew_certificates: true
+
+# Use docker
+container_manager: docker
+etcd_deployment_type: docker
diff --git a/tests/scripts/md-table/main.py b/tests/scripts/md-table/main.py
index 0a9eed8c495ca5fdcec1ae4001ebd9c0726fcdb0..9e00005856405b8c1eb4a0cf116242a75585f594 100755
--- a/tests/scripts/md-table/main.py
+++ b/tests/scripts/md-table/main.py
@@ -41,7 +41,6 @@ class Data:
         operating_systems = list(self.db.get_unique_ids("operating_system"))
 
         container_engines.sort()
-        container_engines.reverse() # reverse sort container_engines to get Docker first in the list
         network_plugins.sort()
         operating_systems.sort()
 
@@ -88,7 +87,7 @@ files = p.glob('*.yml')
 for f in files:
     y = yaml.load(f.open(), Loader=yaml.FullLoader)
 
-    container_manager = y.get('container_manager', 'docker')
+    container_manager = y.get('container_manager', 'containerd')
     network_plugin = y.get('kube_network_plugin', 'calico')
     x = re.match(r"^[a-z-]+_([a-z0-9]+).*", f.name)
     operating_system = x.group(1)