CI: Fix Debian aarch64 jobs

Debian defaults to Python2 which is not complete in aarch64 images.
This patch changes CI to always use Python3.

We need to install several Python modules to have working ussuri jobs.

"Failed to import the required Python library (setuptools) on primary's Python /usr/bin/python3."

And then several Python2 ones for train->ussuri upgrade jobs:

"Unable to find any of pip2 to use. pip needs to be installed."

Change-Id: Ia0d3ff15d97d1cabbb0b8e7f32e8712ca3f94732
This commit is contained in:
Marcin Juszkiewicz 2020-04-27 11:21:51 +02:00 committed by Radosław Piliszek
parent 0747ebf1c9
commit 30b8eed1cd
2 changed files with 33 additions and 2 deletions

View File

@ -25,11 +25,39 @@
tasks:
# NOTE(yoctozepto): we use gawk to add time to each logged line
# outside of Ansible (e.g. for init-runonce)
- name: Install gawk
- name: Install gawk and Python modules
package:
name: gawk
name:
- gawk
- python3-pip
- python3-setuptools
- python3-virtualenv
- python3-wheel
become: true
# FIXME(hrw): drop when previous_release == ussuri
- name: Install Python2 modules for stable/train
package:
name:
- python-pip
- python-setuptools
- python-virtualenv
- python-wheel
become: true
when:
- is_upgrade
- previous_release == 'train'
- not (ansible_os_family == "RedHat" and ansible_distribution_major_version | int == 8)
# NOTE(hrw): On RedHat systems it is part of python3-virtualenv
- name: Install virtualenv on Debian systems
package:
name:
- virtualenv
become: true
when:
ansible_os_family == "Debian"
- name: Ensure /tmp/logs/ dir
file:
path: "{{ logs_dir }}"

View File

@ -38,6 +38,9 @@
neutron_external_network_prefix_length: "24"
neutron_external_interface_name: vxlan1
tls_enabled: false
# NOTE(yoctozepto): Ansible on Debian defaults to /usr/bin/python which is
# python2. Let's use python3 instead as expected in 2020 and beyond.
ansible_python_interpreter: python3
roles:
- zuul: zuul/zuul-jobs