tree: 68a6c665d7378a285df32cd91205d11aed37d2fd [path history] [tgz]
  1. docker-compose.yml
  2. Dockerfile
  3. README.md
docker/cache-tests/README.md

Instructions on building and configuring cache-tests.

There are 2 parts for cache-tests.

  • ATS test run on any docker jenkins build agent.
  • Publishing server that runs on the controller.

These instructions and docker utilities exist on the controller in `/opt/cache-tests/'. There is this README, a Dockerfile and docker-compose.yml files.

For this to work a desired clone of the cache-tests git repo https://github.com/http-tests/cache-tests.git needs to reside in /opt/cache-tests/cache-tests on the controller.

Periodically this git repo should be updated which will require rebuilding the cache-tests image: ci.trafficserver.apache.org/ats/cache-tests and restarting the Publishing server.

Currently the debian:11 image from the ats docker repo is used as the base. On top of it is installed the npm utility which is used to both run the tests and also publish the results on port 8000 of the controller. The above cache-tests git repo is added into the docker image. Building this image MUST be done from /opt/cache-tests on the controller.

The Publishing server mounts this /opt/cache-tests/cache-tests/results directory into its own copy of the cache-tests git repo and serves that up.

In order to add or remove test run results the file /opt/cache-tests/cache-tests/results/index.mjs should be edited directly. When upgrading the cache-tests git repo this file will need to be rebased onto the updated pull.

An example update run:

cd /opt/cache-tests
docker-compose down server
cd /opt/cache-tests/cache-tests

# update the repo, merge the results/index.mjs changes
git stash ; git fetch ; git pull ; git stash apply

# rebuild and push cache-tests image
cd /opt/cache-tests
docker-compose build builder
docker tag <hash> ci.trafficserver.apache.org:5000/ats/cache-tests
docker push ci.trafficserver.apache.org:5000/ats/cache-tests

docker-compose up -d server

Also remember to clear/repull the cache-test images on the docker jenkins agents.