Skip to content

Merge pull request #518 from thotz/release-4.14 #13

Merge pull request #518 from thotz/release-4.14

Merge pull request #518 from thotz/release-4.14 #13

Workflow file for this run

name: Multus integration tests
on:
push:
tags:
- v*
branches:
- master
- release-*
pull_request:
paths:
- cmd/rook/userfacing/**
- pkg/daemon/multus/**
- .github/workflows/multus.yaml
defaults:
run:
# reference: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell
shell: bash --noprofile --norc -eo pipefail -x {0}
# cancel the in-progress workflow when PR is refreshed.
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
jobs:
test-validation-tool:
runs-on: ubuntu-latest
strategy:
fail-fast: true
if: "!contains(github.event.pull_request.labels.*.name, 'skip-ci')"
env:
NUMBER_OF_COMPUTE_NODES: 5
steps:
- name: Set up Go version
uses: actions/setup-go@v4
with:
go-version: "1.20"
- name: checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Create KinD Cluster
uses: helm/[email protected]
with:
config: tests/scripts/multus/kind-config.yaml
cluster_name: rook-multus-e2e
- name: Start tmate
if: runner.debug || contains(github.event.pull_request.labels.*.name, 'debug-ci')
run: |
kubectl apply -f tests/scripts/tmate-pod.yaml
sleep 3 # sometimes the next command errors b/c k8s hasn't had time to schedule the pod yet
kubectl -n tmate wait --for=condition=ready -l app=tmate pod --timeout=300s
sleep 1 # just in case tmate hasn't output its web/ssh links yet
kubectl -n tmate logs deploy/tmate
- name: Setup multus
run: ./tests/scripts/multus/setup-multus.sh
- name: Install public and cluster NADs in default namespace
run: kubectl create -f tests/scripts/multus/default-public-cluster-nads.yaml
- name: Quickly build Rook binary
run: go build -o rook cmd/rook/*.go
- name: Run multus validation test
run: |
export KUBECONFIG="/home/runner/.kube/config"
kubectl create namespace rook-ceph
./rook --log-level debug multus validation run \
--namespace rook-ceph \
--public-network default/public-net \
--cluster-network default/cluster-net \
--daemons-per-node 2