1505353333
The initial version of gating playbook contained ability to run them either on Python2 or Python3 ansible. But it causes a lot of issues e.g. a need to install[1] both versions of libs to support both possible ways to run, discrepancy between local and Zuul run[2] Zuul testing is done with ansible running on Python3 [3]. Meanwhile ppa repo for ansible contains ansible pachage that depends only from python2. There is no package for Python3 and we used only Python2-ansyble. The fact that Zuul runs it with different configuration means that we'll keep facing the issues with dependencies in future, since Gating doesn't test it. This patch changes makes local scripts run as Zuul. PS The script partially takes care of reverting intallation from its previous runs. To cleanup completely it's possible to run [4] in case these pacakges are not used by anyone else [1] https://opendev.org/airship/airshipctl/src/branch/master/roles/libvirt-install/tasks/main.yaml#L38 [2] https://review.opendev.org/#/c/717841/ https://review.opendev.org/#/c/718590/ [3] https://zuul.opendev.org/t/openstack/build/4096513604a84cd2b2f2578fc3f98660/log/zuul-info/host-info.primary.yaml#498 [4] if dpkg -l | grep "ansible.*ppa~bionic"; then sudo apt -y remove ansible sudo apt -y autoremove sudo add-apt-repository -r -y ppa:ansible/ansible sudo apt-get -y update fi + possibly sudo apt remove virtinst python-libvirt python-docker python-requests python-lxml python-libvirt Change-Id: Ia1ac3aa4128f6c4797dea1709ccb8516ae342a66
47 lines
1.4 KiB
YAML
47 lines
1.4 KiB
YAML
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
- name: Install python3-docker and python3-requests Modules
|
|
apt:
|
|
pkg:
|
|
- python3-docker
|
|
- python3-requests
|
|
state: present
|
|
when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'
|
|
|
|
- name: List Docker Images
|
|
shell: docker image ls
|
|
|
|
- name: Push Images
|
|
block:
|
|
- name: Login to Image Registry
|
|
docker_login:
|
|
username: "{{ airshipctl_image_repo_credentials.username }}"
|
|
password: "{{ airshipctl_image_repo_credentials.password }}"
|
|
registry_url: "{{ image_repo }}"
|
|
|
|
- name: Push Image with Latest Tag
|
|
make:
|
|
chdir: "{{ zuul.project.src_dir }}"
|
|
params:
|
|
DOCKER_IMAGE_TAG: latest
|
|
PUBLISH: true
|
|
target: images
|
|
|
|
- name: Push Image with Commit Tag
|
|
make:
|
|
chdir: "{{ zuul.project.src_dir }}"
|
|
params:
|
|
DOCKER_IMAGE_TAG: "{{ zuul.newrev }}"
|
|
PUBLISH: true
|
|
target: images
|