buildbuddy-io / buildbuddy

BuildBuddy is an open source Bazel build event viewer, result store, remote cache, and remote build execution platform.
https://buildbuddy.io
Other
575 stars 87 forks source link

Support for testing OCI images #4732

Closed ipv1337 closed 12 months ago

ipv1337 commented 12 months ago

Is your feature request related to a problem? Please describe. I am trying to do a proof of concept for my company using BuildBuddy, but I'm running into issues related to a build step which tests my OCI images. Without that step BuildBuddy works fine otherwise. This is likely do to the remote workers running inside a container without access to a docker daemon if I am not mistaken. It's apparent from this error message I get which does not occur on tests ran locally.

exec ${PAGER:-/usr/bin/less} "$0" || exit 1
Executing tests from //projects/devops_fastapi_app:container_test
-----------------------------------------------------------------------------
time="2023-09-08T05:24:37Z" level=fatal msg="error loading oci layout into daemon: error loading image: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?, %!s(MISSING)"

Describe the solution you'd like I tried Googling and looking for a documented solution on your site, but it seems my problem is not very common or I need to tinker with custom images for remote builds. I'd like to know the best path forward in this case since I do want to test and validate that my OCI images are properly built before pushing it into our registry.

Describe alternatives you've considered Other options I can think of would be to implement our own build farm, but I'd like to avoid doing so especially for a PoC.

sluongng commented 12 months ago

Hey James, you could get a docker daemon for your test using BuildBuddy RBE. It's a very common use case among our customers. 🤗

You could find the setup instructions in this doc https://www.buildbuddy.io/docs/rbe-microvms.

siggisim commented 12 months ago

Closing this since it's supported using firecracker.