Skip to main content

3 posts tagged with "team"

View All Tags

BuildBuddy v1.8.0 Release Notes

Siggi Simonarson

Siggi Simonarson

Co-founder @ BuildBuddy

We're excited to share that v1.8.0 of BuildBuddy is live on Cloud Hosted BuildBuddy, Enterprise, and Open Source via GitHub, Docker, and our Helm Charts!

Thanks to everyone using open source, cloud-hosted, and enterprise BuildBuddy. We've made lots of improvements in this release based on your feedback.

A special thank you to our new open-source contributor:

  • Ashley Davies who contributed several pull requests to our Helm charts in order to make them easier to use in clusters that already have an Nginx controller deployed.

And a warm welcome to our three new team members! 

  • Pari Parajuli who joins our engineering team as an intern who's currently studying at University of California, Berkeley.
  • Vadim Berezniker who joins our engineering team after 7 years at Google on the Google Cloud team. 
  • Zoey Greer who joins us as a software engineer from the Google Search team.

We're excited to continue growing BuildBuddy and fulfill our mission of making developers more productive!

Our focus for this release was on reliability, performance, improved documentation, and making BuildBuddy easier to release and monitor.

New in v1.8.0#

  • Read-only API keys - when using Bazel remote caching, teams often need to configure which machines have write access to the cache. While Bazel has some flags to control cache writes, using these can be error prone and insecure. BuildBuddy now makes this easy by introducing the ability to create both read-only and read+write api keys on your organization settings page. You can create as many API keys (and certificates) as you'd like and distribute them to your CI machines, workstations, and other endpoints.

  • Improved docs - we've completely revamped our documentation and added support for tables of contents, syntax highlighting, better navigation, dark mode (!!), interactive widgets, and an "Edit this page" button that links directly to the correct file in our GitHub docs directory for submitting pull requests. With these great new features, we'll be ramping up documentation on both new and existing BuildBuddy features to make the lives of BuildBuddy users easier.

  • Testing improvements - we've invested heavily in our testing infrastructure, adding new integration tests and test fixtures that make testing BuildBuddy's interactions with Bazel easier. This will lead to more stable releases and faster iteration cycles going forward.

  • Remote execution improvements - we've made more speed and reliability improvements to our remote build execution platform, including faster cache hit checking, faster auth checks, and better support for iOS builds.

  • Buildkite integration - invocations that are kicked off from Buildkite now link back to the Buildkite job that triggered them.

  • Grafana - our Helm charts make deploying BuildBuddy to Kubernetess cluster a breeze. One thing that's been tricky for many users has been accessing the Prometheus data that BuildBuddy exports in an easily digestible format. To fix this, we made it easy to deploy Grafana and Prometheus via our Helm charts with just a couple lines of configuration. It comes out of the box with a default dashboard that shows popular BuildBuddy metrics and can be easily extended to add more graphs.

  • More to come - we've been laying the groundwork for two major projects that will go live in the coming weeks to make building and testing your Bazel projects even faster.

That's it for this release. Stay tuned for more updates coming soon!

As always, we love your feedback - join our Slack channel or email us at hello@buildbuddy.io with any questions, comments, or thoughts.

Welcoming George Li, Head of Sales

Siggi Simonarson

Siggi Simonarson

Co-founder @ BuildBuddy

To fulfill our mission of bringing the world's best developer tools to every company, we're building a team that's ready to work with the world's best enterprises. That's why we're excited to share today that George Li is joining BuildBuddy to lead our enterprise sales efforts as our Head of Sales.

George joins us from Looker where he served as Head of APAC Sales Engineering. He joined Google Cloud through their acquisition of Looker in February, having helped the company grow to a $2.6B valuation.

We look forward to working alongside George to build the future of developer tools.

Welcome to BuildBuddy, George!

BuildBuddy v1.2.1 Release Notes

Siggi Simonarson

Siggi Simonarson

Co-founder @ BuildBuddy

Excited to share that v1.2.1 of BuildBuddy is live on both Cloud Hosted BuildBuddy and open source via Github and Docker!

Thanks to everyone that has tested open source and cloud-hosted BuildBuddy. We've made lots of improvements in this release based on your feedback.

