mirror of
https://github.com/ansible-collections/community.routeros.git
synced 2025-08-03 01:34:40 +02:00
158 lines
6.1 KiB
YAML
158 lines
6.1 KiB
YAML
---
|
|
# Copyright (c) Ansible Project
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
# For the comprehensive list of the inputs supported by the ansible-community/ansible-test-gh-action GitHub Action, see
|
|
# https://github.com/marketplace/actions/ansible-test
|
|
|
|
name: CI
|
|
on:
|
|
# Run CI against all pushes (direct commits, also merged PRs), Pull Requests
|
|
push:
|
|
branches:
|
|
- main
|
|
- stable-*
|
|
pull_request:
|
|
# Run CI once per day (at 05:15 UTC)
|
|
schedule:
|
|
- cron: '15 5 * * *'
|
|
|
|
jobs:
|
|
sanity:
|
|
name: Sanity (Ⓐ${{ matrix.ansible }})
|
|
strategy:
|
|
matrix:
|
|
ansible:
|
|
# It's important that Sanity is tested against all stable-X.Y branches
|
|
# Testing against `devel` may fail as new tests are added.
|
|
- stable-2.9
|
|
- stable-2.10
|
|
- stable-2.11
|
|
- stable-2.12
|
|
- stable-2.13
|
|
- stable-2.14
|
|
- stable-2.15
|
|
- devel
|
|
# Ansible-test on various stable branches does not yet work well with cgroups v2.
|
|
# Since ubuntu-latest now uses Ubuntu 22.04, we need to fall back to the ubuntu-20.04
|
|
# image for these stable branches. The list of branches where this is necessary will
|
|
# shrink over time, check out https://github.com/ansible-collections/news-for-maintainers/issues/28
|
|
# for the latest list.
|
|
runs-on: >-
|
|
${{ contains(fromJson(
|
|
'["stable-2.9", "stable-2.10", "stable-2.11"]'
|
|
), matrix.ansible) && 'ubuntu-20.04' || 'ubuntu-latest' }}
|
|
steps:
|
|
- name: Perform sanity testing
|
|
uses: felixfontein/ansible-test-gh-action@main
|
|
with:
|
|
ansible-core-version: ${{ matrix.ansible }}
|
|
testing-type: sanity
|
|
# NOTE: we're installing with git to work around Galaxy being a huge PITA (https://github.com/ansible/galaxy/issues/2429)
|
|
pre-test-cmd: |-
|
|
git clone --depth=1 --single-branch https://github.com/ansible-collections/ansible.netcommon.git ../../ansible/netcommon
|
|
git clone --depth=1 --single-branch https://github.com/ansible-collections/ansible.utils.git ../../ansible/utils
|
|
|
|
units:
|
|
# Ansible-test on various stable branches does not yet work well with cgroups v2.
|
|
# Since ubuntu-latest now uses Ubuntu 22.04, we need to fall back to the ubuntu-20.04
|
|
# image for these stable branches. The list of branches where this is necessary will
|
|
# shrink over time, check out https://github.com/ansible-collections/news-for-maintainers/issues/28
|
|
# for the latest list.
|
|
runs-on: >-
|
|
${{ contains(fromJson(
|
|
'["stable-2.9", "stable-2.10", "stable-2.11"]'
|
|
), matrix.ansible) && 'ubuntu-20.04' || 'ubuntu-latest' }}
|
|
name: Units (Ⓐ${{ matrix.ansible }})
|
|
strategy:
|
|
# As soon as the first unit test fails, cancel the others to free up the CI queue
|
|
fail-fast: true
|
|
matrix:
|
|
ansible:
|
|
- stable-2.9
|
|
- stable-2.10
|
|
- stable-2.11
|
|
- stable-2.12
|
|
- stable-2.13
|
|
- stable-2.14
|
|
- stable-2.15
|
|
- devel
|
|
|
|
steps:
|
|
- name: >-
|
|
Perform unit testing against
|
|
Ansible version ${{ matrix.ansible }}
|
|
uses: felixfontein/ansible-test-gh-action@main
|
|
with:
|
|
ansible-core-version: ${{ matrix.ansible }}
|
|
testing-type: units
|
|
# NOTE: we're installing with git to work around Galaxy being a huge PITA (https://github.com/ansible/galaxy/issues/2429)
|
|
pre-test-cmd: |-
|
|
git clone --depth=1 --single-branch https://github.com/ansible-collections/ansible.netcommon.git ../../ansible/netcommon
|
|
git clone --depth=1 --single-branch https://github.com/ansible-collections/ansible.utils.git ../../ansible/utils
|
|
|
|
integration:
|
|
# Ansible-test on various stable branches does not yet work well with cgroups v2.
|
|
# Since ubuntu-latest now uses Ubuntu 22.04, we need to fall back to the ubuntu-20.04
|
|
# image for these stable branches. The list of branches where this is necessary will
|
|
# shrink over time, check out https://github.com/ansible-collections/news-for-maintainers/issues/28
|
|
# for the latest list.
|
|
runs-on: >-
|
|
${{ contains(fromJson(
|
|
'["stable-2.9", "stable-2.10", "stable-2.11"]'
|
|
), matrix.ansible) && 'ubuntu-20.04' || 'ubuntu-latest' }}
|
|
name: I (Ⓐ${{ matrix.ansible }}+py${{ matrix.python }})
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
ansible:
|
|
- devel
|
|
python:
|
|
- 3.9
|
|
- "3.10"
|
|
- "3.11"
|
|
include:
|
|
# 2.9
|
|
- ansible: stable-2.9
|
|
python: 2.7
|
|
- ansible: stable-2.9
|
|
python: 3.5
|
|
# 2.10
|
|
- ansible: stable-2.10
|
|
python: 3.5
|
|
# 2.11
|
|
- ansible: stable-2.11
|
|
python: 2.7
|
|
- ansible: stable-2.11
|
|
python: 3.6
|
|
# 2.12
|
|
- ansible: stable-2.12
|
|
python: 3.8
|
|
# 2.13
|
|
- ansible: stable-2.13
|
|
python: "3.10"
|
|
# 2.14
|
|
- ansible: stable-2.14
|
|
python: "3.9"
|
|
# 2.15
|
|
- ansible: stable-2.15
|
|
python: "3.11"
|
|
|
|
steps:
|
|
- name: >-
|
|
Perform integration testing against
|
|
Ansible version ${{ matrix.ansible }}
|
|
under Python ${{ matrix.python }}
|
|
uses: felixfontein/ansible-test-gh-action@main
|
|
with:
|
|
ansible-core-version: ${{ matrix.ansible }}
|
|
integration-continue-on-error: 'false'
|
|
integration-diff: 'false'
|
|
integration-retry-on-error: 'true'
|
|
# NOTE: we're installing with git to work around Galaxy being a huge PITA (https://github.com/ansible/galaxy/issues/2429)
|
|
pre-test-cmd: |-
|
|
git clone --depth=1 --single-branch https://github.com/ansible-collections/ansible.netcommon.git ../../ansible/netcommon
|
|
git clone --depth=1 --single-branch https://github.com/ansible-collections/ansible.utils.git ../../ansible/utils
|
|
target-python-version: ${{ matrix.python }}
|
|
testing-type: integration
|