Skip to content

Merge pull request #63 from Atul-source/tm #162

Merge pull request #63 from Atul-source/tm

Merge pull request #63 from Atul-source/tm #162

name: CI build for xdp-root
on:
pull_request: {}
push:
branches:
- main
jobs:
xdp-root-build-ubuntu:
runs-on: ubuntu-latest
container:
image: ubuntu:bionic
steps:
- name: Set up build environment
run: |
apt-get update
apt-get install -y bc \
bison \
build-essential \
clang \
curl \
exuberant-ctags \
flex \
gcc-8 \
gcc-multilib \
git \
gnutls-bin \
libc6-dev \
libcurl4-openssl-dev \
libelf-dev \
libjson-c-dev \
libncurses5-dev \
libpcap-dev \
libssl-dev \
linux-headers-generic \
linux-tools-common \
linux-tools-generic \
llvm \
rsync
- name: Set env variables
run: |
echo "REPO=eBPF-Package-Repository" >> $GITHUB_ENV
echo "PROG=xdp-root" >> $GITHUB_ENV
echo "BPF_PATH=samples/bpf" >> $GITHUB_ENV
echo "LINUX_SRC_PATH=$GITHUB_WORKSPACE/linux" >> $GITHUB_ENV
- name: Clone dependencies
run: |
git clone --branch v5.1 --depth 1 https://github.com/torvalds/linux.git $LINUX_SRC_PATH
cd $LINUX_SRC_PATH
make defconfig
- name: Clone kernel function repository
uses: actions/checkout@v2
with:
path: linux/${{ env.BPF_PATH }}/${{ env.REPO }}/
- name: Build eBPF Programs
run: |
cd $LINUX_SRC_PATH/$BPF_PATH/$REPO/$PROG
make
xdp-root-build-windows:
strategy:
matrix:
configurations: [Debug, Release]
runs-on: windows-2019
env:
BUILD_CONFIGURATION: ${{matrix.configurations}}
BUILD_PLATFORM: x64
steps:
- uses: actions/checkout@b0e28b5ac45a892f91e7d036f8200cf5ed489415
with:
submodules: 'recursive'
- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@becb80cf9a036187bb1e07e74eb64e25850d757a
- name: Install tools
working-directory: ${{env.GITHUB_WORKSPACE}}
run: |
choco install -y llvm
echo "C:\Program Files\LLVM\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: Build
working-directory: ${{env.GITHUB_WORKSPACE}}
run: |
cmake -B build
cmake --build build -j $(nproc) --config ${{env.BUILD_CONFIGURATION}}