]> git.arvados.org - arvados.git/commit
21389: Unify Python Docker images 21389-update-docker-jobs
authorBrett Smith <brett.smith@curii.com>
Mon, 21 Jul 2025 20:37:38 +0000 (16:37 -0400)
committerBrett Smith <brett.smith@curii.com>
Mon, 21 Jul 2025 20:39:32 +0000 (16:39 -0400)
commita4864d8ba31ace660e06b06d78afc4b9a83bacad
treeadc517fcf67cdb7d6f42e9be864aa117b01de4e9
parent36f65eebb69130520f2468572f2246144b9723bf
21389: Unify Python Docker images

Fundamentally these images all build a Docker image with a Python
virtualenv. There are minor details in how they go about it, but none of
them have any real consequence for the final built image. We can use the
same code to build all these images and just parametrize it in the build
context.

* Port build-dev-docker-jobs-image.sh to Python (build_docker_image.py).
  This makes it easier to share code between them; provides better
  argument parsing; gives us a better base to build from; and makes
  sense for build tooling that works so much with Python.

* Update the Dockerfile to use a two-stage build. It still builds a
  virtualenv with wheels provided by the build script, but a two-stage
  build keeps image sizes in line with what we had with the package-based
  approach, which is appropriate for an image that gets distributed as
  widely as arvados/jobs.

* Synchronize everything on bookworm-slim.

Arvados-DCO-1.1-Signed-off-by: Brett Smith <brett.smith@curii.com>
13 files changed:
build/README
build/build-dev-docker-jobs-image.sh [deleted file]
build/build_docker_image.py [new file with mode: 0755]
build/docker/python-venv.Dockerfile [new file with mode: 0644]
build/run-build-docker-jobs-image.sh [deleted file]
docker/jobs/1078ECD7.key [deleted file]
docker/jobs/Dockerfile [deleted file]
docker/jobs/apt.arvados.org-dev.list [deleted file]
docker/jobs/apt.arvados.org-stable.list [deleted file]
docker/jobs/apt.arvados.org-testing.list [deleted file]
sdk/dev-jobs.dockerfile [deleted file]
tools/cluster-activity/cluster-activity.dockerfile [deleted file]
tools/cluster-activity/make_docker.sh [deleted file]