vHive nightly integration tests #1412
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: Check out code into the Go module directory | |
uses: actions/checkout@v4 | |
with: | |
lfs: true | |
- name: Set up Go version in go.mod file | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: ${{ github.workspace }}/go.mod | |
cache-dependency-path: | | |
**/go.sum | |
**/go.mod | |
- 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: | |
# User-level page faults are temporarily disabled (gh-807) | |
# vhive_args: ["-dbg", "-dbg -snapshots", "-dbg -snapshots -upf"] | |
vhive_args: [ "-dbg", "-dbg -snapshots" ] | |
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: Check out code into the Go module directory | |
uses: actions/checkout@v4 | |
- name: Set up Go version in go.mod file | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: ${{ github.workspace }}/go.mod | |
cache-dependency-path: | | |
**/go.sum | |
**/go.mod | |
- 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@v4 | |
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 |