diff options
Diffstat (limited to 'doc/developer/building-docker.rst')
| -rw-r--r-- | doc/developer/building-docker.rst | 48 | 
1 files changed, 33 insertions, 15 deletions
diff --git a/doc/developer/building-docker.rst b/doc/developer/building-docker.rst index 4cf356049e..3b1542b223 100644 --- a/doc/developer/building-docker.rst +++ b/doc/developer/building-docker.rst @@ -16,8 +16,8 @@ The following platform images are used to support Travis CI and can also  be used to reproduce topotest failures when the docker host is Ubuntu  (tested on 18.04 and 20.04): -* Ubuntu 18.04  * Ubuntu 20.04 +* Ubuntu 22.04  The following platform images may also be built, but these simply install a  binary package from an existing repository and do not perform source builds: @@ -130,57 +130,75 @@ No script, multi-arch (ex. amd64, arm64):: -Building Ubuntu 18.04 Image +Building Ubuntu 20.04 Image  ---------------------------  Build image (from project root directory):: -   docker build -t frr-ubuntu18:latest  -f docker/ubuntu18-ci/Dockerfile . +   docker build -t frr-ubuntu20:latest --build-arg=UBUNTU_VERSION=20.04 -f docker/ubuntu-ci/Dockerfile . + +Running Full Topotest:: + +   docker run --init -it --privileged --name frr -v /lib/modules:/lib/modules \ +       frr-ubuntu20:latest bash -c 'cd ~/frr/tests/topotests ; sudo pytest -nauto --dist=loadfile' + +Extract results from the above run into `run-results` dir and analyze:: + +   tests/topotest/analyze.py -C frr -Ar run-results  Start the container:: -   docker run -d --privileged --name frr-ubuntu18 --mount type=bind,source=/lib/modules,target=/lib/modules frr-ubuntu18:latest +   docker run -d --init --privileged --name frr-ubuntu20 --mount type=bind,source=/lib/modules,target=/lib/modules frr-ubuntu20:latest  Running a topotest (when the docker host is Ubuntu):: -   docker exec frr-ubuntu18 bash -c 'cd ~/frr/tests/topotests/ospf-topo1 ; sudo pytest test_ospf_topo1.py' +   docker exec frr-ubuntu20 bash -c 'cd ~/frr/tests/topotests/ospf-topo1 ; sudo pytest test_ospf_topo1.py'  Starting an interactive bash session:: -   docker exec -it frr-ubuntu18 bash +   docker exec -it frr-ubuntu20 bash  Stopping an removing a container:: -   docker stop frr-ubuntu18 ; docker rm frr-ubuntu18 +   docker stop frr-ubuntu20 ; docker rm frr-ubuntu20  Removing the built image:: -   docker rmi frr-ubuntu18:latest +   docker rmi frr-ubuntu20:latest -Building Ubuntu 20.04 Image +Building Ubuntu 22.04 Image  ---------------------------  Build image (from project root directory):: -   docker build -t frr-ubuntu20:latest  -f docker/ubuntu20-ci/Dockerfile . +   docker build -t frr-ubuntu22:latest -f docker/ubuntu-ci/Dockerfile . + +Running Full Topotest:: + +   docker run --init -it --privileged --name frr -v /lib/modules:/lib/modules \ +       frr-ubuntu22:latest bash -c 'cd ~/frr/tests/topotests ; sudo pytest -nauto --dist=loadfile' + +Extract results from the above run into `run-results` dir and analyze:: + +   tests/topotest/analyze.py -C frr -Ar run-results  Start the container:: -   docker run -d --privileged --name frr-ubuntu20 --mount type=bind,source=/lib/modules,target=/lib/modules frr-ubuntu20:latest +   docker run -d --init --privileged --name frr-ubuntu22 --mount type=bind,source=/lib/modules,target=/lib/modules frr-ubuntu22:latest  Running a topotest (when the docker host is Ubuntu):: -   docker exec frr-ubuntu20 bash -c 'cd ~/frr/tests/topotests/ospf-topo1 ; sudo pytest test_ospf_topo1.py' +   docker exec frr-ubuntu22 bash -c 'cd ~/frr/tests/topotests/ospf-topo1 ; sudo pytest test_ospf_topo1.py'  Starting an interactive bash session:: -   docker exec -it frr-ubuntu20 bash +   docker exec -it frr-ubuntu22 bash  Stopping an removing a container:: -   docker stop frr-ubuntu20 ; docker rm frr-ubuntu20 +   docker stop frr-ubuntu22 ; docker rm frr-ubuntu22  Removing the built image:: -   docker rmi frr-ubuntu20:latest +   docker rmi frr-ubuntu22:latest  | 