A special welcome to our newest contributor and team member:

  • Brandon Duffany - Brandon is an ex-Googler and Cornell alumn who's worked as a software engineer on Google Assistant and Google Ads. He'll start off focused on surfacing better profiling and timing information to help users track down and fix slow builds!

Our focus for this release was on expanding access to BuildBuddy as well as improving scalability and performance. 

We're also excited to announce that we're expanding the BuildBuddy Cloud free tier. BuildBuddy Cloud is now free for teams of up to 3 engineers in addition to being free for individuals open source projects of any size.

New to Open Source BuildBuddy#

  • Official BuildBuddy Helm charts - thanks to a request from Nathan Leung we've created official BuildBuddy Helm Charts that are available for both Open Source and Enterprise deployments. Helm enables you to deploy BuildBuddy to a Kubernetes cluster with a single command, and makes configuration a breeze. The charts can optionally take care of provisioning a MySQL instance, an Nginx ingress, and even Memcached.

  • Build metadata - a frequent request from users is the ability to associate a BuildBuddy invocation with a particular git commit and repo. To support this, we've added optional build metadata including repo URL, commit SHA, and CI role that can be passed up with your build. This metadata can be passed up using the --build_metadata flag, using a --workspace_status_command script, or using environment variables commonly set by CI providers like CircleCI, BuildKite, GitHub Actions, and others. More information on how to configure your metadata can be found in our build metadata guide.

  • GitHub commit status publishing - now that you can configure build metadata to associate invocations with a GitHub repo and commit, we've added the ability to publish commit statuses straight to GitHub when you've set your metadata role to CI. To enable this feature, simply click Link GitHub Account in your BuildBuddy profile dropdown (if you're using self hosted BuildBuddy, you'll need to create a Github OAuth app and add it to your config.yaml file).

BuildBuddy links directly on GitHub

  • Improved cache hit rate - we've made improvement to our Action Cache validation logic that should result in higher cache hit rates.

  • New guides - we've added new guides to our documentation, including our Authentication Guide, Build Metadata Guide, Remote Build Execution with Github Actions Guide, with more coming soon. We've also started collecting troubleshooting documentation for common errors including RBE Failures, and Slow Uploads. Contributions welcome!

  • Target information in timing tab - in Bazel 3.4.0, the experimental flag --experimental_profile_include_target_label was introduced which adds target information to profiling events. When this flag is enabled, this target information is now displayed in the BuildBuddy Timing tab.

New to Cloud & Enterprise BuildBuddy#

  • BuildBuddy Cloud is now free for teams of up to 3 - we want to make BuildBuddy available to every team - regardless of size. BuildBuddy has always been free for individuals and open source projects and today we're expanding this to teams of up to 3 engineers. As your team continues to grow, we have reasonably priced plans that scale from startups to the largest enterprises.

  • Distributed scheduler - the scheduler is a core component of any remote execution platform. In many cases, it is a single point of failure that turns an otherwise robust system into a fragile, stateful service that's hard to scale. In BuildBuddy 1.2.1, we rewrote our distributed Remote Build Execution scheduler from the ground up based on many learnings and best practices from state-of-the-art systems like Apache Spark. This enables BuildBuddy to scale to handle the largest workloads with no single point of failure, single digit millisecond queue wait times, and fault tolerance that enables execution on preemptible nodes. This allows for more cost effective high availability configurations, and allows you to deploy new BuildBuddy releases without a blip in ongoing executions.

  • Remote asset API  - in Bazel 3.0.0 the Remote Asset API was introduced along with the --experimental_remote_downloader flag. In this release, we've added basic support for this experimental API.

  • Organization configuration - we've added configuration options for on-prem installs that allow you to configure an organization's name and limit signups to emails from a specific domain. More information in the org config documentation.

  • Configurable anonymous access - we've added a configuration option that allows organizations with authentication configured to choose whether or not anonymous access should be enabled. Anonymous access is off by default when auth is configured. More information in the auth config documentation.

  • S3 cache support - BuildBuddy previously had support for using Amazon S3 as a backing store for build events. In this release, we've added Amazon S3 support for as a backing store for caching as well, with support for streaming, ContainsMulti, and more.

That's it for this release. Stay tuned for more updates coming soon!

As always, we love your feedback - join our Slack channel or email us at hello@buildbuddy.io with any questions, comments, or thoughts.