24
24
strategy :
25
25
fail-fast : false
26
26
matrix :
27
- os : [ubuntu-24.04, actuated-arm64-6cpu-8gb ]
27
+ os : [ubuntu-24.04, ubuntu-24.04-arm ]
28
28
go-version : [1.23.x, 1.24.x]
29
29
rootless : ["rootless", ""]
30
30
race : ["-race", ""]
@@ -34,39 +34,20 @@ jobs:
34
34
# (need to compile criu) and don't add much value/coverage.
35
35
- criu : criu-dev
36
36
go-version : 1.23.x
37
+ os : ubuntu-24.04
37
38
- criu : criu-dev
38
39
rootless : rootless
39
- - criu : criu-dev
40
- race : -race
41
- - go-version : 1.23.x
42
- os : actuated-arm64-6cpu-8gb
43
- - race : " -race"
44
- os : actuated-arm64-6cpu-8gb
45
- - criu : criu-dev
46
- os : actuated-arm64-6cpu-8gb
40
+ os : ubuntu-24.04
41
+ # Do race detection only on latest Go.
42
+ - race : -race
43
+ go-version : 1.23.x
44
+ # CRIU package 4.1-1 from opensuse build farm doesn't work on arm.
45
+ - os : ubuntu-24.04-arm
46
+ criu : " "
47
47
48
48
runs-on : ${{ matrix.os }}
49
49
50
50
steps :
51
- # https://gist.github.com/alexellis/1f33e581c75e11e161fe613c46180771#file-metering-gha-md
52
- # vmmeter start
53
- - name : Prepare arkade
54
- uses : alexellis/arkade-get@master
55
- if : matrix.os == 'actuated-arm64-6cpu-8gb'
56
- with :
57
- crane : latest
58
- print-summary : false
59
-
60
- - name : Install vmmeter
61
- if : matrix.os == 'actuated-arm64-6cpu-8gb'
62
- run : |
63
- crane export --platform linux/arm64 ghcr.io/openfaasltd/vmmeter:latest | sudo tar -xvf - -C /usr/local/bin
64
-
65
- - name : Run vmmeter
66
- uses : self-actuated/vmmeter-action@master
67
- if : matrix.os == 'actuated-arm64-6cpu-8gb'
68
- # vmmeter end
69
-
70
51
- name : checkout
71
52
uses : actions/checkout@v4
72
53
92
73
# kernel config
93
74
script/check-config.sh
94
75
95
- - name : start sshd (used for testing rootless with systemd user session)
96
- if : ${{ matrix.os == 'actuated-arm64-6cpu-8gb' && matrix.rootless == 'rootless' }}
97
- run : |
98
- # Generate new keys to fix "sshd: no hostkeys available -- exiting."
99
- sudo ssh-keygen -A
100
- if ! sudo systemctl start ssh.service; then
101
- sudo journalctl -xeu ssh.service
102
- exit 1
103
- fi
104
- ps auxw | grep sshd
105
-
106
76
- name : install deps
107
77
run : |
108
78
sudo apt update
119
89
sudo apt update
120
90
sudo apt -y install criu
121
91
122
- - name : install CRIU (criu ${{ matrix.criu }})
92
+ - name : install CRIU (${{ matrix.criu }})
123
93
if : ${{ matrix.criu != '' }}
124
94
run : |
125
95
sudo apt -qy install \
@@ -150,7 +120,7 @@ jobs:
150
120
151
121
- name : Allow userns for runc
152
122
# https://discourse.ubuntu.com/t/ubuntu-24-04-lts-noble-numbat-release-notes/39890#unprivileged-user-namespace-restrictions-15
153
- if : matrix.os == 'ubuntu-24.04'
123
+ if : startsWith( matrix.os, 'ubuntu-24.04')
154
124
run : |
155
125
sed "s;^profile runc /usr/sbin/;profile runc-test $PWD/;" < /etc/apparmor.d/runc | sudo apparmor_parser
156
126
0 commit comments