I want to use the Bazel build tool to create my artifacts on the pipelines. What would be the best way to install and use bazel in the pipelines so I can have cached builds? Has anyone ever got it to work?
For running and install Bazel, you can do so similar as in a normal Bash environment. You can also use a Docker image from DockerHub that already has Basel installed. There are currently no official Bazel images, so you will need a community created one.
Documentation on configuring Docker images: https://confluence.atlassian.com/bitbucket/use-docker-images-as-build-environments-792298897.html
For caching, you configure specific directories to be cached. So in this case, you can use cache directories from Bazel.
Bazel provides some documentation on default caches here: https://docs.bazel.build/versions/master/output_directories.html
Pipelines Cache documentation can be found here: https://confluence.atlassian.com/bitbucket/caching-dependencies-895552876.html
I got bazel to work in a pipeline and reuse the cached arifacts. Caching the default ~/.cache/bazel directory didn't work for me (complained about corrupt installation on repeated builds), but using --disk_cache flag did. Something like the following:
- bazel test --disk_cache=~/.cache/my-bazel //...
Hi everyone, The Cloud team recently announced 12 new DevOps features that help developers ship better code, faster ! While we’re all excited about the new improvements to Bitbucket ...
Connect with like-minded Atlassian users at free events near you!Find an event
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no Community Events near you at the moment.Host an event
You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events