trigger github action #926
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: | ||
branches: | ||
- main | ||
- integration_spotter | ||
#paths: | ||
# - 'playbooks/**' | ||
# - 'roles/**' | ||
# - 'tests/**' | ||
# - 'meta/**' | ||
# - 'galaxy.yml' | ||
pull_request: | ||
branches: | ||
- main | ||
- integration_spotter | ||
paths: | ||
- 'playbooks/**' | ||
- 'roles/**' | ||
- 'tests/**' | ||
- 'meta/**' | ||
- 'galaxy.yml' | ||
# 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.15 | ||
- stable-2.16 | ||
- stable-2.17 | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Check out code | ||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | ||
with: | ||
path: ansible_collections/telekom_mms/ansible_collection_icinga | ||
- name: Set up Python ${{ matrix.ansible }} | ||
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5 | ||
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-24.04 | ||
name: I (Ⓐ${{ matrix.ansible }}+py${{ matrix.python }}) | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
ansible: | ||
- stable-2.15 | ||
- stable-2.16 | ||
- stable-2.17 | ||
- devel | ||
python: | ||
- "3.9" | ||
- "3.10" | ||
- "3.11" | ||
- "3.12" | ||
services: | ||
icinga: | ||
image: ghcr.io/telekom-mms/icinga2:director-1.8.1@sha256:bf9205d41607f1641146e870644af0529338d06a9b360737bdf56a3f951cc28b | ||
ports: | ||
- 80:80 | ||
steps: | ||
- name: >- | ||
Perform integration testing against | ||
Ansible version ${{ matrix.ansible }} | ||
under Python ${{ matrix.python }} | ||
uses: ansible-community/ansible-test-gh-action@b416b6ecf7ddb0ea3b0a51c1d198d715eba52c9d # v1.16.0 | ||
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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | ||
- name: Run Linting | ||
uses: ansible/ansible-lint-action@cad5176ea6f24a38f909d688bd467ec8d942d7e1 # v6.17.0 | ||
spotter: | ||
name: Spotter Scan | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: trigger scan | ||
run: | | ||
Check failure on line 120 in .github/workflows/CI.yml GitHub Actions / CI - Linting & TestingInvalid workflow file
Check failure on line 120 in .github/workflows/CI.yml GitHub Actions / CI - Linting & TestingInvalid workflow file
|
||
curl -X POST \ | ||
--fail \ | ||
-s \ | ||
-F token=${{ secrets.SPOTTER_GITLAB_TRIGGER_TOKEN }} \ | ||
-F "ref=main" \ | ||
-F "variables[GITHUB_REPOSITORY]=${{ GITHUB_REPOSITORY }}" \ | ||
-F "variables[SPOTTER_PROJECT]=HqNZew32TFuSmqbb4gnLpw" \ | ||
${{ secrets.SPOTTER_GITLAB_TRIGGER_URL }} > /dev/null | ||
molecule: | ||
name: Molecule | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Check out code | ||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | ||
with: | ||
path: ansible_collections/telekom_mms/ansible_collection_icinga | ||
- name: Set up Python 3.8 | ||
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5 | ||
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" |