diff --git a/ansible/roles/prechecks/vars/main.yml b/ansible/roles/prechecks/vars/main.yml index b55ff5bef8..6e267f3e70 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.12' -ansible_version_max: '2.13' +ansible_version_min: '2.13' +ansible_version_max: '2.14.2' # 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/user/quickstart.rst b/doc/source/user/quickstart.rst index 1254d57628..2cc9e24269 100644 --- a/doc/source/user/quickstart.rst +++ b/doc/source/user/quickstart.rst @@ -90,11 +90,13 @@ Install dependencies for the virtual environment pip install -U pip #. Install `Ansible `__. Kolla Ansible requires at least - Ansible ``4`` and supports up to ``5``. + Ansible ``6`` and supports up to ``7``. Ansible-core must not be greater + than 2.14.2 due to a regression. .. code-block:: console - pip install 'ansible>=4,<6' + pip install 'ansible-core>=2.13,<=2.14.2' + pip install 'ansible>=6,<8' Install Kolla-ansible diff --git a/doc/source/user/virtual-environments.rst b/doc/source/user/virtual-environments.rst index 5bf780eec0..9324429a67 100644 --- a/doc/source/user/virtual-environments.rst +++ b/doc/source/user/virtual-environments.rst @@ -26,7 +26,8 @@ python virtual environment on the Ansible control host. For example: source /path/to/venv/bin/activate pip install -U pip pip install kolla-ansible - pip install 'ansible>=4,<6' + pip install 'ansible-core>=2.13,<=2.14.2' + pip install 'ansible>=6,<8' deactivate To use the virtual environment, it should first be activated: diff --git a/releasenotes/notes/ansible-2.14-d83c5ce197321353.yaml b/releasenotes/notes/ansible-2.14-d83c5ce197321353.yaml new file mode 100644 index 0000000000..15a4646aa8 --- /dev/null +++ b/releasenotes/notes/ansible-2.14-d83c5ce197321353.yaml @@ -0,0 +1,6 @@ +--- +upgrade: + - | + Minimum supported Ansible version is now ``6`` (ansible-core 2.13) + and maximum supported is ``7`` (ansible-core 2.14). Due to a regression in + ``ansible-core``, it must not be greater than ``2.14.2``. diff --git a/tests/run.yml b/tests/run.yml index b89b8a261f..c744a1c06a 100644 --- a/tests/run.yml +++ b/tests/run.yml @@ -231,20 +231,25 @@ - name: Ensure the latest tested pip pip: - name: "pip==22.*" + name: "pip==23.*" state: latest virtualenv: "{{ kolla_ansible_venv_path }}" - name: Ensure the latest tested setuptools pip: - name: "setuptools==65.*" + name: "setuptools==67.2.0" state: latest virtualenv: "{{ kolla_ansible_venv_path }}" - name: install kolla-ansible and dependencies vars: - ansible_version_min: "==5.*" - ansible_version_max: "==6.*" + ansible_core_version_min: "==2.13.*" + ansible_core_version_max: "==2.14.2" + # Test latest ansible version on Ubuntu, minimum supported on others. + ansible_core_version_constraint: >- + {{ ansible_core_version_min if is_upgrade or base_distro != 'ubuntu' else ansible_core_version_max }} + ansible_version_min: "==6.*" + ansible_version_max: "==7.*" # Test latest ansible version on Ubuntu, minimum supported on others. ansible_version_constraint: >- {{ ansible_version_min if is_upgrade or base_distro != 'ubuntu' else ansible_version_max }} @@ -252,6 +257,7 @@ extra_args: "-c {{ upper_constraints_file }}" name: - "{{ kolla_ansible_src_dir }}" + - "ansible-core{{ ansible_core_version_constraint }}" - "ansible{{ ansible_version_constraint }}" - "ara<1.0.0" virtualenv: "{{ kolla_ansible_venv_path }}" diff --git a/tools/kolla-ansible b/tools/kolla-ansible index 9fce6e824f..f9cb791d0c 100755 --- a/tools/kolla-ansible +++ b/tools/kolla-ansible @@ -7,8 +7,8 @@ set -o errexit # do not use _PYTHON_BIN directly, use $(get_python_bin) instead _PYTHON_BIN="" -ANSIBLE_VERSION_MIN=2.12 -ANSIBLE_VERSION_MAX=2.13 +ANSIBLE_VERSION_MIN=2.13 +ANSIBLE_VERSION_MAX=2.14 function get_python_bin { if [ -n "$_PYTHON_BIN" ]; then