Skip to content

Commit

Permalink
Refactor: Update and rename ubuntu_build_with_gtest.yml (OpenVisualCl…
Browse files Browse the repository at this point in the history
…oud#1073)

Update and rename `gtest-bare-metal` file:

- Rename `ubuntu_build_with_gtest.yml` to `gtest-bare-metal.yml` to
reflect the workflow naming convention
- Allow branch choosing for workflow run,
  • Loading branch information
Mionsz authored Feb 11, 2025
1 parent bab2045 commit 31c21a1
Showing 1 changed file with 31 additions and 21 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,13 @@ name: gtest-bare-metal
on:
# allow manually trigger
workflow_dispatch:
inputs:
branch-to-checkout:
type: string
default: 'main'
required: false
description: 'Branch name to use'

push:
branches:
- main
Expand All @@ -18,14 +25,15 @@ concurrency:

env:
# Customize the env if
BUILD_TYPE: Release
DPDK_VERSION: 23.11
TEST_PF_PORT_P: "0000:49:00.0"
TEST_PF_PORT_R: "0000:49:00.0"
TEST_PORT_P: "0000:49:01.2"
TEST_PORT_R: "0000:49:01.3"
TEST_DMA_PORT_P: 0000:80:04.0
TEST_DMA_PORT_R: 0000:80:04.1
BUILD_TYPE: 'Release'
DPDK_VERSION: '23.11'
# Bellow ENV variables are required to be defined on runner side:
# TEST_PF_PORT_P: '0000:49:00.0'
# TEST_PF_PORT_R: '0000:49:00.1'
# TEST_PORT_P: '0000:49:01.2'
# TEST_PORT_R: '0000:49:01.3'
# TEST_DMA_PORT_P: '0000:6a:01.0'
# TEST_DMA_PORT_R: '0000:6f:01.0'

permissions:
contents: read
Expand All @@ -47,7 +55,7 @@ jobs:

gtest-build-mtl:
needs: gtest-check-for-changes
if: ${{ github.repository == 'OpenVisualCloud/Media-Transport-Library' && needs.gtest-check-for-changes.outputs.changed == 'true' }}
if: github.repository == 'OpenVisualCloud/Media-Transport-Library' && (needs.gtest-check-for-changes.outputs.changed == 'true' || github.event_name == 'workflow_dispatch')
runs-on: [Linux, self-hosted, DPDK]
timeout-minutes: 60

Expand All @@ -59,13 +67,15 @@ jobs:

- name: Checkout MTL
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: '${{ inputs.branch-to-checkout || github.head_ref || github.ref }}'

- name: Checkout DPDK
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
repository: 'DPDK/dpdk'
ref: v${{ env.DPDK_VERSION }}
path: dpdk
ref: 'v${{ env.DPDK_VERSION }}'
path: 'dpdk'

- name: Install the build dependency
run: |
Expand All @@ -91,7 +101,7 @@ jobs:
gtest-perform-tests:
needs: [gtest-check-for-changes, gtest-build-mtl]
if: ${{ github.repository == 'OpenVisualCloud/Media-Transport-Library' && needs.gtest-check-for-changes.outputs.changed == 'true' }}
if: github.repository == 'OpenVisualCloud/Media-Transport-Library' && (needs.gtest-check-for-changes.outputs.changed == 'true' || github.event_name == 'workflow_dispatch')
runs-on: [Linux, self-hosted, DPDK]
steps:
- name: Harden Runner
Expand All @@ -108,41 +118,41 @@ jobs:
- name: Binding network adapter
run: |
sudo ./script/nicctl.sh create_vf ${{ env.TEST_PF_PORT_P }} || true
sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci ${{ env.TEST_DMA_PORT_P }} || true
sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci ${{ env.TEST_DMA_PORT_R }} || true
sudo ./script/nicctl.sh create_vf "${TEST_PF_PORT_P}" || true
sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci "${TEST_DMA_PORT_P}" || true
sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci "${TEST_DMA_PORT_R}" || true
- name: Start MtlManager at background
run: |
sudo MtlManager &
- name: Run ufd test case
run: |
sudo ./build/tests/KahawaiUfdTest --p_port ${{ env.TEST_PORT_P }} --r_port ${{ env.TEST_PORT_R }}
sudo ./build/tests/KahawaiUfdTest --p_port "${TEST_PORT_P}" --r_port "${TEST_PORT_R}"
- name: Run shared ufd test case
run: |
sudo ./build/tests/KahawaiUfdTest --p_port ${{ env.TEST_PORT_P }} --r_port ${{ env.TEST_PORT_R }} --queue_mode shared
sudo ./build/tests/KahawaiUfdTest --p_port "${TEST_PORT_P}" --r_port "${TEST_PORT_R}" --queue_mode shared
- name: Run shared ufd test case with lcore
run: |
sudo ./build/tests/KahawaiUfdTest --p_port ${{ env.TEST_PORT_P }} --r_port ${{ env.TEST_PORT_R }} --queue_mode shared --udp_lcore
sudo ./build/tests/KahawaiUfdTest --p_port "${TEST_PORT_P}" --r_port "${TEST_PORT_R}" --queue_mode shared --udp_lcore
- name: Run ufd test case with rss
run: |
sudo ./build/tests/KahawaiUfdTest --p_port ${{ env.TEST_PORT_P }} --r_port ${{ env.TEST_PORT_R }} --rss_mode l3_l4
sudo ./build/tests/KahawaiUfdTest --p_port "${TEST_PORT_P}" --r_port "${TEST_PORT_R}" --rss_mode l3_l4
- name: Run udp ld preload test case
run: |
sudo MUFD_CFG=.github/workflows/upl_gtest.json LD_PRELOAD=/usr/local/lib/x86_64-linux-gnu/libmtl_udp_preload.so ./build/tests/KahawaiUplTest --p_sip 192.168.2.80 --r_sip 192.168.2.81
- name: Run st2110 test case
run: |
sudo ./build/tests/KahawaiTest --auto_start_stop --p_port ${{ env.TEST_PORT_P }} --r_port ${{ env.TEST_PORT_R }} --dma_dev ${{ env.TEST_DMA_PORT_P }},${{ env.TEST_DMA_PORT_R }} --gtest_filter=-St22_?x.*
sudo ./build/tests/KahawaiTest --auto_start_stop --p_port "${TEST_PORT_P}" --r_port "${TEST_PORT_R}" --dma_dev "${TEST_DMA_PORT_P},${TEST_DMA_PORT_R}" --gtest_filter=-St22_?x.*
- name: Run st2110 st20p test case in simulation ENA environment
run: |
sudo ./build/tests/KahawaiTest --auto_start_stop --p_port ${{ env.TEST_PORT_P }} --r_port ${{ env.TEST_PORT_R }} --rss_mode l3_l4 --pacing_way tsc --iova_mode pa --multi_src_port --gtest_filter=Main.*:St20p*:-*ext*
sudo ./build/tests/KahawaiTest --auto_start_stop --p_port "${TEST_PORT_P}" --r_port "${TEST_PORT_R}" --rss_mode l3_l4 --pacing_way tsc --iova_mode pa --multi_src_port --gtest_filter=Main.*:St20p*:-*ext*
- name: Run st2110 st20p test case with kernel loopback
run: |
Expand Down

0 comments on commit 31c21a1

Please sign in to comment.