Bump max Ansible version to 2.10

Molecule also needs to be bumped to support Ansible 2.10
lint: section changed in Molecule 3.x - adapted.
molecule-docker added do test-reqs because it code has moved to it from
molecule core
pytest-testinfra and pytest-molecule needed for testinfra tests to work

[1]: https://github.com/ansible-community/molecule/issues/2872

Change-Id: I0299f5126ebd080f3912a76294b0013abe7747a0
This commit is contained in:
Michal Nasiadka 2021-03-18 14:13:24 +00:00
parent 775620733b
commit 16cce92a74
17 changed files with 38 additions and 26 deletions

View File

@ -1,3 +1,4 @@
---
extends: default
rules:

View File

@ -62,28 +62,22 @@
- block:
- name: Gather facts about Ironic Python Agent (IPA) kernel image
os_image_facts:
os_image_info:
auth_type: "{{ ipa_images_openstack_auth_type }}"
auth: "{{ ipa_images_openstack_auth }}"
cacert: "{{ ipa_images_openstack_cacert | default(omit, true) }}"
interface: "{{ ipa_images_openstack_interface | default(omit, true) }}"
image: "{{ ipa_images_kernel_name }}"
- name: Set a fact containing the Ironic Python Agent (IPA) kernel image
set_fact:
ipa_images_kernel_openstack_image: "{{ openstack_image if openstack_image else {} }}"
register: ipa_images_kernel
- name: Gather facts about Ironic Python Agent (IPA) ramdisk image
os_image_facts:
os_image_info:
auth_type: "{{ ipa_images_openstack_auth_type }}"
auth: "{{ ipa_images_openstack_auth }}"
cacert: "{{ ipa_images_openstack_cacert | default(omit, true) }}"
interface: "{{ ipa_images_openstack_interface | default(omit, true) }}"
image: "{{ ipa_images_ramdisk_name }}"
- name: Set a fact containing the Ironic Python Agent (IPA) ramdisk image
set_fact:
ipa_images_ramdisk_openstack_image: "{{ openstack_image if openstack_image else {} }}"
register: ipa_images_ramdisk
# The os_image module will get confused if there are multiple images with the
# same name, so rename the old images. They will still be accessible via UUID.
@ -94,13 +88,13 @@
extension: "{{ item.created_at | replace(':', '-') }}~"
with_items:
- name: "{{ ipa_images_kernel_name }}"
created_at: "{{ ipa_images_kernel_openstack_image.created_at | default }}"
created_at: "{{ ipa_images_kernel.openstack_image.created_at | default }}"
checksum: "{{ ipa_images_checksum.results[0].stat.checksum }}"
glance_checksum: "{{ ipa_images_kernel_openstack_image.checksum | default }}"
glance_checksum: "{{ ipa_images_kernel.openstack_image.checksum | default }}"
- name: "{{ ipa_images_ramdisk_name }}"
created_at: "{{ ipa_images_ramdisk_openstack_image.created_at | default }}"
created_at: "{{ ipa_images_ramdisk.openstack_image.created_at | default }}"
checksum: "{{ ipa_images_checksum.results[1].stat.checksum }}"
glance_checksum: "{{ ipa_images_ramdisk_openstack_image.checksum | default }}"
glance_checksum: "{{ ipa_images_ramdisk.openstack_image.checksum | default }}"
when:
- item.glance_checksum
- item.checksum != item.glance_checksum

View File

@ -67,7 +67,7 @@
# Limit the version of ansible used by kolla-ansible to avoid new
# releases from breaking tested code. Changes to this limit should be
# tested.
- ansible>=2.9,<2.10,!=2.9.8,!=2.9.12
- ansible>=2.9,<2.11,!=2.9.8,!=2.9.12
- selinux
pip:
name: "{{ (kolla_ansible_packages + kolla_ansible_venv_extra_requirements) | select | list }}"

View File

@ -6,4 +6,4 @@ kolla_ansible_package_dependencies:
- libssl-dev
- python3-dev
- python3-pip
- python3-venv
- python3-virtualenv

View File

@ -1,3 +1,4 @@
---
extends: default
rules:

