Skip to content

protect against reentrant closing #132

protect against reentrant closing

protect against reentrant closing #132

Workflow file for this run

name: CI
on:
push:
branches:
- 'master'
- 'ci'
pull_request:
branches:
- 'master'
jobs:
server:
name: Test Server
strategy:
fail-fast: false
matrix:
include:
- SELECT: nose
OLD_REV: "HEAD"
- SELECT: nose
OLD_REV: "origin/legacy"
- SELECT: nose
OLD_REV: "v0.3.0"
# even older servers (before 436a420aad8aff687822ce342360f5306281ea0b) have the broken
# Python conntrack bindings, they do not work any more
- SELECT: usage
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Setup
run: |
set -x
git fetch --unshallow # GHA only does a shallow clone
sudo add-apt-repository universe
sudo apt-get -qq update
# This is only what we need to install on the *host*.
# Server and client will be built in containers set up by `setup_template` in `tunneldigger.py`
# as well as the `prepare_{server,client}.sh` scripts.
sudo apt-get --assume-no install lxc python3-lxc python3-nose linux-modules-extra-$(uname -r)
sudo modprobe l2tp_netlink
sudo modprobe l2tp_eth
# Newer versions of the broker don't need the following but keep it around for cross-version testing
sudo modprobe nf_conntrack
sudo modprobe nf_conntrack_netlink
sudo iptables -t nat -L >/dev/null
sudo iptables -t filter -P FORWARD ACCEPT
- name: Run tests
run: |
export SELECT=${{ matrix.SELECT }}
export OLD_REV=${{ matrix.OLD_REV }}
sudo -E ./tests/travis.sh
client:
name: Test Client
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Setup
run: |
sudo apt-get --assume-no install cmake libnl-3-dev libnl-genl-3-dev libasyncns-dev
- name: Run tests
run: |
export SELECT=client
sudo -E ./tests/travis.sh