st2110/pipeline: add block mode support #39
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Ubuntu AF_XDP build | |
on: | |
push: | |
branches: | |
- main | |
- 'maint-**' | |
pull_request: | |
branches: | |
- main | |
- 'maint-**' | |
env: | |
# Customize the env if | |
# Disable since mtl patched dpdk pcapng and this job use prebuilt pkg | |
MTL_BUILD_DISABLE_PCAPNG: true | |
PKG_CONFIG_PATH: /usr/local/lib/pkgconfig:/usr/lib64/pkgconfig | |
permissions: | |
contents: read | |
jobs: | |
changes: | |
runs-on: ubuntu-latest | |
permissions: | |
pull-requests: read | |
outputs: | |
changed: ${{ steps.filter.outputs.afxdp_build == 'true' }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: dorny/paths-filter@4512585405083f25c027a35db413c2b3b9006d50 # v2 | |
id: filter | |
with: | |
filters: .github/path_filters.yml | |
build: | |
needs: changes | |
if: ${{ github.repository == 'OpenVisualCloud/Media-Transport-Library' && needs.changes.outputs.changed == 'true' }} | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
container: | |
image: ubuntu:latest | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
steps: | |
- name: Harden Runner | |
uses: step-security/harden-runner@eb238b55efaa70779f274895e782ed17c84f2895 # v2.6.1 | |
with: | |
egress-policy: audit | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: DoozyX/clang-format-lint-action@a83a8fb7d371f66da7dd1c4f33a193023899494b # v0.16 | |
with: | |
source: '.' | |
extensions: 'hpp,h,cpp,c,cc' | |
- name: Install the build dependency | |
run: | | |
apt-get update -y | |
apt-get install -y sudo git gcc meson python3 python3-pip pkg-config libnuma-dev libjson-c-dev libpcap-dev libgtest-dev libsdl2-dev libsdl2-ttf-dev libssl-dev | |
apt-get install -y make m4 clang llvm zlib1g-dev libelf-dev libcap-ng-dev | |
apt-get install -y dpdk-dev | |
- name: Install the python package | |
run: pip install pyelftools==0.29 ninja==1.11.1 | |
- name: Checkout xdp-tools | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
with: | |
repository: 'xdp-project/xdp-tools' | |
path: xdp-tools | |
submodules: recursive | |
- name: Build and install xdp-tools | |
run: | | |
cd xdp-tools && ./configure | |
make && sudo make install | |
cd lib/libbpf/src && sudo make install | |
- name: Build | |
run: | | |
./build.sh | |
- name: Build with debug | |
run: | | |
rm build -rf | |
./build.sh debug |