From 773eead34dad528e389a4502f7474c4687a3ddf4 Mon Sep 17 00:00:00 2001
From: Bartosz Bezak <bartosz@stackhpc.com>
Date: Wed, 22 Mar 2023 12:18:22 +0100
Subject: [PATCH] Bump up Ansible supported versions to 6.x/7.x

This change bumps up the maximum supported Ansible version to 7.x
(ansible-core 2.14.x) and minimum to 6.x (ansible-core 2.13.x).
This synchronises Kayobe with Kolla Ansible.

Change-Id: Ibffecaa8085bd38ebc8cded9a4bfebe77d59d515
---
 ansible/roles/kolla-ansible/defaults/main.yml             | 3 ++-
 ansible/roles/kolla-ansible/tasks/install.yml             | 1 +
 releasenotes/notes/ansible-update-7-e90e58f6d7497c0e.yaml | 6 ++++++
 requirements.txt                                          | 2 +-
 4 files changed, 10 insertions(+), 2 deletions(-)
 create mode 100644 releasenotes/notes/ansible-update-7-e90e58f6d7497c0e.yaml

diff --git a/ansible/roles/kolla-ansible/defaults/main.yml b/ansible/roles/kolla-ansible/defaults/main.yml
index a524c09e..f2cb56f2 100644
--- a/ansible/roles/kolla-ansible/defaults/main.yml
+++ b/ansible/roles/kolla-ansible/defaults/main.yml
@@ -24,7 +24,8 @@ kolla_ansible_venv_extra_requirements: []
 # Pip requirement specifier for the ansible package. NOTE: This limits the
 # version of ansible used by kolla-ansible to avoid new releases from breaking
 # tested code. Changes to this limit should be tested.
-kolla_ansible_venv_ansible: 'ansible>=5,<7.0'
+kolla_ansible_venv_ansible: 'ansible>=6,<8.0'
+kolla_ansible_venv_ansible_core: 'ansible-core>=2.13,<=2.14.2'
 
 # Path to a requirements.yml file for Ansible collections.
 kolla_ansible_requirements_yml: "{{ kolla_ansible_venv }}/share/kolla-ansible/requirements.yml"
diff --git a/ansible/roles/kolla-ansible/tasks/install.yml b/ansible/roles/kolla-ansible/tasks/install.yml
index e6917404..fb066274 100644
--- a/ansible/roles/kolla-ansible/tasks/install.yml
+++ b/ansible/roles/kolla-ansible/tasks/install.yml
@@ -95,6 +95,7 @@
         {% else %}
         kolla-ansible=={{ kolla_openstack_release }}
         {% endif %}
+      - "{{ kolla_ansible_venv_ansible_core }}"
       - "{{ kolla_ansible_venv_ansible }}"
       - selinux
   pip:
diff --git a/releasenotes/notes/ansible-update-7-e90e58f6d7497c0e.yaml b/releasenotes/notes/ansible-update-7-e90e58f6d7497c0e.yaml
new file mode 100644
index 00000000..1deff6b2
--- /dev/null
+++ b/releasenotes/notes/ansible-update-7-e90e58f6d7497c0e.yaml
@@ -0,0 +1,6 @@
+---
+ upgrade:
+   - |
+     Updates the maximum supported version of Ansible from 6.x (ansible-core
+     2.13) to 7.x (ansible-core 2.14). The minimum supported version is updated
+     from 5.x to 6.x. This is true for both Kayobe and Kolla Ansible.
diff --git a/requirements.txt b/requirements.txt
index 19decf8a..752bc6d2 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,6 @@
 pbr>=2.0 # Apache-2.0
 Jinja2>3 # BSD
-ansible>=5,<7.0 # GPLv3
+ansible>=6,<8.0 # GPLv3
 cliff>=3.1.0 # Apache
 netaddr!=0.7.16,>=0.7.13 # BSD
 PyYAML>=3.10.0 # MIT
-- 
GitLab