snmalloc/ci
Nathaniel Wesley Filardo 9207f3d8a0 CI: bring non-power qemu cross CI to ubuntu-latest 2022-12-14 14:10:17 +00:00
..
README.md ci/README: document how to test docker images locally 2021-04-21 21:49:01 +01:00
Toolchain.cmake CI: bring non-power qemu cross CI to ubuntu-latest 2022-12-14 14:10:17 +00:00

README.md

Keeping CI images up to date

Re-building an image after updating the docker file

Run docker build -t snmallocciteam/build_${IMG}:latest -f ci/${IMG} . from the root of the repo, where $IMG is the image you want to rebuild, for example linux_x64

If you are building a multiarch image, ie. an image targeting an architecture other than the one you are running, you will need to install the qemu handler before you can build: sudo docker run --rm --privileged multiarch/qemu-user-static:register --reset

Testing locally

Having built a docker image, you can build your current tree therein with

docker run --rm -u $(id -u) -v ${PWD}:/opt:ro snmallocciteam/build_${IMG}:latest \
  sh -c "cd /tmp; CC=clang-10 CXX=clang++-10 BUILD_TYPE=Debug SNMALLOC_SRC=/opt /opt/ci/scripts/build.sh && (cd build; ninja test)"

Pushing the updated docker image to Docker Hub

Run docker push snmallocciteam/$IMG:latest

Permissions

You must be part of the snmalloc ci team to push updated images. Contact @mjp41, or @achamayou to be given access.