-
Notifications
You must be signed in to change notification settings - Fork 90
112 lines (90 loc) · 2.72 KB
/
nightly_tests.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
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