Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 11 additions & 41 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04, actuated-arm64-6cpu-8gb]
os: [ubuntu-24.04, ubuntu-24.04-arm]
go-version: [1.23.x, 1.24.x]
rootless: ["rootless", ""]
race: ["-race", ""]
Expand All @@ -34,39 +34,20 @@ jobs:
# (need to compile criu) and don't add much value/coverage.
- criu: criu-dev
go-version: 1.23.x
os: ubuntu-24.04
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why was this exclusion added?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because we want ubuntu-24.04 to be run with criu from the package, but we want ubuntu-24.04-arm to be run with criu-dev (as criu package is not yet working, as described in the commit message).

Yes, I know, it is kind of complicated, I'd rather have criu package fixed.

- criu: criu-dev
rootless: rootless
- criu: criu-dev
race: -race
- go-version: 1.23.x
os: actuated-arm64-6cpu-8gb
- race: "-race"
os: actuated-arm64-6cpu-8gb
- criu: criu-dev
os: actuated-arm64-6cpu-8gb
os: ubuntu-24.04
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And this one.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same reason as above

# Do race detection only on latest Go.
- race: -race
go-version: 1.23.x
# CRIU package 4.1-1 from opensuse build farm doesn't work on arm.
- os: ubuntu-24.04-arm
criu: ""

runs-on: ${{ matrix.os }}

steps:
# https://gist.github.com/alexellis/1f33e581c75e11e161fe613c46180771#file-metering-gha-md
# vmmeter start
- name: Prepare arkade
uses: alexellis/arkade-get@master
if: matrix.os == 'actuated-arm64-6cpu-8gb'
with:
crane: latest
print-summary: false

- name: Install vmmeter
if: matrix.os == 'actuated-arm64-6cpu-8gb'
run: |
crane export --platform linux/arm64 ghcr.io/openfaasltd/vmmeter:latest | sudo tar -xvf - -C /usr/local/bin

- name: Run vmmeter
uses: self-actuated/vmmeter-action@master
if: matrix.os == 'actuated-arm64-6cpu-8gb'
# vmmeter end

- name: checkout
uses: actions/checkout@v4

Expand All @@ -92,17 +73,6 @@ jobs:
# kernel config
script/check-config.sh

- name: start sshd (used for testing rootless with systemd user session)
if: ${{ matrix.os == 'actuated-arm64-6cpu-8gb' && matrix.rootless == 'rootless' }}
run: |
# Generate new keys to fix "sshd: no hostkeys available -- exiting."
sudo ssh-keygen -A
if ! sudo systemctl start ssh.service; then
sudo journalctl -xeu ssh.service
exit 1
fi
ps auxw | grep sshd

- name: install deps
run: |
sudo apt update
Expand All @@ -119,7 +89,7 @@ jobs:
sudo apt update
sudo apt -y install criu

- name: install CRIU (criu ${{ matrix.criu }})
- name: install CRIU (${{ matrix.criu }})
Copy link
Member

@lifubang lifubang Aug 12, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we remove this and use 'else' here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GHA workflow does not have else for if. Or do you mean something else? If yes, please show the code.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I think we can use else in bash, or else we will see a log like this in CI:

Install CRIU ()

if: ${{ matrix.criu != '' }}
run: |
sudo apt -qy install \
Expand Down Expand Up @@ -150,7 +120,7 @@ jobs:

- name: Allow userns for runc
# https://discourse.ubuntu.com/t/ubuntu-24-04-lts-noble-numbat-release-notes/39890#unprivileged-user-namespace-restrictions-15
if: matrix.os == 'ubuntu-24.04'
if: startsWith(matrix.os, 'ubuntu-24.04')
run: |
sed "s;^profile runc /usr/sbin/;profile runc-test $PWD/;" < /etc/apparmor.d/runc | sudo apparmor_parser

Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
[![gha/validate](https://github.com/opencontainers/runc/workflows/validate/badge.svg)](https://github.com/opencontainers/runc/actions?query=workflow%3Avalidate)
[![gha/ci](https://github.com/opencontainers/runc/workflows/ci/badge.svg)](https://github.com/opencontainers/runc/actions?query=workflow%3Aci)
[![CirrusCI](https://api.cirrus-ci.com/github/opencontainers/runc.svg)](https://cirrus-ci.com/github/opencontainers/runc)
<a href="https://actuated.dev"><img alt="Arm CI sponsored by Actuated" src="https://docs.actuated.dev/images/actuated-badge.png" width="120px"></img></a>

## Introduction

Expand Down