On Mon, Aug 3, 2026 at 9:50 PM Mark Michelson <[email protected]> wrote:
> Thanks Ales, > > Acked-by: Mark Michelson<[email protected]> > > On Mon, Aug 3, 2026 at 6:30 AM Ales Musil via dev > <[email protected]> wrote: > > > > 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 > > Signed-off-by: Ales Musil <[email protected]> > > --- > > Test run available at > https://github.com/almusil/ovn/actions/runs/30798200421 > > --- > > .cirrus.yml | 69 --------------------- > > .github/workflows/test-arm.yml | 109 +++++++++++++++++++++++++++++++++ > > Makefile.am | 2 +- > > README.rst | 6 +- > > 4 files changed, 114 insertions(+), 72 deletions(-) > > delete mode 100644 .cirrus.yml > > create mode 100644 .github/workflows/test-arm.yml > > > > diff --git a/.cirrus.yml b/.cirrus.yml > > deleted file mode 100644 > > index 9cf2a46d6..000000000 > > --- a/.cirrus.yml > > +++ /dev/null > > @@ -1,69 +0,0 @@ > > -compute_engine_instance: > > - image_project: ubuntu-os-cloud > > - image: family/ubuntu-2404-lts-arm64 > > - architecture: arm64 > > - platform: linux > > - memory: 4G > > - disk: 20 > > - > > -# Run separate task for the image build, so it's running only once > outside > > -# the test matrix. > > -build_image_task: > > - install_dependencies_script: > > - - sudo apt update > > - - sudo apt install -y podman make > > - > > - build_container_script: > > - - cd utilities/containers > > - - make ubuntu > > - - podman save -o /tmp/image.tar --format oci-archive > ovn-org/ovn-tests:ubuntu > > - > > - upload_image_script: > > - - curl -s -X POST -T /tmp/image.tar http:// > $CIRRUS_HTTP_CACHE_HOST/${CIRRUS_CHANGE_IN_REPO} > > - > > -arm_unit_tests_task: > > - depends_on: > > - - build_image > > - > > - env: > > - CIRRUS_CLONE_SUBMODULES: true > > - PATH: ${HOME}/bin:${HOME}/.local/bin:${PATH} > > - RECHECK: yes > > - IMAGE_NAME: ovn-org/ovn-tests:ubuntu > > - matrix: > > - - CC: gcc > > - TESTSUITE: test > > - TEST_RANGE: -300 > > - - CC: gcc > > - TESTSUITE: test > > - TEST_RANGE: 301-600 > > - - CC: gcc > > - TESTSUITE: test > > - TEST_RANGE: 601- > > - UNSTABLE: yes > > - - CC: clang > > - TESTSUITE: test > > - TEST_RANGE: -300 > > - - CC: clang > > - TESTSUITE: test > > - TEST_RANGE: 301-600 > > - - CC: clang > > - TESTSUITE: test > > - TEST_RANGE: 601- > > - UNSTABLE: yes > > - > > - name: ARM64 ${CC} ${TESTSUITE} ${TEST_RANGE} > > - > > - install_dependencies_script: > > - - sudo apt update > > - - sudo apt install -y podman > > - > > - download_cache_script: > > - - curl http://$CIRRUS_HTTP_CACHE_HOST/${CIRRUS_CHANGE_IN_REPO} -o > /tmp/image.tar > > - > > - load_image_script: > > - - podman load -i /tmp/image.tar > > - - rm -rf /tmp/image.tar > > - > > - build_script: > > - - ./.ci/ci.sh --archive-logs > > diff --git a/.github/workflows/test-arm.yml > b/.github/workflows/test-arm.yml > > new file mode 100644 > > index 000000000..cd0a12eff > > --- /dev/null > > +++ b/.github/workflows/test-arm.yml > > @@ -0,0 +1,109 @@ > > +name: Build and Test ARM64 > > + > > +on: > > + schedule: > > + # Run Sunday at midnight > > + - cron: '0 0 * * 0' > > + workflow_dispatch: > > + > > +concurrency: > > + group: ${{ github.workflow }}-${{ github.event.pull_request.number || > github.run_id }} > > + if: (github.repository_owner == 'ovn-org' && github.event_name == > 'schedule' && github.ref_name == 'main') || github.event_name == > 'workflow_dispatch' > > + cancel-in-progress: true > > + > > +jobs: > > + build-linux: > > + env: > > + ARCH: ${{ matrix.cfg.arch }} > > + CC: ${{ matrix.cfg.compiler }} > > + DPDK: ${{ matrix.cfg.dpdk }} > > + LIBS: ${{ matrix.cfg.libs }} > > + OPTS: ${{ matrix.cfg.opts }} > > + TESTSUITE: ${{ matrix.cfg.testsuite }} > > + TEST_RANGE: ${{ matrix.cfg.test_range }} > > + SANITIZERS: ${{ matrix.cfg.sanitizers }} > > + UNSTABLE: ${{ matrix.cfg.unstable }} > > + > > + name: linux ${{ join(matrix.cfg.*, ' ') }} > > + runs-on: ubuntu-24.04-arm > > + > > + strategy: > > + fail-fast: false > > + matrix: > > + cfg: > > + - { compiler: gcc, opts: --disable-ssl } > > + - { compiler: clang, opts: --disable-ssl } > > + - { compiler: gcc, testsuite: dist-test } > > + - { compiler: gcc, testsuite: test, test_range: "-300" } > > + - { compiler: gcc, testsuite: test, test_range: "301-600" } > > + - { compiler: gcc, testsuite: test, test_range: "601-", > unstable: unstable } > > + - { compiler: clang, testsuite: test, sanitizers: sanitizers, > test_range: "-300" } > > + - { compiler: clang, testsuite: test, sanitizers: sanitizers, > test_range: "301-600" } > > + - { compiler: clang, testsuite: test, sanitizers: sanitizers, > test_range: "601-", unstable: unstable } > > + - { compiler: gcc, testsuite: test, libs: -ljemalloc, > test_range: "-300" } > > + - { compiler: gcc, testsuite: test, libs: -ljemalloc, > test_range: "301-600" } > > + - { compiler: gcc, testsuite: test, libs: -ljemalloc, > test_range: "601-", unstable: unstable } > > + - { compiler: gcc, testsuite: system-test-dpdk, dpdk: dpdk, > test_range: "-100" } > > + - { compiler: gcc, testsuite: system-test-dpdk, dpdk: dpdk, > test_range: "101-200" } > > + - { compiler: gcc, testsuite: system-test-dpdk, dpdk: dpdk, > test_range: "201-", unstable: unstable } > > + - { compiler: gcc, testsuite: system-test-userspace, > test_range: "-100" } > > + - { compiler: gcc, testsuite: system-test-userspace, > test_range: "101-200" } > > + - { compiler: gcc, testsuite: system-test-userspace, > test_range: "201-", unstable: unstable } > > + - { compiler: gcc, testsuite: system-test, test_range: "-100" > } > > + - { compiler: gcc, testsuite: system-test, test_range: > "101-200" } > > + - { compiler: gcc, testsuite: system-test, test_range: > "201-", unstable: unstable } > > + - { compiler: clang, testsuite: system-test, sanitizers: > sanitizers, test_range: "-100" } > > + - { compiler: clang, testsuite: system-test, sanitizers: > sanitizers, test_range: "101-200" } > > + - { compiler: clang, testsuite: system-test, sanitizers: > sanitizers, test_range: "201-", unstable: unstable } > > + > > + steps: > > + - name: system-level-dependencies > > + if: ${{ startsWith(matrix.cfg.testsuite, 'system-test') }} > > + run: | > > + sudo apt update > > + sudo apt -y install linux-modules-extra-$(uname -r) > > + > > + - name: checkout > > + uses: actions/checkout@v6 > > + with: > > + submodules: recursive > > + > > + - name: Fix /etc/hosts file > > + run: | > > + . .ci/linux-util.sh > > + fix_etc_hosts > > + > > + - name: Disable apparmor > > + run: | > > + . .ci/linux-util.sh > > + disable_apparmor > > + > > + - name: Fixup crun > > + run: | > > + . .ci/linux-util.sh > > + fixup_crun > > + > > + - name: Download container > > + run: | > > + podman pull ghcr.io/ovn-org/ovn-tests:ubuntu > > + sudo podman pull ghcr.io/ovn-org/ovn-tests:ubuntu > > + > > + - name: Tag image > > + run: | > > + podman tag ghcr.io/ovn-org/ovn-tests:ubuntu ovn-org/ovn-tests > > + sudo podman tag ghcr.io/ovn-org/ovn-tests:ubuntu > ovn-org/ovn-tests > > + > > + - name: build > > + if: ${{ startsWith(matrix.cfg.testsuite, 'system-test') }} > > + run: sudo -E ./.ci/ci.sh --archive-logs --timeout=2h > > + > > + - name: build > > + if: ${{ !startsWith(matrix.cfg.testsuite, 'system-test') }} > > + run: ./.ci/ci.sh --archive-logs --timeout=2h > > + > > + - name: upload logs on failure > > + if: failure() || cancelled() > > + uses: actions/upload-artifact@v7 > > + with: > > + name: logs-linux-${{ join(matrix.cfg.*, '-') }} > > + path: logs.tgz > > diff --git a/Makefile.am b/Makefile.am > > index 0f2389b25..b4a3284fc 100644 > > --- a/Makefile.am > > +++ b/Makefile.am > > @@ -70,7 +70,6 @@ EXTRA_DIST = \ > > MAINTAINERS.rst \ > > README.rst \ > > NOTICE \ > > - .cirrus.yml \ > > .ci/ci.sh \ > > .ci/linux-build.sh \ > > .ci/linux-util.sh \ > > @@ -82,6 +81,7 @@ EXTRA_DIST = \ > > .ci/ovn-kubernetes/custom.patch \ > > .github/workflows/containers.yml \ > > .github/workflows/test.yml \ > > + .github/workflows/test-arm.yml \ > > .github/workflows/ovn-kubernetes.yml \ > > .github/workflows/ovn-fake-multinode-tests.yml \ > > .github/workflows/ovn-upgrade-tests.yml \ > > diff --git a/README.rst b/README.rst > > index 9b09e22ff..e9b26cc56 100644 > > --- a/README.rst > > +++ b/README.rst > > @@ -11,8 +11,10 @@ OVN > > :target: > https://github.com/ovn-org/ovn/actions/workflows/ovn-kubernetes.yml > > .. image:: > https://github.com/ovn-org/ovn/actions/workflows/ovn-fake-multinode-tests.yml/badge.svg > > :target: > https://github.com/ovn-org/ovn/actions/workflows/ovn-fake-multinode-tests.yml > > -.. image:: https://api.cirrus-ci.com/github/ovn-org/ovn.svg > > - :target: https://cirrus-ci.com/github/ovn-org/ovn > > +.. image:: > https://github.com/ovn-org/ovn/actions/workflows/ovn-upgrade-tests.yml/badge.svg > > + :target: > https://github.com/ovn-org/ovn/actions/workflows/ovn-upgrade-tests.yml > > +.. image:: > https://github.com/ovn-org/ovn/actions/workflows/test-arm.yml/badge.svg > > + :target: > https://github.com/ovn-org/ovn/actions/workflows/test-arm.yml > > .. image:: https://readthedocs.org/projects/ovn/badge/?version=latest > > :target: https://docs.ovn.org/en/latest/ > > .. image:: https://scan.coverity.com/projects/30371/badge.svg > > -- > > 2.55.0 > > > > _______________________________________________ > > dev mailing list > > [email protected] > > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > > > Thank you Mark, I have noticed that one of the ifs was in a wrong place, with that addresed applied to main. Regards, Ales _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
