Skip to content

Commit 2411e96

Browse files
committed
ci: Replace Cirrus CI with weekly GitHub ARM64 job.
The Cirrus CI was shut down on June 1st 2026, replace it with GitHub native ARM64 job that runs weekly due to capacity issues. Also update the README badges. Reported-at: https://redhat.atlassian.net/browse/FDP-3765 Acked-by: Mark Michelson<mmichels@redhat.com> Signed-off-by: Ales Musil <amusil@redhat.com>
1 parent c4bcfc6 commit 2411e96

4 files changed

Lines changed: 114 additions & 72 deletions

File tree

.cirrus.yml

Lines changed: 0 additions & 69 deletions
This file was deleted.

.github/workflows/test-arm.yml

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
name: Build and Test ARM64
2+
3+
on:
4+
schedule:
5+
# Run Sunday at midnight
6+
- cron: '0 0 * * 0'
7+
workflow_dispatch:
8+
9+
concurrency:
10+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
11+
cancel-in-progress: true
12+
13+
jobs:
14+
build-linux:
15+
env:
16+
ARCH: ${{ matrix.cfg.arch }}
17+
CC: ${{ matrix.cfg.compiler }}
18+
DPDK: ${{ matrix.cfg.dpdk }}
19+
LIBS: ${{ matrix.cfg.libs }}
20+
OPTS: ${{ matrix.cfg.opts }}
21+
TESTSUITE: ${{ matrix.cfg.testsuite }}
22+
TEST_RANGE: ${{ matrix.cfg.test_range }}
23+
SANITIZERS: ${{ matrix.cfg.sanitizers }}
24+
UNSTABLE: ${{ matrix.cfg.unstable }}
25+
26+
name: linux ${{ join(matrix.cfg.*, ' ') }}
27+
if: (github.repository_owner == 'ovn-org' && github.event_name == 'schedule' && github.ref_name == 'main') || github.event_name == 'workflow_dispatch'
28+
runs-on: ubuntu-24.04-arm
29+
30+
strategy:
31+
fail-fast: false
32+
matrix:
33+
cfg:
34+
- { compiler: gcc, opts: --disable-ssl }
35+
- { compiler: clang, opts: --disable-ssl }
36+
- { compiler: gcc, testsuite: dist-test }
37+
- { compiler: gcc, testsuite: test, test_range: "-300" }
38+
- { compiler: gcc, testsuite: test, test_range: "301-600" }
39+
- { compiler: gcc, testsuite: test, test_range: "601-", unstable: unstable }
40+
- { compiler: clang, testsuite: test, sanitizers: sanitizers, test_range: "-300" }
41+
- { compiler: clang, testsuite: test, sanitizers: sanitizers, test_range: "301-600" }
42+
- { compiler: clang, testsuite: test, sanitizers: sanitizers, test_range: "601-", unstable: unstable }
43+
- { compiler: gcc, testsuite: test, libs: -ljemalloc, test_range: "-300" }
44+
- { compiler: gcc, testsuite: test, libs: -ljemalloc, test_range: "301-600" }
45+
- { compiler: gcc, testsuite: test, libs: -ljemalloc, test_range: "601-", unstable: unstable }
46+
- { compiler: gcc, testsuite: system-test-dpdk, dpdk: dpdk, test_range: "-100" }
47+
- { compiler: gcc, testsuite: system-test-dpdk, dpdk: dpdk, test_range: "101-200" }
48+
- { compiler: gcc, testsuite: system-test-dpdk, dpdk: dpdk, test_range: "201-", unstable: unstable }
49+
- { compiler: gcc, testsuite: system-test-userspace, test_range: "-100" }
50+
- { compiler: gcc, testsuite: system-test-userspace, test_range: "101-200" }
51+
- { compiler: gcc, testsuite: system-test-userspace, test_range: "201-", unstable: unstable }
52+
- { compiler: gcc, testsuite: system-test, test_range: "-100" }
53+
- { compiler: gcc, testsuite: system-test, test_range: "101-200" }
54+
- { compiler: gcc, testsuite: system-test, test_range: "201-", unstable: unstable }
55+
- { compiler: clang, testsuite: system-test, sanitizers: sanitizers, test_range: "-100" }
56+
- { compiler: clang, testsuite: system-test, sanitizers: sanitizers, test_range: "101-200" }
57+
- { compiler: clang, testsuite: system-test, sanitizers: sanitizers, test_range: "201-", unstable: unstable }
58+
59+
steps:
60+
- name: system-level-dependencies
61+
if: ${{ startsWith(matrix.cfg.testsuite, 'system-test') }}
62+
run: |
63+
sudo apt update
64+
sudo apt -y install linux-modules-extra-$(uname -r)
65+
66+
- name: checkout
67+
uses: actions/checkout@v6
68+
with:
69+
submodules: recursive
70+
71+
- name: Fix /etc/hosts file
72+
run: |
73+
. .ci/linux-util.sh
74+
fix_etc_hosts
75+
76+
- name: Disable apparmor
77+
run: |
78+
. .ci/linux-util.sh
79+
disable_apparmor
80+
81+
- name: Fixup crun
82+
run: |
83+
. .ci/linux-util.sh
84+
fixup_crun
85+
86+
- name: Download container
87+
run: |
88+
podman pull ghcr.io/ovn-org/ovn-tests:ubuntu
89+
sudo podman pull ghcr.io/ovn-org/ovn-tests:ubuntu
90+
91+
- name: Tag image
92+
run: |
93+
podman tag ghcr.io/ovn-org/ovn-tests:ubuntu ovn-org/ovn-tests
94+
sudo podman tag ghcr.io/ovn-org/ovn-tests:ubuntu ovn-org/ovn-tests
95+
96+
- name: build
97+
if: ${{ startsWith(matrix.cfg.testsuite, 'system-test') }}
98+
run: sudo -E ./.ci/ci.sh --archive-logs --timeout=2h
99+
100+
- name: build
101+
if: ${{ !startsWith(matrix.cfg.testsuite, 'system-test') }}
102+
run: ./.ci/ci.sh --archive-logs --timeout=2h
103+
104+
- name: upload logs on failure
105+
if: failure() || cancelled()
106+
uses: actions/upload-artifact@v7
107+
with:
108+
name: logs-linux-${{ join(matrix.cfg.*, '-') }}
109+
path: logs.tgz

Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,6 @@ EXTRA_DIST = \
7070
MAINTAINERS.rst \
7171
README.rst \
7272
NOTICE \
73-
.cirrus.yml \
7473
.ci/ci.sh \
7574
.ci/linux-build.sh \
7675
.ci/linux-util.sh \
@@ -82,6 +81,7 @@ EXTRA_DIST = \
8281
.ci/ovn-kubernetes/custom.patch \
8382
.github/workflows/containers.yml \
8483
.github/workflows/test.yml \
84+
.github/workflows/test-arm.yml \
8585
.github/workflows/ovn-kubernetes.yml \
8686
.github/workflows/ovn-fake-multinode-tests.yml \
8787
.github/workflows/ovn-upgrade-tests.yml \

README.rst

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@ OVN
1111
:target: https://github.com/ovn-org/ovn/actions/workflows/ovn-kubernetes.yml
1212
.. image:: https://github.com/ovn-org/ovn/actions/workflows/ovn-fake-multinode-tests.yml/badge.svg
1313
:target: https://github.com/ovn-org/ovn/actions/workflows/ovn-fake-multinode-tests.yml
14-
.. image:: https://api.cirrus-ci.com/github/ovn-org/ovn.svg
15-
:target: https://cirrus-ci.com/github/ovn-org/ovn
14+
.. image:: https://github.com/ovn-org/ovn/actions/workflows/ovn-upgrade-tests.yml/badge.svg
15+
:target: https://github.com/ovn-org/ovn/actions/workflows/ovn-upgrade-tests.yml
16+
.. image:: https://github.com/ovn-org/ovn/actions/workflows/test-arm.yml/badge.svg
17+
:target: https://github.com/ovn-org/ovn/actions/workflows/test-arm.yml
1618
.. image:: https://readthedocs.org/projects/ovn/badge/?version=latest
1719
:target: https://docs.ovn.org/en/latest/
1820
.. image:: https://scan.coverity.com/projects/30371/badge.svg

0 commit comments

Comments
 (0)