Ubuntu 20.04 fixes:
- fixes sshd test
- speeds up examples/{treeping64,tree1024}.py
- debugging hacks/output for testLinkChange
- removes cfs from examples/popen.py
- improves nat in nodelib (netplan fixes?)
- makes some tests executable
- waits for switches to connect in tests to
avoid race conditions
-- adds mn -w option and wait CLI command
Changes:
- REMOVES default "-v" argument for Controller()
and adds verbose(=False) option; avoiding logging
makes it faster
- CHANGES waitConnected to wait for 5 seconds
as documented; we may wish to implement an argument
to -w to set this timeout
Issues?
- There may still be an issue with the ovs-netplan-clean
service causing the boot to hang ;-(
57 lines
2.0 KiB
YAML
57 lines
2.0 KiB
YAML
|
|
name: mininet-tests
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
test:
|
|
name: Mininet Tests
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-20.04, ubuntu-18.04, ubuntu-16.04]
|
|
python-version: [3.x, 2.x]
|
|
steps:
|
|
- name: Check out Mininet source
|
|
uses: actions/checkout@v2
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
- name: Install Mininet and base dependencies
|
|
run: |
|
|
sudo apt-get update -qq
|
|
# This seems too slow unfortunately:
|
|
# sudo apt-get upgrade -y -qq
|
|
PYTHON=`which python` util/install.sh -nv
|
|
- name: Run code check (skipping for now)
|
|
run: |
|
|
bash -c "if [ `lsb_release -rs` == '14.04' ]; then make codecheck; fi"
|
|
- name: Sanity test
|
|
run: |
|
|
export sudo="sudo env PATH=$PATH"
|
|
# Verify major python-version number matches python and mininet
|
|
export PYVER=`echo ${{ matrix.python-version }} | cut -d . -f 1`
|
|
export CHKVER='px import platform; print(platform.python_version())'
|
|
python --version |& grep " $PYVER\."
|
|
echo $CHKVER | $sudo mn -v output | grep " $PYVER\."
|
|
# Newer OvS tries OpenFlow15 which crashes ovsc on ubuntu-20.04
|
|
$sudo mn --switch ovs,protocols=OpenFlow13 --test pingall
|
|
- name: Install test dependencies
|
|
run: |
|
|
sudo apt-get install -qq vlan
|
|
pip install pexpect
|
|
util/install.sh -fw
|
|
- name: Run tests (quick)
|
|
run: |
|
|
export sudo="sudo env PATH=$PATH"
|
|
export PYTHON=`which python`
|
|
rm -f pexpect.out
|
|
$sudo $PYTHON mininet/test/runner.py -v -quick
|
|
- name: Run examples tests (quick)
|
|
run: |
|
|
export sudo="sudo env PATH=$PATH"
|
|
export PYTHON=`which python`
|
|
rm -f pexpect.out
|
|
$sudo $PYTHON examples/test/runner.py -v -quick
|