vHive nightly integration tests #1007
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: vHive nightly integration tests | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 0 * * *' | |
env: | |
GOOS: linux | |
GO111MODULE: on | |
TMPDIR: /root/tmp/ | |
GOCACHE: /root/tmp/gocache | |
GOPATH: /root/tmp/gopath | |
jobs: | |
integration-tests: | |
name: Test all functions | |
runs-on: [self-hosted, nightly, integ] | |
steps: | |
- name: Setup TMPDIR | |
run: mkdir -p $TMPDIR | |
- name: Set up Go 1.19 | |
uses: actions/setup-go@v4 | |
with: | |
go-version: '1.19' | |
- name: Upgrade git | |
run: | | |
sudo add-apt-repository ppa:git-core/ppa -y | |
sudo apt update | |
sudo apt install git -y | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
- name: Build setup scripts | |
run: pushd scripts && go build -o setup_tool && popd | |
- name: Pull binaries | |
run: ./scripts/setup_tool setup_firecracker_containerd | |
- name: Build | |
run: go build -race -v -a ./... | |
- name: Run all function tests | |
run: make nightly-test | |
- name: Cleaning | |
if: ${{ always() }} | |
run: ./scripts/setup_tool clean_fcctr | |
cri-tests: | |
name: CRI tests (nightly) | |
runs-on: [self-hosted, cri] | |
strategy: | |
fail-fast: false | |
matrix: | |
vhive_args: ["-dbg", "-dbg -snapshots", "-dbg -snapshots -upf"] | |
env: | |
GITHUB_RUN_ID: ${{ github.run_id }} | |
GITHUB_JOB: ${{ github.job }} | |
GITHUB_VHIVE_ARGS: ${{ matrix.vhive_args }} | |
steps: | |
- name: Host Info | |
run: | | |
echo HOSTNAME=$HOSTNAME | |
echo GITHUB_RUN_ID=$GITHUB_RUN_ID | |
echo GITHUB_JOB=$GITHUB_JOB | |
- name: Setup TMPDIR | |
run: mkdir -p $TMPDIR | |
- name: Set up Go 1.19 | |
uses: actions/setup-go@v4 | |
with: | |
go-version: '1.19' | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v3 | |
- name: Build setup scripts | |
run: pushd scripts && go build -o setup_tool && popd | |
- name: Setup firecracker-containerd | |
run: ./scripts/setup_tool setup_firecracker_containerd | |
- name: Build | |
run: go build | |
- name: Run vHive CRI tests | |
run: | | |
echo vHive args are $GITHUB_VHIVE_ARGS | |
make test-cri | |
- name: Archive log artifacts | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ${{ github.job }}-${{ matrix.vhive_args }}-ctrd-logs | |
path: | | |
/tmp/ctrd-logs/${{ github.run_id }} | |
- name: Cleaning | |
if: ${{ always() }} | |
run: ./scripts/github_runner/clean_cri_runner.sh |