Skip to content

vHive integration tests #3076

vHive integration tests

vHive integration tests #3076

name: vHive integration 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:
schedule:
- cron: '0 19 * * 1'
env:
GOOS: linux
GO111MODULE: on
jobs:
integration-tests:
name: Integration tests
runs-on: [self-hosted , integ]
strategy:
fail-fast: false
matrix:
test-name: [test, test-man-bench]
steps:
- 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: Set up Python 3.x
uses: actions/setup-python@v5
with:
python-version: '3.x'
- 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 vHive end-to-end tests
run: make ${{ matrix.test-name }}
- name: Archive log artifacts
if: ${{ always() }}
uses: actions/upload-artifact@v4
with:
name: ctrd-logs-${{ matrix.test-name }}
path: |
/tmp/ctrd-logs/
${{ github.workspace }}/*.log
${{ github.workspace }}/scripts/github_runner/*.log
- name: Cleaning
if: ${{ always() }}
run: ./scripts/setup_tool clean_fcctr