Firecracker snapshot upf ctriface #2776
Workflow file for this run
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 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-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
module: [misc, networking, snapshotting] | |
steps: | |
- name: Set up Go 1.19 | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.19' | |
- name: Set up Python 3.x | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v4 | |
- 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: Set up Go 1.19 | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.19' | |
- name: Set up Python 3.x | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v4 | |
- 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: [self-hosted, integ] | |
strategy: | |
fail-fast: false | |
matrix: | |
module: [ ctriface, ctriface/image, devmapper ] | |
steps: | |
- name: Set up Go 1.19 | |
uses: actions/setup-go@v5 | |
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@v4 | |
with: | |
lfs: true | |
- name: Add rsync | |
run: | | |
sudo apt update | |
sudo apt install rsync -y | |
- 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 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 |