Add kernel message on integration test failure #3497
Workflow file for this run
This file contains hidden or 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 unit tests | |
on: | |
push: | |
branches: [ main, legacy-firecracker-v0.24.0-with-upf-support ] | |
paths-ignore: | |
- 'docs/**' | |
- '**.md' | |
- 'function-images/**' | |
pull_request: | |
branches: [ main, legacy-firecracker-v0.24.0-with-upf-support ] | |
paths-ignore: | |
- 'docs/**' | |
- '**.md' | |
- 'function-images/**' | |
workflow_dispatch: | |
env: | |
GOOS: linux | |
GO111MODULE: on | |
jobs: | |
unit-test: | |
name: Unit test | |
runs-on: ubuntu-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
module: [misc, networking, snapshotting] | |
steps: | |
- 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: Set up Python 3.x | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Build setup scripts | |
run: pushd scripts && go build -o setup_tool && popd | |
- name: Add rsync | |
run: | | |
sudo apt update | |
sudo apt install rsync -y | |
- name: Setup System | |
run: ./scripts/setup_tool setup_system | |
- name: Build | |
run: go build -race -v -a ./... | |
- name: Run tests in submodules | |
env: | |
MODULE: ${{ matrix.module }} | |
AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} | |
AWS_SECRET_KEY: ${{ secrets.AWS_SECRET_KEY }} | |
run: | | |
make -C $MODULE test | |
make -C $MODULE test-man | |
profile-unit-test: | |
name: "Unit test: profile unit test" | |
runs-on: [self-hosted, profile] | |
strategy: | |
fail-fast: false | |
matrix: | |
module: [profile] | |
steps: | |
- 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: Set up Python 3.x | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Build setup scripts | |
run: pushd scripts && go build -o setup_tool && popd | |
- name: Add rsync | |
run: | | |
sudo apt update | |
sudo apt install rsync -y | |
- name: Setup System | |
run: ./scripts/setup_tool setup_system | |
- name: Install PMU tools | |
run: ./scripts/setup_tool install_pmutools | |
- name: Build | |
run: go build -race -v -a ./... | |
- name: Run tests in submodules | |
env: | |
MODULE: ${{ matrix.module }} | |
AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} | |
AWS_SECRET_KEY: ${{ secrets.AWS_SECRET_KEY }} | |
run: | | |
make -C $MODULE test | |
make -C $MODULE test-man | |
firecracker-containerd-interface-test: | |
name: "Unit tests: Firecracker-containerd interface" | |
runs-on: ubuntu-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
module: [ ctriface, ctriface/image, devmapper ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Handle LFS Caching (Check out code into the Go module directory) | |
uses: ./.github/actions/lfs-cache | |
with: | |
lfs_enabled: '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: Add rsync | |
run: | | |
sudo apt update | |
sudo apt install rsync -y | |
- name: Cleanup runner disk space | |
run: ./scripts/github_runner/gh-actions-disk-cleanup.sh | |
- name: Build setup scripts | |
run: pushd scripts && go build -o setup_tool && popd | |
- name: Pull binaries | |
run: ./scripts/setup_tool setup_firecracker_containerd | |
- name: Setup Stargz | |
run: ./scripts/setup_tool setup_stargz firecracker | |
- name: Build | |
run: go build -race -v -a ./... | |
- name: Run tests in submodules | |
env: | |
MODULE: ${{ matrix.module }} | |
AWS_ACCESS_KEY: ${{ secrets.AWS_ACCESS_KEY }} | |
AWS_SECRET_KEY: ${{ secrets.AWS_SECRET_KEY }} | |
run: | | |
make -C $MODULE test | |
make -C $MODULE test-man | |
- name: Cleaning | |
if: ${{ always() }} | |
run: ./scripts/setup_tool clean_fcctr |