@@ -3,6 +3,13 @@ name: gtest-bare-metal
3
3
on :
4
4
# allow manually trigger
5
5
workflow_dispatch :
6
+ inputs :
7
+ branch-to-checkout :
8
+ type : string
9
+ default : ' main'
10
+ required : false
11
+ description : ' Branch name to use'
12
+
6
13
push :
7
14
branches :
8
15
- main
@@ -18,14 +25,15 @@ concurrency:
18
25
19
26
env :
20
27
# Customize the env if
21
- BUILD_TYPE : Release
22
- DPDK_VERSION : 23.11
23
- TEST_PF_PORT_P : " 0000:49:00.0"
24
- TEST_PF_PORT_R : " 0000:49:00.0"
25
- TEST_PORT_P : " 0000:49:01.2"
26
- TEST_PORT_R : " 0000:49:01.3"
27
- TEST_DMA_PORT_P : 0000:80:04.0
28
- TEST_DMA_PORT_R : 0000:80:04.1
28
+ BUILD_TYPE : ' Release'
29
+ DPDK_VERSION : ' 23.11'
30
+ # Bellow ENV variables are required to be defined on runner side:
31
+ # TEST_PF_PORT_P: '0000:49:00.0'
32
+ # TEST_PF_PORT_R: '0000:49:00.1'
33
+ # TEST_PORT_P: '0000:49:01.2'
34
+ # TEST_PORT_R: '0000:49:01.3'
35
+ # TEST_DMA_PORT_P: '0000:6a:01.0'
36
+ # TEST_DMA_PORT_R: '0000:6f:01.0'
29
37
30
38
permissions :
31
39
contents : read
47
55
48
56
gtest-build-mtl :
49
57
needs : gtest-check-for-changes
50
- if : ${{ github.repository == 'OpenVisualCloud/Media-Transport-Library' && needs.gtest-check-for-changes.outputs.changed == 'true' }}
58
+ if : github.repository == 'OpenVisualCloud/Media-Transport-Library' && ( needs.gtest-check-for-changes.outputs.changed == 'true' || github.event_name == 'workflow_dispatch')
51
59
runs-on : [Linux, self-hosted, DPDK]
52
60
timeout-minutes : 60
53
61
@@ -59,13 +67,15 @@ jobs:
59
67
60
68
- name : Checkout MTL
61
69
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
70
+ with :
71
+ ref : ' ${{ inputs.branch-to-checkout || github.head_ref || github.ref }}'
62
72
63
73
- name : Checkout DPDK
64
74
uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
65
75
with :
66
76
repository : ' DPDK/dpdk'
67
- ref : v${{ env.DPDK_VERSION }}
68
- path : dpdk
77
+ ref : ' v${{ env.DPDK_VERSION }}'
78
+ path : ' dpdk'
69
79
70
80
- name : Install the build dependency
71
81
run : |
91
101
92
102
gtest-perform-tests :
93
103
needs : [gtest-check-for-changes, gtest-build-mtl]
94
- if : ${{ github.repository == 'OpenVisualCloud/Media-Transport-Library' && needs.gtest-check-for-changes.outputs.changed == 'true' }}
104
+ if : github.repository == 'OpenVisualCloud/Media-Transport-Library' && ( needs.gtest-check-for-changes.outputs.changed == 'true' || github.event_name == 'workflow_dispatch')
95
105
runs-on : [Linux, self-hosted, DPDK]
96
106
steps :
97
107
- name : Harden Runner
@@ -108,41 +118,41 @@ jobs:
108
118
109
119
- name : Binding network adapter
110
120
run : |
111
- sudo ./script/nicctl.sh create_vf ${{ env. TEST_PF_PORT_P }} || true
112
- sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci ${{ env. TEST_DMA_PORT_P }} || true
113
- sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci ${{ env. TEST_DMA_PORT_R }} || true
121
+ sudo ./script/nicctl.sh create_vf "${ TEST_PF_PORT_P}" || true
122
+ sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci "${ TEST_DMA_PORT_P}" || true
123
+ sudo ./dpdk/usertools/dpdk-devbind.py -b vfio-pci "${ TEST_DMA_PORT_R}" || true
114
124
115
125
- name : Start MtlManager at background
116
126
run : |
117
127
sudo MtlManager &
118
128
119
129
- name : Run ufd test case
120
130
run : |
121
- sudo ./build/tests/KahawaiUfdTest --p_port ${{ env. TEST_PORT_P }} --r_port ${{ env. TEST_PORT_R }}
131
+ sudo ./build/tests/KahawaiUfdTest --p_port "${ TEST_PORT_P}" --r_port "${ TEST_PORT_R}"
122
132
123
133
- name : Run shared ufd test case
124
134
run : |
125
- sudo ./build/tests/KahawaiUfdTest --p_port ${{ env. TEST_PORT_P }} --r_port ${{ env. TEST_PORT_R }} --queue_mode shared
135
+ sudo ./build/tests/KahawaiUfdTest --p_port "${ TEST_PORT_P}" --r_port "${ TEST_PORT_R}" --queue_mode shared
126
136
127
137
- name : Run shared ufd test case with lcore
128
138
run : |
129
- sudo ./build/tests/KahawaiUfdTest --p_port ${{ env. TEST_PORT_P }} --r_port ${{ env. TEST_PORT_R }} --queue_mode shared --udp_lcore
139
+ sudo ./build/tests/KahawaiUfdTest --p_port "${ TEST_PORT_P}" --r_port "${ TEST_PORT_R}" --queue_mode shared --udp_lcore
130
140
131
141
- name : Run ufd test case with rss
132
142
run : |
133
- sudo ./build/tests/KahawaiUfdTest --p_port ${{ env. TEST_PORT_P }} --r_port ${{ env. TEST_PORT_R }} --rss_mode l3_l4
143
+ sudo ./build/tests/KahawaiUfdTest --p_port "${ TEST_PORT_P}" --r_port "${ TEST_PORT_R}" --rss_mode l3_l4
134
144
135
145
- name : Run udp ld preload test case
136
146
run : |
137
147
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
138
148
139
149
- name : Run st2110 test case
140
150
run : |
141
- 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.*
151
+ 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.*
142
152
143
153
- name : Run st2110 st20p test case in simulation ENA environment
144
154
run : |
145
- 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*
155
+ 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*
146
156
147
157
- name : Run st2110 st20p test case with kernel loopback
148
158
run : |
0 commit comments