Skip to content

CI: Use BlazingMQ broker docker image#83

Open
pniedzielski wants to merge 2 commits intobloomberg:mainfrom
pniedzielski:ci/docker
Open

CI: Use BlazingMQ broker docker image#83
pniedzielski wants to merge 2 commits intobloomberg:mainfrom
pniedzielski:ci/docker

Conversation

@pniedzielski
Copy link
Copy Markdown
Collaborator

@pniedzielski pniedzielski commented Apr 16, 2026

Now that we publish a BlazingMQ broker docker image, we don't need to compile the whole broker in CI. This PR changes our CI to only build libbmq, and pull the broker from GHCR.

@pniedzielski pniedzielski force-pushed the ci/docker branch 8 times, most recently from ed3c2b1 to 0d0eaf2 Compare April 16, 2026 20:43
@pniedzielski pniedzielski requested review from hallfox April 16, 2026 21:12
@pniedzielski pniedzielski assigned hallfox and unassigned hallfox Apr 16, 2026
@pniedzielski pniedzielski marked this pull request as ready for review April 16, 2026 21:12
@pniedzielski pniedzielski requested a review from a team as a code owner April 16, 2026 21:12
@pniedzielski
Copy link
Copy Markdown
Collaborator Author

Once we get libbmq vcpkg'd, we won't need to build BDE, NTF, or libbmq, except to build wheels.

This patch changes the test CI workflow to pull the latest BlazingMQ
Docker image for running tests with, rather than running the broker
that we built from scratch.  There’s a few different concerns here
when making this change:

  - Pulling the Docker images requires us to log in to GHCR.  To avoid
    accidentally (or maliciously) pushing a Docker image while we’re
    logged in, we give up the write permissions from our login token.

  - Rather than broker logs being interleaved with test failures, we
    have to pull them ourselves from the Docker container.

  - Because we’re running exactly the broker from GHCR, and we print
    which version we’re running, we can pull that exact Docker image
    locally rather than uploading the broker binary as an artifact.

  - We need to update some of our test broker configuration to work
    nicely in the Docker image, which mostly involves changing some
    file paths.

Signed-off-by: Patrick M. Niedzielski <pniedzielski@bloomberg.net>
This patch removes bmqbrkr from our CI build, since we use the bmqbrkr
docker image now.  We are safe to do this even though these scripts
are used when building wheels as well, since wheel builds do not need
the broker either.  Additionally, this patch removes mwc from the
install targets, since it no longer exists.

Signed-off-by: Patrick M. Niedzielski <pniedzielski@bloomberg.net>
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.

2 participants