Skip to content

vHive nightly integration tests #1420

vHive nightly integration tests

vHive nightly integration tests #1420

Workflow file for this run

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