Test Suite - Docker

From Libreswan
Revision as of 18:28, 1 December 2014 by Antony (talk | contribs)
Jump to navigation Jump to search

Libreswan testing suite docker adventures.

Everything below runs as root

# install docker 1.3

yum install python3-setproctitle python3-pexpect

yum -y remove docker 
yum -y install docker-io bridge-utils
yum -y update docker-io
systemctl start docker
systemctl enable docker

wget -O /usr/local/bin/pipework  https://github.com/jpetazzo/pipework/raw/master/pipework
chmod a+x /usr/local/bin/pipework

cd /home/build/
# clone an up to date libreswan tree from somewhere
# git checkout  testing-docker-pool

cd /home/build/libreswan/testing/docker/
# check authorized_keys file edit or add your your keys in there

docker build -t swanbase .
# coffee break. It will download fedora, about 200 packages 
# on swantest real 19m31.907s
# on parallels vm from Toronto real 7m1.228s

# make sure the host has netkey stack loaded 
ipsec _stackmanager start --netkey
ipsec version |grep klips && echo you need netkey

cd /home/build/libreswan/
make programs
cd /home/build/libreswan/testing/pluto/ikev2-37-docker-rw
../../utils/swantest --docker

Docker diagnostics

Stop all Docker containers

#will stop ALL containers 
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

Check if you got correct image

cd /home/build/libreswan/testing/docker

docker build -t swanbase .

root@jes:/home/build/libreswan/testing/docker# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
swanbase            latest              e8e73564a0ae        55 minutes ago      2.84 GB
fedora              20                  7d3f07f8de5f        6 weeks ago         374.1 MB

Prerequisites

The latest one need Python 3.3 or later, necessary for subprocess to deal with 10-100s of threads. Also pexpect is works better.

sudo yum install python3-setproctitle python3-pexpect