Skip to content

BM-2493: Update dockerfile and ansible to use pre-built dockerfiles#1674

Draft
austinabell wants to merge 3 commits intomainfrom
austin/docker_prebuild_main
Draft

BM-2493: Update dockerfile and ansible to use pre-built dockerfiles#1674
austinabell wants to merge 3 commits intomainfrom
austin/docker_prebuild_main

Conversation

@austinabell
Copy link
Contributor

Backport of #1659 with the following additional changes:

  • Uses latest instead of latest 1.2
  • Add support for configuring these through ansible

TODO:

  • Switch release clusters to use release-1.2 branch instead of main: prover_version: "release-1.2" in inventory (not necessary if using all pre-built dockerfiles, can keep using main if we assume no compose breaking change compatibilities between the two, but I doubt this)
    • prover_image_version: "1.2" if we don't do this
  • prover_boundless_build: "all" in nightly inventory file
  • For any services that override the docker image, prover_boundless_build: "rest_api agent" replacing
  • Fix prover_boundless_build handling. Currently the justfile handles how BOUNDLESS_BUILD=".." is handled where it unsets the dockerfile reference and builds only the services mentioned. The current ansible setup just builds all (which might work, but docker compose can be finnicky.

Depending on which option taken, the ansible config can likely be cleaned up. Ideally BOUNDLESS_BUILD=".." is set to define which services are built from scratch, docker images can be overriden for those that are (in cases of CPU only docker images), and then for when using prebuilt docker images either the git branch used defines which is used or is specified through ansible config with the versioning.

The pattern will be that for `release-x` branches, we will constrain the
prebuilt docker images to use latest minor version, and then for main
when this gets backported, will switch that version to `latest`.
`latest` overriden for every new release, `release-x.x` updated whenever
new patch versions of that specific maj/min are published. We just need
to constrain that patch releases don't contain breaking changes with
this, otherwise we will need to specify speciifc patch versions on the
version used by default (not ideal).

Other:
- CI release action switched to gh because old was deprecated and broken
- Build pre-built docker images, switch default to use those images
- When specifying `BOUNDLESS_BUILD=...`, the binaries that are specified
are build from source, using pre-built native binaries no longer used by
default
@github-actions github-actions bot changed the title Update dockerfile and ansible to use pre-built dockerfiles BM-2493: Update dockerfile and ansible to use pre-built dockerfiles Feb 20, 2026
@linear
Copy link

linear bot commented Feb 20, 2026

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant