Skip to content

Conversation

@CaerusKaru
Copy link

Currently, Buildbarn repos publish the artifacts from
cross-compiled builds of the various ecosystem binaries. However,
this leaves the user to manage pulling those artifacts and
distributing/consuming them in their respective environments. For
customers leveraging Kubernetes or other containerized settings,
this creates a greater burden than Linux consumers.

In a previous commit, the image handling was moved to rules_img,
however rules_img does not allow for the necessary manifest
layering to include a Windows image (with a distinct base layer).
Therefore, we add an additional macro that reverts back to the
original rules_oci publish stream, until rules_img can be updated
to support that behavior. For images that do not benefit from a
Windows build-out (e.g. the non-RBE images), the new path can
still be safely utilized.

Currently, Buildbarn repos publish the artifacts from
cross-compiled builds of the various ecosystem binaries. However,
this leaves the user to manage pulling those artifacts and
distributing/consuming them in their respective environments. For
customers leveraging Kubernetes or other containerized settings,
this creates a greater burden than Linux consumers.

In a previous commit, the image handling was moved to rules_img,
however rules_img does not allow for the necessary manifest
layering to include a Windows image (with a distinct base layer).
Therefore, we add an additional macro that reverts back to the
original rules_oci publish stream, until rules_img can be updated
to support that behavior. For images that do not benefit from a
Windows build-out (e.g. the non-RBE images), the new path can
still be safely utilized.
@aspect-workflows
Copy link

aspect-workflows bot commented Jan 29, 2026

Test

All tests were cache hits

29 tests (100.0%) were fully cached saving 6s.

@EdSchouten
Copy link
Member

In a previous commit, the image handling was moved to rules_img, however rules_img does not allow for the necessary manifest layering to include a Windows image (with a distinct base layer).

Can't we fix rules_img to support this?

@CaerusKaru
Copy link
Author

Can't we fix rules_img to support this?

Of course we can, but I don't maintain that library, nor do I have the time to manage such a fix. What I do know is that rules_oci works for this case, and the way I've structured this commit, a) most images will continue to use it; and b) once it is patched, it would be trivial to move the images we do apply this to back to it.

@EdSchouten
Copy link
Member

@malt3 Would you happen to have any input on this matter?

@malt3
Copy link
Contributor

malt3 commented Jan 29, 2026

I believe we do support Windows, but there may be issues when combining separate base images on different platforms (where those do not use a common image index).
Happy to add support for this soon-ish, but I don't want to block any important features from being added to Buildbarn.

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.

3 participants