Skip to content

Commit

Permalink
WIP: github_ci: test graviton3 runners
Browse files Browse the repository at this point in the history
Test running arm64 CI using Graviton3 runners.

Signed-off-by: Matias Elo <[email protected]>
  • Loading branch information
MatiasElo committed Sep 25, 2024
1 parent 69feb8c commit 6281ec1
Showing 1 changed file with 46 additions and 45 deletions.
91 changes: 46 additions & 45 deletions .github/workflows/ci-pipeline-arm64.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
name: CI arm64

# github.repository has been used to ensure CI is only run on the repo where
# self-hosted runners are installed. This will prevent [self-hosted, ARM64] CI failing on forks
# self-hosted runners are installed. This will prevent ah-ubuntu_22_04-c7g_2x-50
# CI failing on forks.

on: [push, pull_request, merge_group]
env:
Expand All @@ -13,7 +14,7 @@ env:
jobs:
Build_gcc:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -30,13 +31,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=gcc
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/build_${ARCH}.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Build_clang:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -55,13 +56,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=clang
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/build_${ARCH}.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Build_static_u22:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
env:
OS: ubuntu_22.04
CONF: "--disable-shared --without-openssl --without-pcap"
Expand All @@ -74,13 +75,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="gcc-${{matrix.cc_ver}}" -e CXX="g++-${{matrix.cc_ver}}"
-e CONF="${CONF} ${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_static.sh
-e CONF="${CONF} ${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/build_static.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Build_OS:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -90,13 +91,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${{matrix.os}}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${{matrix.os}}-${ARCH}-graviton3 /odp/scripts/ci/build_${ARCH}.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Build_gcc_u22:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
env:
OS: ubuntu_22.04
strategy:
Expand All @@ -108,24 +109,24 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="gcc-${{matrix.cc_ver}}" -e CXX="g++-${{matrix.cc_ver}}"
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/build_${ARCH}.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Build_out-of-tree:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/out_of_tree.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/out_of_tree.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Build_XDP:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
env:
CONF: "--enable-xdp"
OS: ubuntu_22.04
Expand All @@ -137,13 +138,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/build_${ARCH}.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/build_${ARCH}.sh
- if: ${{ failure() }}
uses: ./.github/actions/build-failure-log

Run_distcheck:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -152,13 +153,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}"
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/distcheck.sh
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/distcheck.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_gcc:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -176,15 +177,15 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=gcc -e ARCH="${ARCH}"
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log
- if: ${{ success() }}
uses: ./.github/actions/dump-log

Run_clang:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -198,13 +199,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC=clang -e ARCH="${ARCH}"
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${{matrix.conf}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_CFLAGS:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -214,13 +215,13 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${{matrix.cc}}" -e ARCH="${ARCH}"
-e CXX=g++-10 -e CFLAGS="${{matrix.cflags}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CXX=g++-10 -e CFLAGS="${{matrix.cflags}}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_OS:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
strategy:
fail-fast: false
matrix:
Expand All @@ -229,119 +230,119 @@ jobs:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${{matrix.os}}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${{matrix.os}}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_sched_config:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/sched-basic.conf $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/sched-basic.conf $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_stash_config:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/stash-custom.conf $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/stash-custom.conf $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_scheduler_sp:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_SCHEDULER=sp $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${CONF}" -e ODP_SCHEDULER=sp $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_scheduler_scalable:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_SCHEDULER=scalable -e CI_SKIP=pktio_test_pktin_event_sched $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e CONF="${CONF}" -e ODP_SCHEDULER=scalable -e CI_SKIP=pktio_test_pktin_event_sched $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_process_mode:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/process-mode.conf
-e ODPH_PROC_MODE=1 $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check.sh
-e ODPH_PROC_MODE=1 $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_inline_timer:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/inline-timer.conf
$CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check_inline_timer.sh
$CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check_inline_timer.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_packet_align:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" -e ODP_CONFIG_FILE=/odp/platform/linux-generic/test/packet_align.conf
$CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native /odp/scripts/ci/check_pktio.sh
$CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3 /odp/scripts/ci/check_pktio.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_dpdk-19_11:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native-dpdk_19.11 /odp/scripts/ci/check.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3-dpdk_19.11 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_dpdk-20_11:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native-dpdk_20.11 /odp/scripts/ci/check.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3-dpdk_20.11 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

Run_dpdk-21_11:
if: ${{ github.repository == 'OpenDataPlane/odp' }}
runs-on: [self-hosted, ARM64]
runs-on: ah-ubuntu_22_04-c7g_2x-50
steps:
- uses: OpenDataPlane/action-clean-up@main
- uses: actions/checkout@v4
- run: sudo docker run -i -v `pwd`:/odp --privileged --shm-size 8g -e CC="${CC}" -e ARCH="${ARCH}"
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-native-dpdk_21.11 /odp/scripts/ci/check.sh
-e CONF="${CONF}" $CONTAINER_NAMESPACE/odp-ci-${OS}-${ARCH}-graviton3-dpdk_21.11 /odp/scripts/ci/check.sh
- if: ${{ failure() }}
uses: ./.github/actions/run-failure-log

0 comments on commit 6281ec1

Please sign in to comment.