From 113de8381c1eec363b309ea661b71e5039c4e5f0 Mon Sep 17 00:00:00 2001
From: Cristian Calin <6627509+cristicalin@users.noreply.github.com>
Date: Mon, 28 Mar 2022 18:49:22 +0300
Subject: [PATCH] [ansible] add support for ansible 5 (ansible-core 2.12)
 (#8512)

---
 .gitlab-ci/packet.yml                                |  8 ++++++++
 README.md                                            |  2 +-
 ansible_version.yml                                  |  2 +-
 requirements-2.12.txt                                | 10 ++++++++++
 .../packet_ubuntu20-calico-aio-ansible-2_12.yml      |  1 +
 tests/requirements-2.12.txt                          | 12 ++++++++++++
 6 files changed, 33 insertions(+), 2 deletions(-)
 create mode 100644 requirements-2.12.txt
 create mode 120000 tests/files/packet_ubuntu20-calico-aio-ansible-2_12.yml
 create mode 100644 tests/requirements-2.12.txt

diff --git a/.gitlab-ci/packet.yml b/.gitlab-ci/packet.yml
index 72ecdc06d..0805e7357 100644
--- a/.gitlab-ci/packet.yml
+++ b/.gitlab-ci/packet.yml
@@ -48,6 +48,14 @@ packet_ubuntu20-calico-aio-ansible-2_11:
     ANSIBLE_MAJOR_VERSION: "2.11"
     RESET_CHECK: "true"
 
+packet_ubuntu20-calico-aio-ansible-2_12:
+  stage: deploy-part1
+  extends: .packet_pr
+  when: on_success
+  variables:
+    ANSIBLE_MAJOR_VERSION: "2.12"
+    RESET_CHECK: "true"
+
 # ### PR JOBS PART2
 
 packet_ubuntu18-aio-docker:
diff --git a/README.md b/README.md
index 17d3d62e6..c5c26b1bd 100644
--- a/README.md
+++ b/README.md
@@ -161,7 +161,7 @@ Note: Upstart/SysV init based OS types are not supported.
 ## Requirements
 
 - **Minimum required version of Kubernetes is v1.21**
-- **Ansible v2.9.x, Jinja 2.11+ and python-netaddr is installed on the machine that will run Ansible commands, Ansible 2.10.x is experimentally supported for now**
+- **Ansible v2.9.x, Jinja 2.11+ and python-netaddr is installed on the machine that will run Ansible commands**
 - The target servers must have **access to the Internet** in order to pull docker images. Otherwise, additional configuration is required (See [Offline Environment](docs/offline-environment.md))
 - The target servers are configured to allow **IPv4 forwarding**.
 - If using IPv6 for pods and services, the target servers are configured to allow **IPv6 forwarding**.
diff --git a/ansible_version.yml b/ansible_version.yml
index 5226fd90f..755947e06 100644
--- a/ansible_version.yml
+++ b/ansible_version.yml
@@ -5,7 +5,7 @@
   vars:
     minimal_ansible_version: 2.9.0
     minimal_ansible_version_2_10: 2.10.11
-    maximal_ansible_version: 2.12.0
+    maximal_ansible_version: 2.13.0
     ansible_connection: local
   tags: always
   tasks:
diff --git a/requirements-2.12.txt b/requirements-2.12.txt
new file mode 100644
index 000000000..99f4e6052
--- /dev/null
+++ b/requirements-2.12.txt
@@ -0,0 +1,10 @@
+ansible==5.5.0
+ansible-core==2.12.3
+cryptography==2.8
+jinja2==2.11.3
+netaddr==0.7.19
+pbr==5.4.4
+jmespath==0.9.5
+ruamel.yaml==0.16.10
+ruamel.yaml.clib==0.2.6
+MarkupSafe==1.1.1
diff --git a/tests/files/packet_ubuntu20-calico-aio-ansible-2_12.yml b/tests/files/packet_ubuntu20-calico-aio-ansible-2_12.yml
new file mode 120000
index 000000000..10064637f
--- /dev/null
+++ b/tests/files/packet_ubuntu20-calico-aio-ansible-2_12.yml
@@ -0,0 +1 @@
+packet_ubuntu20-calico-aio.yml
\ No newline at end of file
diff --git a/tests/requirements-2.12.txt b/tests/requirements-2.12.txt
new file mode 100644
index 000000000..bdb5c8786
--- /dev/null
+++ b/tests/requirements-2.12.txt
@@ -0,0 +1,12 @@
+-r ../requirements-2.12.txt
+yamllint==1.19.0
+apache-libcloud==2.2.1
+tox==3.11.1
+dopy==0.3.7
+cryptography==2.8
+ansible-lint==5.4.0
+molecule==3.0.6
+molecule-vagrant==0.3
+testinfra==5.2.2
+python-vagrant==0.5.15
+ara[server]==1.5.7
-- 
GitLab