Merge pull request #55 from telekom-mms/renovate/ubuntu-22.x #825
Workflow file for this run
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: CI - Linting & Testing | |
on: | |
push: | |
pull_request: | |
# Run CI once per week (at 06:00 UTC) | |
# This ensures that even if there haven't been commits that we are still | |
# testing against latest version of ansible-test for each ansible-core | |
# version | |
schedule: | |
- cron: "0 6 * * 1" | |
concurrency: | |
group: >- | |
${{ github.workflow }}-${{ | |
github.event.pull_request.number || github.sha | |
}} | |
cancel-in-progress: true | |
jobs: | |
ansible-sanity-tests: | |
name: Sanity (Ⓐ${{ matrix.ansible }}) | |
strategy: | |
matrix: | |
ansible: | |
- stable-2.9 | |
- stable-2.10 | |
- stable-2.11 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
with: | |
path: ansible_collections/telekom_mms/ansible_collection_icinga | |
- name: Set up Python ${{ matrix.ansible }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
- name: Install ansible-base (${{ matrix.ansible }}) | |
run: python -m pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible }}.tar.gz --disable-pip-version-check | |
- name: Run sanity tests | |
run: ansible-test sanity --docker -v --color | |
working-directory: ./ansible_collections/telekom_mms/ansible_collection_icinga | |
integration: | |
runs-on: ubuntu-22.04 | |
name: I (Ⓐ${{ matrix.ansible }}+py${{ matrix.python }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
ansible: | |
- stable-2.12 | |
- stable-2.13 | |
- stable-2.14 | |
- devel | |
python: | |
- "3.8" | |
- "3.9" | |
- "3.10" | |
services: | |
icinga: | |
image: ghcr.io/telekom-mms/icinga2:director-1.8.1 | |
ports: | |
- 80:80 | |
steps: | |
- name: >- | |
Perform integration testing against | |
Ansible version ${{ matrix.ansible }} | |
under Python ${{ matrix.python }} | |
uses: ansible-community/[email protected] | |
with: | |
ansible-core-version: ${{ matrix.ansible }} | |
# OPTIONAL command to run before invoking `ansible-test integration` | |
pre-test-cmd: sed -i "s/127.0.0.1/icinga/g" tests/integration/integration_config.yml | |
target-python-version: ${{ matrix.python }} | |
testing-type: integration | |
test-deps: telekom_mms.icinga_director | |
linting: | |
name: Ansible Lint | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Run Linting | |
uses: ansible/[email protected] | |
molecule: | |
name: Molecule | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
with: | |
path: ansible_collections/telekom_mms/ansible_collection_icinga | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
- name: Install dependencies | |
run: | | |
python3 -m pip install --upgrade pip | |
python3 -m pip install -r requirements.txt | |
working-directory: ansible_collections/telekom_mms/ansible_collection_icinga | |
- name: Test role icinga_agent with molecule | |
run: molecule test | |
working-directory: ansible_collections/telekom_mms/ansible_collection_icinga/roles/icinga_agent | |
env: | |
PY_COLORS: "1" | |
ANSIBLE_FORCE_COLOR: "1" | |
- name: Test role icinga_plugins with molecule | |
run: molecule test | |
working-directory: ansible_collections/telekom_mms/ansible_collection_icinga/roles/icinga_plugins | |
env: | |
PY_COLORS: "1" | |
ANSIBLE_FORCE_COLOR: "1" |