Writing tests is hard. Fixing them is harder. Join the webinar.
Develocity Support for the…
Bazel Build System
Develocity has extended its support to the Bazel community with the General Availability (GA) release of Develocity for Bazel. Develocity has joined the Bazel Products Partner program as a show of support and commitment to adding value to the Bazel community.
Develocity Strategic Support for Bazel
Gradle Inc. believes that the build system market is and will continue to be fragmented within and across language ecosystems and within most large corporations. This presented an opportunity to create a common build and test acceleration and analytics application for improving developer productivity called Develocity. Develocity is independent from any single build tool and provides the unifying technology-enabling platform for the practice of Developer Productivity Engineering (DPE).
In keeping with the Develocity strategy and vision to support all important build and test environments and language ecosystems over time, Develocity supports the Bazel build system in addition to Gradle, Maven, and sbt.
Develocity is a proud member of the Bazel Product Partners program. The Bazel team at Google describes the program’s members as organizations that build open source or paid tooling built on top of Bazel and aim to improve Bazel end user experience and accelerate developer productivity holistically.
Key Develocity Benefits for Bazel Users
You don’t need to choose between build tools to enjoy the benefits of DPE provided by Develocity. Develocity ensures that the choice between build tool support and DPE tools is decoupled so that you can use the best tool for the job. The key strategic benefits of leveraging Develocity in Bazel build systems include the ability to:
- Leverage the core benefits of DPE including robust support for build and test feedback-cycle acceleration; more efficient troubleshooting; improved toolchain reliability; observability of performance and failure trends locally and on CI; and better CI resource and cost management.
- Adopt a single end-to-end DPE solution for Bazel and other build tools to ensure that engineering managers and development teams across the organization can more easily procure, deploy, get training, and gain access to productivity solution benefits equally and at scale. This also ensures that the choice between build tool support and DPE tools are decoupled. For example, you don’t need to choose between adopting Bazel and migrating to the Gradle Build Tool to enjoy the benefits of DPE provided by Develocity; you can use the best tool for the job.
- Efficiently build and institutionalize a pervasive DPE culture and make it a competitive advantage in terms of attracting and retaining talent. Now you can democratize the investment and strategy to optimize the developer experience across build environments and language ecosystems. Our rallying cry is ‘No dev team left behind’.
Key Develocity Solution Capabilities for Bazel
Build Cache speeds up local and CI builds by allowing you to share and reuse unchanged build and test outputs across the team and ensures your build does not waste cycle time re-building components that are unaffected by new code changes. For developers, faster build and test cycles improve productivity and happiness since there is less idle time waiting for feedback. This also means developers are likely to build more often rather than pushing quality checks to CI where problems are more impactful and expensive to fix.For CI engineers, Build Cache helps optimize the speed of CI builds given compute resource and cost constraints. For cloud-hosted services (e.g. AWS deployments) with elastic usage-based pricing, the improvements you can achieve with Develocity CI Build Cache and resource profiling tools translate directly and proportionately into lower invoice amounts. For internal CI and DevOps teams, this means you can more easily handle the inevitable growth in build demand with existing resources and avoid the expense of adding capacity.Learn more
Troubleshooting broken builds is slow and frustrating for developers, with hours spent on support and reproducing problems. Build Scan for Bazel builds and tests gives developers deep data for every build, so they can quickly find the root cause and fix their own problems without re-running broken builds to reproduce problems or requiring the help of the build team. Asking for help and fixing issues is as easy as sharing a link, so build teams can get back to working on features.Develocity leverages Bazel’s native build event service and remote cache functionality, which allows Bazel builds to publish a Build Scan to Develocity without any significant build modifications. A Bazel Build Scan provides shareable access to the console logging, build performance profile, action cache hit rate, requested target results and failure diagnostics, effective build configuration options, build environment and detailed individual test results.Learn more
Unreliable Bazel builds cause downtime, waste compute resources, and are a massive distraction. They also negatively impact the quality of code shipped. Builds become unreliable when problems are too expensive to find, too hard to reproduce for root cause analysis, and when fixes cannot be correctly prioritized because their relative impact is unknown. With the Develocity dashboard for build failures, you can leverage analytics to proactively find unreliable Bazel builds, learn how many people and environments are affected by the problem, share information about them, and understand the root cause efficiently.Failure analytics also make it easy to observe failure trends and systemic problems that can signal the need for proactive action before issues turn into crises. Support for Develocity Test Failure Analytics (for flaky test management and other avoidable failures) will follow.Learn more