-
Notifications
You must be signed in to change notification settings - Fork 22
/
azure-pipelines.yml
54 lines (47 loc) · 1.95 KB
/
azure-pipelines.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
trigger:
- main
pool:
vmImage: 'ubuntu-latest'
variables:
timezone: 'America/Los_Angeles'
rdma_core: '$(Pipeline.Workspace)/rdma-core'
rte_sdk: '$(Pipeline.Workspace)/dpdk'
steps:
- script: |
sudo ln -snf /usr/share/zoneinfo/$(timezone) /etc/localtime
echo $(timezone) > /etc/timezone
echo 'APT::Install-Suggests "0";' | sudo tee -a /etc/apt/apt.conf.d/00-docker
echo 'APT::Install-Recommends "0";' | sudo tee -a /etc/apt/apt.conf.d/00-docker
sudo apt-get update
sudo apt-get install --no-install-recommends -y git build-essential cmake meson pkg-config libudev-dev libnl-3-dev libnl-route-3-dev python3-dev python3-docutils python3-pyelftools libnuma-dev ca-certificates autoconf libhugetlbfs-dev pciutils libunwind-dev uuid-dev nlohmann-json3-dev
sudo apt-get --purge -y remove rdma-core librdmacm1 ibverbs-providers libibverbs-dev libibverbs1
sudo rm -rf /var/lib/apt/lists/*
displayName: 'Set timezone and Install dependencies'
- script: |
cd $(Pipeline.Workspace)
git clone -b 'stable-v40' --single-branch --depth 1 https://github.com/linux-rdma/rdma-core.git $(rdma_core)
cd $(rdma_core)
mkdir build
cd build
cmake -GNinja -DNO_PYVERBS=1 -DNO_MAN_PAGES=1 ../
sudo ninja install
displayName: 'Build rdma-core'
- script: |
cd $(Pipeline.Workspace)
git clone --depth 1 --branch 'v21.11' https://github.com/DPDK/dpdk.git $(rte_sdk)
cd $(rte_sdk)
meson build -Dexamples='' -Dplatform=generic -Denable_kmods=false -Dtests=false -Ddisable_drivers='raw/*,crypto/*,baseband/*,dma/*'
cd build/
DESTDIR=$(rte_sdk)/build/install ninja install
rm -rf $(rte_sdk)/app $(rte_sdk)/drivers $(rte_sdk)/.git $(rte_sdk)/build/app
displayName: 'Build DPDK'
- checkout: self
path: 'machnet'
submodules: recursive
- script: |
cd $(Pipeline.Workspace)/machnet
mkdir build
cd build
RTE_SDK=$(rte_sdk) cmake -DCMAKE_BUILD_TYPE=Release -GNinja ../
ninja
displayName: 'Build Machnet'