From 65587cb2793936e56fee28f4b082b5809e400e69 Mon Sep 17 00:00:00 2001 From: Michal Nasiadka Date: Tue, 13 Dec 2022 09:35:49 +0000 Subject: [PATCH] Bump up Ansible supported versions to 5.x/6.x This change bumps up the maximum supported Ansible version to 6.x (ansible-core 2.13.x) and minimum to 5.x. This synchronises Kayobe with Kolla Ansible. Shebang has been removed from modules due to [1]. os_openstacksdk_version has been added as openstack cloud modules don't support versions greater than 0.99. [1]: https://github.com/ansible/ansible/pull/76677 Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/867546 Change-Id: Ibb00f6d079442a8509411ae8a71d74fd7bd8cccd --- ansible/baremetal-compute-inspect.yml | 3 +-- ansible/baremetal-compute-manage.yml | 3 +-- ansible/baremetal-compute-provide.yml | 3 +-- ansible/external-net.yml | 3 +-- ansible/inventory/group_vars/all/pip | 3 +++ .../overcloud-introspection-rules-dell-lldp-workaround.yml | 2 +- ansible/overcloud-introspection-rules.yml | 4 ++-- ansible/overcloud-ipa-images.yml | 4 ++-- ansible/provision-net.yml | 4 ++-- .../roles/console-allocation/library/console_allocation.py | 2 -- ansible/roles/ip-allocation/library/ip_allocation.py | 2 -- ansible/roles/ipa-images/meta/main.yml | 2 +- .../library/os_ironic_inspector_rule.py | 2 -- ansible/roles/ironic-inspector-rules/meta/main.yml | 2 +- ansible/roles/kolla-ansible/defaults/main.yml | 2 +- ansible/roles/kolla-ansible/library/kolla_passwords.py | 2 -- ansible/roles/wipe-disks/library/blockdevice_info.py | 2 -- ansible/seed-introspection-rules.yml | 4 ++-- kayobe/plugins/action/merge_configs.py | 2 -- kayobe/plugins/action/merge_yaml.py | 2 -- releasenotes/notes/bump-ansible-6-5d7175aa0d962268.yaml | 6 ++++++ requirements.txt | 2 +- 22 files changed, 26 insertions(+), 35 deletions(-) create mode 100644 releasenotes/notes/bump-ansible-6-5d7175aa0d962268.yaml diff --git a/ansible/baremetal-compute-inspect.yml b/ansible/baremetal-compute-inspect.yml index d66061ced..45d8c3d29 100644 --- a/ansible/baremetal-compute-inspect.yml +++ b/ansible/baremetal-compute-inspect.yml @@ -15,8 +15,7 @@ - role: stackhpc.os_openstacksdk os_openstacksdk_venv: "{{ venv }}" os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest - os_openstacksdk_upper_constraints_file: "{{ pip_upper_constraints_file }}" + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" - name: Ensure baremetal compute nodes are inspected in ironic hosts: baremetal-compute diff --git a/ansible/baremetal-compute-manage.yml b/ansible/baremetal-compute-manage.yml index 27f1fce85..2f1c586d2 100644 --- a/ansible/baremetal-compute-manage.yml +++ b/ansible/baremetal-compute-manage.yml @@ -15,8 +15,7 @@ - role: stackhpc.os_openstacksdk os_openstacksdk_venv: "{{ venv }}" os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest - os_openstacksdk_upper_constraints_file: "{{ pip_upper_constraints_file }}" + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" - name: Ensure baremetal compute nodes are manageable in ironic hosts: baremetal-compute diff --git a/ansible/baremetal-compute-provide.yml b/ansible/baremetal-compute-provide.yml index 7361c4e66..964e9c272 100644 --- a/ansible/baremetal-compute-provide.yml +++ b/ansible/baremetal-compute-provide.yml @@ -15,8 +15,7 @@ - role: stackhpc.os_openstacksdk os_openstacksdk_venv: "{{ venv }}" os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest - os_openstacksdk_upper_constraints_file: "{{ pip_upper_constraints_file }}" + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" - name: Ensure baremetal compute nodes are available in ironic hosts: baremetal-compute diff --git a/ansible/external-net.yml b/ansible/external-net.yml index 02b70b862..66d2adb00 100644 --- a/ansible/external-net.yml +++ b/ansible/external-net.yml @@ -5,8 +5,7 @@ roles: - role: stackhpc.os-networks os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest - os_openstacksdk_upper_constraints_file: "{{ pip_upper_constraints_file }}" + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" os_networks_venv: "{{ virtualenv_path }}/openstacksdk" os_networks_openstack_auth_type: "{{ openstack_auth_type }}" os_networks_openstack_auth: "{{ openstack_auth }}" diff --git a/ansible/inventory/group_vars/all/pip b/ansible/inventory/group_vars/all/pip index 8a9c90562..42444c091 100644 --- a/ansible/inventory/group_vars/all/pip +++ b/ansible/inventory/group_vars/all/pip @@ -1,3 +1,6 @@ --- # Upper constraints file for installation of python packages. pip_upper_constraints_file: "https://releases.openstack.org/constraints/upper/{{ openstack_release }}" + +# Upper constraints file for installation of openstacksdk. +openstacksdk_upper_constraints_file: "https://releases.openstack.org/constraints/upper/yoga" \ No newline at end of file diff --git a/ansible/overcloud-introspection-rules-dell-lldp-workaround.yml b/ansible/overcloud-introspection-rules-dell-lldp-workaround.yml index 4f7006615..fd9e9abc7 100644 --- a/ansible/overcloud-introspection-rules-dell-lldp-workaround.yml +++ b/ansible/overcloud-introspection-rules-dell-lldp-workaround.yml @@ -126,7 +126,7 @@ roles: - role: ironic-inspector-rules os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" ironic_inspector_venv: "{{ virtualenv_path }}/openstacksdk" ironic_inspector_upper_constraints_file: "{{ pip_upper_constraints_file }}" ironic_inspector_auth_type: "{{ openstack_auth_type }}" diff --git a/ansible/overcloud-introspection-rules.yml b/ansible/overcloud-introspection-rules.yml index 982f1fd29..98d3ca8cc 100644 --- a/ansible/overcloud-introspection-rules.yml +++ b/ansible/overcloud-introspection-rules.yml @@ -59,9 +59,9 @@ roles: - role: ironic-inspector-rules os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest + os_openstacksdk_state: "latest" ironic_inspector_venv: "{{ venv }}" - ironic_inspector_upper_constraints_file: "{{ pip_upper_constraints_file }}" + ironic_inspector_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" ironic_inspector_auth_type: "{{ openstack_auth_type }}" ironic_inspector_auth: "{{ openstack_auth }}" ironic_inspector_cacert: "{{ openstack_cacert }}" diff --git a/ansible/overcloud-ipa-images.yml b/ansible/overcloud-ipa-images.yml index 7246faf90..0b8242a15 100644 --- a/ansible/overcloud-ipa-images.yml +++ b/ansible/overcloud-ipa-images.yml @@ -101,9 +101,9 @@ roles: - role: ipa-images os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest + os_openstacksdk_state: "latest" ipa_images_venv: "{{ virtualenv_path }}/openstacksdk" - ipa_images_upper_constraints_file: "{{ pip_upper_constraints_file }}" + ipa_images_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" ipa_images_openstack_auth_type: "{{ openstack_auth_type }}" ipa_images_openstack_auth: "{{ openstack_auth }}" ipa_images_openstack_auth_env: "{{ openstack_auth_env }}" diff --git a/ansible/provision-net.yml b/ansible/provision-net.yml index 54a5b4fc6..e5045f7e8 100644 --- a/ansible/provision-net.yml +++ b/ansible/provision-net.yml @@ -65,8 +65,8 @@ roles: - role: stackhpc.os-networks os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest - os_networks_upper_constraints_file: "{{ pip_upper_constraints_file }}" + os_openstacksdk_state: "latest" + os_networks_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" os_networks_venv: "{{ venv }}" os_networks_auth_type: "{{ openstack_auth_type }}" os_networks_auth: "{{ openstack_auth }}" diff --git a/ansible/roles/console-allocation/library/console_allocation.py b/ansible/roles/console-allocation/library/console_allocation.py index ee652d0ee..74ce46036 100644 --- a/ansible/roles/console-allocation/library/console_allocation.py +++ b/ansible/roles/console-allocation/library/console_allocation.py @@ -1,5 +1,3 @@ -#!/usr/bin/python3 - # Copyright (c) 2017 StackHPC Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); you may diff --git a/ansible/roles/ip-allocation/library/ip_allocation.py b/ansible/roles/ip-allocation/library/ip_allocation.py index 1a135518d..5cf90bd05 100644 --- a/ansible/roles/ip-allocation/library/ip_allocation.py +++ b/ansible/roles/ip-allocation/library/ip_allocation.py @@ -1,5 +1,3 @@ -#!/usr/bin/python3 - # Copyright (c) 2017 StackHPC Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); you may diff --git a/ansible/roles/ipa-images/meta/main.yml b/ansible/roles/ipa-images/meta/main.yml index a1914d381..4c62fc363 100644 --- a/ansible/roles/ipa-images/meta/main.yml +++ b/ansible/roles/ipa-images/meta/main.yml @@ -2,7 +2,7 @@ dependencies: - role: stackhpc.os_openstacksdk os_openstacksdk_venv: "{{ ipa_images_venv }}" - os_openstacksdk_upper_constraints_file: "{{ ipa_images_upper_constraints_file }}" + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" - role: stackhpc.os-openstackclient os_openstackclient_venv: "{{ ipa_images_venv }}" os_openstackclient_upper_constraints_file: "{{ ipa_images_upper_constraints_file }}" diff --git a/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py b/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py index 56c26e0fc..a8a95efd1 100644 --- a/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py +++ b/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py @@ -1,5 +1,3 @@ -#!/usr/bin/python3 - # Copyright (c) 2017 StackHPC Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); you may diff --git a/ansible/roles/ironic-inspector-rules/meta/main.yml b/ansible/roles/ironic-inspector-rules/meta/main.yml index 68a2262c3..225ec9f5c 100644 --- a/ansible/roles/ironic-inspector-rules/meta/main.yml +++ b/ansible/roles/ironic-inspector-rules/meta/main.yml @@ -2,4 +2,4 @@ dependencies: - role: stackhpc.os_openstacksdk os_openstacksdk_venv: "{{ ironic_inspector_venv }}" - os_openstacksdk_upper_constraints_file: "{{ ironic_inspector_upper_constraints_file }}" + os_openstacksdk_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" \ No newline at end of file diff --git a/ansible/roles/kolla-ansible/defaults/main.yml b/ansible/roles/kolla-ansible/defaults/main.yml index 09dc388eb..3cee9c96c 100644 --- a/ansible/roles/kolla-ansible/defaults/main.yml +++ b/ansible/roles/kolla-ansible/defaults/main.yml @@ -24,7 +24,7 @@ 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>=4,<6.0' +kolla_ansible_venv_ansible: 'ansible>=5,<7.0' # 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/library/kolla_passwords.py b/ansible/roles/kolla-ansible/library/kolla_passwords.py index 733f5e038..049f2b09f 100644 --- a/ansible/roles/kolla-ansible/library/kolla_passwords.py +++ b/ansible/roles/kolla-ansible/library/kolla_passwords.py @@ -1,5 +1,3 @@ -#!/usr/bin/python3 - # Copyright (c) 2017 StackHPC Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); you may diff --git a/ansible/roles/wipe-disks/library/blockdevice_info.py b/ansible/roles/wipe-disks/library/blockdevice_info.py index 4a109283f..b5fa5840c 100644 --- a/ansible/roles/wipe-disks/library/blockdevice_info.py +++ b/ansible/roles/wipe-disks/library/blockdevice_info.py @@ -1,5 +1,3 @@ -#!/usr/bin/python3 - DOCUMENTATION = ''' --- module: blockdevice_info diff --git a/ansible/seed-introspection-rules.yml b/ansible/seed-introspection-rules.yml index f59655af6..247f2929a 100644 --- a/ansible/seed-introspection-rules.yml +++ b/ansible/seed-introspection-rules.yml @@ -6,9 +6,9 @@ roles: - role: ironic-inspector-rules os_openstacksdk_install_epel: "{{ dnf_install_epel }}" - os_openstacksdk_state: latest + os_openstacksdk_state: "latest" ironic_inspector_venv: "{{ virtualenv_path }}/openstacksdk" - ironic_inspector_upper_constraints_file: "{{ pip_upper_constraints_file }}" + ironic_inspector_upper_constraints_file: "{{ openstacksdk_upper_constraints_file }}" ironic_inspector_cloud: bifrost ironic_inspector_rules: "{{ kolla_bifrost_inspector_rules }}" # These variables may be referenced in the introspection rules. diff --git a/kayobe/plugins/action/merge_configs.py b/kayobe/plugins/action/merge_configs.py index 1e7e9da8f..ce45bf763 100644 --- a/kayobe/plugins/action/merge_configs.py +++ b/kayobe/plugins/action/merge_configs.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python - # Copyright 2015 Sam Yaple # Copyright 2017 99Cloud Inc. # diff --git a/kayobe/plugins/action/merge_yaml.py b/kayobe/plugins/action/merge_yaml.py index b2e5a621a..943ca0158 100644 --- a/kayobe/plugins/action/merge_yaml.py +++ b/kayobe/plugins/action/merge_yaml.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python - # Copyright 2015 Sam Yaple # Copyright 2016 intel # diff --git a/releasenotes/notes/bump-ansible-6-5d7175aa0d962268.yaml b/releasenotes/notes/bump-ansible-6-5d7175aa0d962268.yaml new file mode 100644 index 000000000..b65317635 --- /dev/null +++ b/releasenotes/notes/bump-ansible-6-5d7175aa0d962268.yaml @@ -0,0 +1,6 @@ +--- +upgrade: + - | + Updates the maximum supported version of Ansible from 5.x (ansible-core + 2.12) to 6.x (ansible-core 2.13). The minimum supported version is updated + from 4.x to 5.x. This is true for both Kayobe and Kolla Ansible. diff --git a/requirements.txt b/requirements.txt index 107802870..2f4e5b8f7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ pbr>=2.0 # Apache-2.0 Jinja2>3 # BSD -ansible>=4,<6.0 # GPLv3 +ansible>=5,<7.0 # GPLv3 cliff>=3.1.0 # Apache netaddr!=0.7.16,>=0.7.13 # BSD PyYAML>=3.10.0 # MIT