README: update Galaxy badge URL #390
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: tests | |
on: [push, pull_request] | |
jobs: | |
tox27: | |
runs-on: ubuntu-latest | |
container: | |
image: registry.access.redhat.com/rhel7:latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Add CentOS Yum repos | |
run: | | |
cat <<EOF > /etc/yum.repos.d/centos.repo | |
[base] | |
name=CentOS-7 - Base | |
#mirrorlist=http://mirrorlist.centos.org/?release=7&arch=\$basearch&repo=os | |
baseurl=http://mirror.centos.org/centos/7/os/\$basearch/ | |
gpgcheck=1 | |
gpgkey=https://vault.centos.org/RPM-GPG-KEY-CentOS-7 | |
[updates] | |
name=CentOS-7 - Updates | |
#mirrorlist=http://mirrorlist.centos.org/?release=7&arch=\$basearch&repo=updates | |
baseurl=http://mirror.centos.org/centos/7/updates/\$basearch/ | |
gpgcheck=1 | |
gpgkey=https://vault.centos.org/RPM-GPG-KEY-CentOS-7 | |
EOF | |
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm | |
- name: Add minimal setup.py for old tox | |
# Tox 1.4.2 in EPEL 7 does not support the skipsdist option | |
run: | | |
cat <<EOF > setup.py | |
from setuptools import setup, find_packages | |
setup( | |
name='koji-ansible', | |
version='0.0.0', | |
author='Ken Dreyer', | |
author_email='[email protected]', | |
packages=find_packages(), | |
include_package_data=True, | |
) | |
EOF | |
- name: Install dependencies | |
run: | | |
yum --setopt=skip_missing_names_on_install=False -y install krb5-devel python2-devel python2-pip python-tox git-core gcc | |
- name: Test with tox | |
run: | | |
tox -e py27 -- tests | |
tox: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
max-parallel: 5 | |
matrix: | |
include: | |
- python-version: 3.6 | |
os: ubuntu-20.04 | |
- python-version: 3.9 | |
os: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install libkrb5-dev | |
pip install tox | |
- name: Test with tox | |
run: | | |
PY=py$(echo ${{ matrix.python-version }} | tr -d ".") | |
tox -e ${PY} -- --cov-report=xml tests | |
- name: Upload coverage to codecov | |
uses: codecov/codecov-action@v2 | |
with: | |
file: ./coverage.xml | |
fail_ci_if_error: false | |
integration-tests: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
ansible: | |
- ga | |
- pre | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install test dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install \ | |
apache2 \ | |
libapache2-mod-wsgi-py3 \ | |
postgresql \ | |
python3-cryptography \ | |
python3-dateutil \ | |
python3-pip \ | |
python3-psycopg2 \ | |
python3-requests \ | |
python3-rpm \ | |
python3-setuptools \ | |
python3-six | |
- name: Install Ansible | |
env: | |
ANSIBLE: ${{ matrix.ansible }} | |
run: | | |
sudo apt-get purge ansible | |
if [ "$ANSIBLE" = ga ] ; then | |
PIP_IGNORE_INSTALLED=0 pip3 install ansible --user | |
else | |
PIP_IGNORE_INSTALLED=0 pip3 install ansible --user --pre | |
fi | |
- name: Set up test environment | |
run: tests/integration/setup.sh | |
- name: Run integration tests | |
run: tests/integration/run.sh | |
test-collection: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Fetch base branches for version calculation | |
run: | | |
git fetch origin master:master || : | |
[ -z $GITHUB_BASE_REF ] || git fetch origin $GITHUB_BASE_REF:$GITHUB_BASE_REF | |
- uses: actions/setup-python@v4 | |
- name: Install pandoc | |
run: | | |
sudo apt-get update | |
sudo apt-get install pandoc | |
- name: Test collection build | |
run: tests/integration/collection.sh |