Skip to content

ci: allow testing documentation building for any test #17

ci: allow testing documentation building for any test

ci: allow testing documentation building for any test #17

Workflow file for this run

name: Integration Test
on:
pull_request:
branches: [ main ]
paths-ignore:
- antora-playbook.yaml
- 'doc_site/**'
- 'man/**'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
env:
# set V to 2 when re-running jobs with debug logging enabled
# see https://docs.github.com/en/actions/monitoring-and-troubleshooting-workflows/troubleshooting-workflows/enabling-debug-logging
V: "${{ secrets.ACTIONS_STEP_DEBUG && '2' }}"
jobs:
basic:
# run this test on all containers
name: ${{ matrix.test }} on ${{ matrix.container }}
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: basic-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
container: [
"alpine",
"arch",
"debian",
"fedora",
"gentoo",
"opensuse",
"ubuntu",
"void",
]
test: [
"10",
]
container:
image: ghcr.io/dracut-ng/${{ matrix.container }}
options: '--device=/dev/kvm'
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "${{ matrix.container }} TEST-${{ matrix.test }}"
run: ./test/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}
# syncheck
syncheck:
needs: basic
name: syncheck
runs-on: ubuntu-latest
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- run: |
sudo apt-get update
sudo apt-get -y install shellcheck shfmt
make syncheck
doc:
name: ${{ matrix.test }} on ${{ matrix.container }}
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: basic-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
container: [
"alpine",
"arch",
"debian",
"fedora",
"gentoo",
"opensuse",
"ubuntu",
"void",
]
container:
image: ghcr.io/dracut-ng/${{ matrix.container }}
options: '--device=/dev/kvm'
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4

Check failure on line 91 in .github/workflows/integration.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/integration.yml

Invalid workflow file

You have an error in your yaml syntax on line 91
- name: "${{ matrix.container }}
run: TARGETS=all enable_documentation=yes ./test/test-github.sh "TEST-${{ matrix.test }}" 10
extended:
needs: basic
name: ${{ matrix.test }} on ${{ matrix.container }}
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: extended-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
container: [
"alpine",
"arch",
"debian",
"fedora",
"gentoo",
"opensuse",
"ubuntu",
"void",
]
test: [
"11",
"12",
"20",
"21",
"22",
"23",
"24",
"25",
"26",
"30",
"40",
"41",
"42",
"80",
"81",
]
exclude:
- container: opensuse
test: 41
container:
image: ghcr.io/dracut-ng/${{ matrix.container }}
options: '--device=/dev/kvm'
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "${{ matrix.container }} TEST-${{ matrix.test }}"
run: ./test/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}
dracut-cpio:
needs: basic
name: ${{ matrix.test }} on ${{ matrix.container }}
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: dracut-cpio-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
container: [
"opensuse",
]
test: [
"82",
]
container:
image: ghcr.io/dracut-ng/${{ matrix.container }}
options: '--device=/dev/kvm'
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "${{ matrix.container }} TEST-${{ matrix.test }}"
run: ./test/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}
arm64:
needs: basic
name: ${{ matrix.test }} on ${{ matrix.container }} on arm64
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: arm64-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
container: [
"debian-arm64",
"fedora-arm64",
]
test: [
"80",
]
steps:
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: 'linux/arm64'
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "${{ matrix.container }} TEST-${{ matrix.test }}"
run: docker run --platform linux/arm64 '--device=/dev/kvm' -v $PWD:/w ghcr.io/dracut-ng/${{ matrix.container }} /w/test/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}
network:
needs: basic
# all nfs based on default networking
name: ${{ matrix.test }} on ${{ matrix.container }}
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: network-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }}
cancel-in-progress: true
strategy:
fail-fast: false
matrix:
container: [
"arch",
"debian",
"fedora",
"gentoo",
"opensuse",
"ubuntu",
]
test: [
"60",
"61",
"62",
]
include:
- network: ""
- # on debian run tests with systemd-networkd
container: "debian"
network: "systemd-networkd"
- # on openSUSE run tests with network-legacy
container: "opensuse"
network: "network-legacy"
container:
image: ghcr.io/dracut-ng/${{ matrix.container }}
options: '--device=/dev/kvm'
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "${{ matrix.container }} TEST-${{ matrix.test }}"
run: USE_NETWORK=${{ matrix.network }} ./test/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}
# network-advanced:
# name: ${{ matrix.test }} on ${{ matrix.container }}
# runs-on: ubuntu-latest
# timeout-minutes: 10
# concurrency:
# group: network-iscsi-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.network }}
# cancel-in-progress: true
# strategy:
# fail-fast: false
# matrix:
# container: [
# "arch",
# "debian",
# "fedora",
# "gentoo",
# "opensuse",
# "ubuntu",
# ]
# test: [ "70","71","72" ]
# include:
# - network: ""
# - # on debian run tests with systemd-networkd
# container: "debian"
# network: "systemd-networkd"
# - # on openSUSE run tests with network-legacy
# container: "opensuse"
# network: "network-legacy"
# container:
# image: ghcr.io/dracut-ng/${{ matrix.container }}
# options: '--device=/dev/kvm'
# steps:
# - name: "Checkout Repository"
# uses: actions/checkout@v4
# - name: "${{ matrix.container }} TEST-${{ matrix.test }}"
# run: USE_NETWORK=${{ matrix.network }} ./test/test-github.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}