ara/tests/with_container_images.yaml

68 lines
2.2 KiB
YAML

# Copyright (c) 2020 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: Test container images
hosts: all
gather_facts: yes
vars:
ara_api_root_dir: "{{ ansible_user_dir }}/.ara-tests"
ara_api_source: "{{ ansible_user_dir }}/src/opendev.org/recordsansible/ara"
images:
# These are in chronological order of release so that we don't end up
# running SQL migrations backwards during the tests.
- name: localhost/ara-api
tag: fedora32-source-latest
script: fedora32-source.sh
- name: localhost/ara-api
tag: fedora32-pypi-latest
script: fedora32-pypi.sh
- name: localhost/ara-api
tag: centos8-pypi-latest
script: centos8-pypi.sh
- name: localhost/ara-api
tag: fedora32-distribution-latest
script: fedora32-distribution.sh
tasks:
- name: Install git, buildah and podman
become: yes
package:
name:
- git
- buildah
- podman
state: present
# TODO: Troubleshoot permission denied issues when running
# ara-manage generate from container
- when: ansible_os_family == "RedHat"
block:
- name: Install python3-libselinux
become: yes
package:
name: python3-libselinux
state: present
- name: Set selinux to permissive
become: yes
selinux:
policy: targeted
state: permissive
- name: Test each container image
include_tasks: container_test_tasks.yaml
loop: "{{ images }}"