View File

@ -0,0 +1,3 @@
---
collections:
- community.molecule

View File

@ -7,7 +7,7 @@
molecule_file: "{{ lookup('env', 'MOLECULE_FILE') }}"
molecule_ephemeral_directory: "{{ lookup('env', 'MOLECULE_EPHEMERAL_DIRECTORY') }}"
molecule_scenario_directory: "{{ lookup('env', 'MOLECULE_SCENARIO_DIRECTORY') }}"
molecule_yml: "{{ lookup('file', molecule_file) | molecule_from_yaml }}"
molecule_yml: "{{ lookup('file', molecule_file) | community.molecule.from_yaml }}"
tasks:
- name: Create Dockerfiles from image names
template:

View File

@ -6,7 +6,7 @@
no_log: "{{ not lookup('env', 'MOLECULE_DEBUG') | bool }}"
vars:
molecule_file: "{{ lookup('env', 'MOLECULE_FILE') }}"
molecule_yml: "{{ lookup('file', molecule_file) | molecule_from_yaml }}"
molecule_yml: "{{ lookup('file', molecule_file) | community.molecule.from_yaml }}"
tasks:
- name: Destroy molecule instance(s)
docker_container:

View File

@ -1,10 +1,12 @@
---
dependency:
name: galaxy
options:
requirements-file: molecule/collections.yml
driver:
name: docker
lint:
name: yamllint
lint: |
yamllint .
platforms:
- name: centos-8
image: centos:8

View File

@ -8,7 +8,7 @@
molecule_file: "{{ lookup('env', 'MOLECULE_FILE') }}"
molecule_ephemeral_directory: "{{ lookup('env', 'MOLECULE_EPHEMERAL_DIRECTORY') }}"
molecule_scenario_directory: "{{ lookup('env', 'MOLECULE_SCENARIO_DIRECTORY') }}"
molecule_yml: "{{ lookup('file', molecule_file) | molecule_from_yaml }}"
molecule_yml: "{{ lookup('file', molecule_file) | community.molecule.from_yaml }}"
tasks:
- name: Create Dockerfiles from image names
template:

View File

@ -6,7 +6,7 @@
no_log: "{{ not lookup('env', 'MOLECULE_DEBUG') | bool }}"
vars:
molecule_file: "{{ lookup('env', 'MOLECULE_FILE') }}"
molecule_yml: "{{ lookup('file', molecule_file) | molecule_from_yaml }}"
molecule_yml: "{{ lookup('file', molecule_file) | community.molecule.from_yaml }}"
tasks:
- name: Destroy molecule instance(s)
docker_container:

View File

@ -1,10 +1,12 @@
---
dependency:
name: galaxy
options:
requirements-file: molecule/collections.yml
driver:
name: docker
lint:
name: yamllint
lint: |
yamllint .
platforms:
- name: centos-8
image: centos:8

View File

@ -0,0 +1,6 @@
---
upgrade:
- |
Updates the maximum supported version of Ansible from 2.9 to 2.10. The
minimum supported version stays at 2.9. This is true for both Kayobe and
Kolla Ansible.

View File

@ -1,5 +1,5 @@
pbr>=2.0 # Apache-2.0
ansible>=2.9.0,<2.10.0,!=2.9.8,!=2.9.12 # GPLv3
ansible>=2.9.0,<2.11.0,!=2.9.8,!=2.9.12 # GPLv3
cliff>=3.1.0 # Apache
netaddr!=0.7.16,>=0.7.13 # BSD
PyYAML>=3.10.0 # MIT

View File

@ -8,9 +8,12 @@ coverage>=4.0 # Apache-2.0
doc8 # Apache-2.0
docker # Apache-2.0
hacking>=3.0.1,<3.1.0 # Apache-2.0
molecule<3 # MIT
molecule # MIT
molecule-docker # MIT
oslotest>=1.10.0 # Apache-2.0
# paramiko 2.5.0 makes the kayobe-tox-molecule job fail.
paramiko
pytest-molecule # MIT
pytest-testinfra
stestr # Apache-2.0
yamllint # GPLv3