Add python3-virtualenv to required packages on Fedora

This wasn't caught in the integration tests because it is presumably
included in the image we were using. Ansible will complain that it can't
find a virtualenv binary if it isn't installed.

Also work around the fact that the virtualenv packages are excluded
in the dnf configuration.

Change-Id: Id1bc861c99d04dad4d9c6b366b680e00e6891db7
This commit is contained in:
David Moreau Simard 2019-02-06 17:13:45 -05:00
parent 09ba06020d
commit 4bf2476a95
No known key found for this signature in database
GPG Key ID: CBEB466764A9E621
3 changed files with 37 additions and 0 deletions

View File

@ -67,6 +67,7 @@
- test-requirements.txt
required-projects:
- openstack/ara-server
pre-run: tests/role-integration-pre.yaml
run: playbooks/ara-server.yaml
- job:

View File

@ -18,5 +18,6 @@
ara_server_required_packages:
- git
- python3-virtualenv
- libselinux-python
- policycoreutils-python-utils

View File

@ -0,0 +1,35 @@
---
# Copyright (c) 2018 Red Hat, Inc.
#
# This file is part of ARA Records Ansible.
#
# ARA is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# ARA is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with ARA. If not, see <http://www.gnu.org/licenses/>.
- name: Role integration pre-run
hosts: all
gather_facts: yes
tasks:
# The images built with diskimage-builder by the OpenStack infrastructure
# currently installs the virtualenv packages on Fedora and adds them to the
# exclude list in /etc/dnf/dnf.conf.
# Work around this since it prevents the role from working properly.
# When it attempts to install python3-virtualenv, it won't be found because of the exclude.
# Reference: https://github.com/openstack/diskimage-builder/blob/5b1844acf99d3797b1bbe02601e5ce94308cab55/diskimage_builder/elements/pip-and-virtualenv/install.d/pip-and-virtualenv-source-install/04-install-pip#L134
- name: Remove DNF excludes for Fedora
become: yes
lineinfile:
path: /etc/dnf/dnf.conf
regexp: "^exclude="
state: absent
when: ansible_distribution == "Fedora"