diff --git a/ansible/roles/prechecks/vars/main.yml b/ansible/roles/prechecks/vars/main.yml index 7e253b9cfa..7e7dc8e00c 100644 --- a/ansible/roles/prechecks/vars/main.yml +++ b/ansible/roles/prechecks/vars/main.yml @@ -1,8 +1,8 @@ --- docker_version_min: '18.09' docker_py_version_min: '3.4.1' -ansible_version_min: '2.16' -ansible_version_max: '2.17' +ansible_version_min: '2.17' +ansible_version_max: '2.18' # Top level keys should match ansible_facts.distribution. # These map to lists of supported releases (ansible_facts.distribution_release) or diff --git a/doc/source/conf.py b/doc/source/conf.py index 2542686e0e..add1790c4a 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -142,10 +142,10 @@ else: TESTED_RUNTIMES_GOVERNANCE_URL =\ 'https://governance.openstack.org/tc/reference/runtimes/{}.html'.format(KOLLA_OPENSTACK_RELEASE) -ANSIBLE_CORE_VERSION_MIN = '2.16' -ANSIBLE_CORE_VERSION_MAX = '2.17' -ANSIBLE_VERSION_MIN = '9' -ANSIBLE_VERSION_MAX = '10' +ANSIBLE_CORE_VERSION_MIN = '2.17' +ANSIBLE_CORE_VERSION_MAX = '2.18' +ANSIBLE_VERSION_MIN = '10' +ANSIBLE_VERSION_MAX = '11' GLOBAL_VARIABLE_MAP = { '|ANSIBLE_CORE_VERSION_MIN|': ANSIBLE_CORE_VERSION_MIN, diff --git a/lint-requirements.txt b/lint-requirements.txt index 1dd34e7f8e..64500804f9 100644 --- a/lint-requirements.txt +++ b/lint-requirements.txt @@ -1,4 +1,4 @@ -ansible>=8,<10 # GPLv3 +ansible>=10,<12 # GPLv3 ansible-lint>=6.22.0,<7.0.0 # MIT bandit>=1.1.0 # Apache-2.0 bashate>=0.5.1 # Apache-2.0 diff --git a/releasenotes/notes/ansible-core-bump-2-18-a131f759cf2f23c7.yaml b/releasenotes/notes/ansible-core-bump-2-18-a131f759cf2f23c7.yaml new file mode 100644 index 0000000000..d87c565771 --- /dev/null +++ b/releasenotes/notes/ansible-core-bump-2-18-a131f759cf2f23c7.yaml @@ -0,0 +1,6 @@ +--- +upgrade: + - | + Minimum supported Ansible version is now ``10`` (ansible-core 2.17) + and maximum supported is ``11`` (ansible-core 2.18). + Ansible Collections are now downloaded in latest supported versions. diff --git a/requirements-core.yml b/requirements-core.yml index 189b719f27..a1d367ef2d 100644 --- a/requirements-core.yml +++ b/requirements-core.yml @@ -2,22 +2,22 @@ collections: - name: ansible.netcommon source: https://galaxy.ansible.com - version: <5 + version: <8 - name: ansible.posix source: https://galaxy.ansible.com version: <2 - name: ansible.utils source: https://galaxy.ansible.com - version: <5 + version: <6 - name: community.crypto source: https://galaxy.ansible.com version: <3 - name: community.general source: https://galaxy.ansible.com - version: <7 + version: <11 - name: community.docker source: https://galaxy.ansible.com - version: <4 + version: <5 - name: containers.podman source: https://galaxy.ansible.com version: <2 diff --git a/requirements.txt b/requirements.txt index 797296f42d..568d7f9b63 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,7 +11,7 @@ hvac>=0.10.1 # Apache-2.0 Jinja2>=3 # BSD License (3 clause) # Ansible and ansible's json_query -ansible-core>=2.16,<2.18 # GPLv3 +ansible-core>=2.17,<2.19 # GPLv3 jmespath>=0.9.3 # MIT # ini parsing diff --git a/tests/run.yml b/tests/run.yml index 06445ac39d..3819d35f85 100644 --- a/tests/run.yml +++ b/tests/run.yml @@ -236,11 +236,16 @@ state: directory become: true - - name: Install Python3.12 on RHEL derivatives + - name: Install Python3.12 and dependencies needed for dbus-python on RHEL derivatives dnf: name: - python3.12 - python3.12-devel + - python3.12-pip + - gcc + - dbus-devel + - glib2-devel + - dbus-x11 state: latest when: ansible_facts.os_family == 'RedHat' become: true diff --git a/tests/templates/globals-default.j2 b/tests/templates/globals-default.j2 index 6b34571832..84b5ba4f7c 100644 --- a/tests/templates/globals-default.j2 +++ b/tests/templates/globals-default.j2 @@ -1,9 +1,5 @@ --- -{% if ansible_os_family == 'Debian' %} -# Force the use of python3 on Debian and Ubuntu remote hosts. These distros -# typically have an unversioned Python interpreter which links to python2.7. ansible_python_interpreter: /usr/bin/python3 -{% endif %} kolla_base_distro: "{{ base_distro }}" network_interface: "{{ api_interface_name }}" diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml index 09fa8e69c2..6ced4fc6bf 100644 --- a/zuul.d/base.yaml +++ b/zuul.d/base.yaml @@ -8,8 +8,8 @@ ansible_core_version_constraint: >- {{ ansible_core_version_slurp if is_slurp else ansible_core_version_min if is_upgrade or ansible_facts.distribution != "Ubuntu" else ansible_core_version_max }} ansible_core_version_slurp: "==2.16.*" - ansible_core_version_max: "==2.17.*" - ansible_core_version_min: "==2.16.*" + ansible_core_version_max: "==2.18.*" + ansible_core_version_min: "==2.17.*" # NOTE(mgoddard): Test the use of interface names with dashes. api_interface_name: "vxlan-0" api_network_prefix: "192.0.2." diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index a2c882f89a..0fad67a521 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -162,12 +162,11 @@ parent: kolla-ansible-base nodeset: kolla-ansible-rocky9 timeout: 9000 - branches: master vars: base_distro: rocky is_upgrade: yes is_slurp: yes - previous_release: 2024.1 + previous_release: "2024.1" tls_enabled: true - job: @@ -185,12 +184,11 @@ parent: kolla-ansible-base nodeset: kolla-ansible-debian-bookworm timeout: 9000 - branches: master vars: base_distro: debian is_upgrade: yes is_slurp: yes - previous_release: 2024.1 + previous_release: "2024.1" tls_enabled: true - job: @@ -214,12 +212,11 @@ parent: kolla-ansible-base nodeset: kolla-ansible-noble timeout: 9000 - branches: master vars: base_distro: ubuntu is_upgrade: yes is_slurp: yes - previous_release: 2024.1 + previous_release: "2024.1" tls_enabled: true - job: @@ -236,12 +233,11 @@ parent: kolla-ansible-cephadm-base nodeset: kolla-ansible-rocky9-multi timeout: 9000 - branches: master vars: base_distro: rocky is_upgrade: yes is_slurp: yes - previous_release: 2024.1 + previous_release: "2024.1" - job: name: kolla-ansible-ubuntu-upgrade-cephadm @@ -258,12 +254,11 @@ parent: kolla-ansible-cephadm-base nodeset: kolla-ansible-noble-multi timeout: 9000 - branches: master vars: base_distro: ubuntu is_upgrade: yes is_slurp: yes - previous_release: 2024.1 + previous_release: "2024.1" cephadm_use_package_from_distribution: true - job: