-
Notifications
You must be signed in to change notification settings - Fork 32
83 lines (70 loc) · 1.98 KB
/
ci-test.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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
name: CI test
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
FunctionalTest:
runs-on: ubuntu-20.04
steps:
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.9"
- name: Source branch checkout
uses: actions/checkout@v2
- name: Set up system requirements
run: |
sudo apt-get update
sudo apt-get install podman -y
sudo systemctl enable --now podman.socket
curl -sSL https://install.python-poetry.org | python3 - --version 1.3.1
- name: Set up Podman network requirements
run: |
sudo sysctl -w net.ipv4.ip_forward=1
sudo sysctl net.ipv4.conf.all.forwarding=1
sudo iptables -P FORWARD ACCEPT
sudo sysctl -p
- name: Install LNST
run: |
sudo apt-get install -y iputils-* \
ethtool \
gcc \
python-dev \
libxml2-dev \
libxslt-dev \
qemu-kvm \
libvirt-daemon-system \
libvirt-clients \
bridge-utils \
libvirt-dev \
libnl-3-200 \
libnl-route-3-dev \
git \
libnl-3-dev
export PATH="/root/.local/bin:$PATH"
poetry install -E "containers"
- name: Build LNST agents image
run: |
sudo -E XDG_RUNTIME_DIR= podman build . -t lnst -f container_files/Dockerfile
- name: SimpleNetworkRecipe ping test
run: |
export PATH="/root/.local/bin:$PATH"
venv_path=$(poetry env info -p)
sudo "$venv_path"/bin/python3 .github/runner.py
ImportsCheck:
runs-on: ubuntu-20.04
steps:
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.9"
- name: Source branch checkout
uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get install pylint3
- name: Imports check
run: |
pylint --disable=all --enable=W0611 lnst