Skip to content

Scheduled All Linux Distros Supported verification #166

Scheduled All Linux Distros Supported verification

Scheduled All Linux Distros Supported verification #166

---
# SPDX-license-identifier: Apache-2.0
##############################################################################
# Copyright (c) 2021
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
name: Scheduled All Linux Distros Supported verification
# yamllint disable-line rule:truthy
on:
schedule:
- cron: "0 0 * * 1"
workflow_dispatch:
jobs:
generate-json-matrix:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # 4.2.0
- name: Get matrix values
id: set-matrix
run: |
if ! command -v shyaml; then
pip install shyaml
fi
output=""
for os in $(shyaml keys < distros_supported.yml); do
for release in $(shyaml keys "$os" < distros_supported.yml); do
output+="{\"os\": \"$os\", \"release\": \"$release\"},"
done
done
length=${#output}
echo "matrix=[${output::length-1}]" >> "$GITHUB_OUTPUT"
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
check-all-distros:
name: Check all Linux Distributions supported in an All-in-One setup
runs-on: macos-12
needs: generate-json-matrix
strategy:
fail-fast: false
matrix:
include: ${{ fromJson(needs.generate-json-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # 4.2.0
- name: Running Flannel CNI with ContainerD runtime
if: ${{ always() }}
uses: ./.github/actions/vagrant-up
with:
os: ${{ matrix.os }}
release: ${{ matrix.release }}
network-plugin: flannel
container-runtime: containerd
test-multinode: true
run-benchmarks: true
- name: Running Calico CNI with ContainerD runtime
if: ${{ always() }}
uses: ./.github/actions/vagrant-up
with:
os: ${{ matrix.os }}
release: ${{ matrix.release }}
network-plugin: calico
container-runtime: containerd
test-multinode: true
run-benchmarks: true
- name: Running Cilium CNI with ContainerD runtime
if: ${{ always() }}
uses: ./.github/actions/vagrant-up
with:
os: ${{ matrix.os }}
release: ${{ matrix.release }}
network-plugin: cilium
container-runtime: containerd
test-multinode: true
run-benchmarks: true
- name: Running Flannel CNI with CRI-O runtime
if: ${{ always() }}
uses: ./.github/actions/vagrant-up
with:
os: ${{ matrix.os }}
release: ${{ matrix.release }}
network-plugin: flannel
container-runtime: crio
test-multinode: true
run-benchmarks: true
- name: Running Calico CNI with CRI-O runtime
if: ${{ always() }}
uses: ./.github/actions/vagrant-up
with:
os: ${{ matrix.os }}
release: ${{ matrix.release }}
network-plugin: calico
container-runtime: crio
test-multinode: true
run-benchmarks: true
- name: Running Cilium CNI with CRI-O runtime
if: ${{ always() }}
uses: ./.github/actions/vagrant-up
with:
os: ${{ matrix.os }}
release: ${{ matrix.release }}
network-plugin: cilium
container-runtime: crio
test-multinode: true
run-benchmarks: true