Automating our Software Release Process Internally at CloudBees

Written by: Drew Piland

4 min read

We are often asked if CloudBees uses our own software internally. The answer is a resounding YES! This blog recaps our DevOps World 2022 session, where we highlighted four ways CD/RO is used internally.

Before diving in, let’s provide some context into what CloudBees CD/RO helps organizations achieve.

CloudBees CD/RO is a platform designed to optimize your software development lifecycle. Automating deployment pipelines enables faster time to market without sacrificing security. Our robust set of integrations empowers developer tool choice while extracting contextual analytics. As a result, you can connect software delivery to business outcomes. 

Build and Release Orchestration

CloudBees CD/RO is used to build and release our own software. It’s important to note that this process can vary for all organizations, and thus, our platform provides the flexibility needed to tailor CD/RO for their own requirements.

Our first video examines:

  • How all release activities are orchestrated through a release pipeline spanning seven stages.  By showing these activities in a Kanban view, teams can view the release status and workflow in real time. 

  • How our Deploy stage differs from most in that releases into production occur during the middle of a release.  Upon completion, an automated pull request is sent to our documentation repository to create release docs.  

  • How entry and exit gates are utilized to ensure release readiness.  These gates ensure a consistent process of delivering high-quality software, while also removing manual handoffs.  

  • How traceability across all objects enables end-to-end visibility into the entire release pipeline. As a result, the exact status of a release is always known.

Parallel Testing

CloudBees CD/RO uses parallel testing to help release high-quality features faster.  This parallelization has allowed us to go from quarterly to monthly releases. 

This video examines:

  • How we define pipelines within CloudBees CD/RO. For example, each task is a pipeline with sub-pipelines. These sub-pipelines can represent 1000s of different operations.

  • The impact of running tests in parallel. We estimate that running all of our tests back-to-back would take 91 hours, whereas running in parallel reduces this to 3 hours. As a result, we can catch bugs quicker, release features faster, and provide breathability in our testing cycles to more consistently meet deadlines. 

Thus, not only does running in parallel help CloudBees release features faster, but it also ensures higher-quality software for all of our customers.

Plugin Release Process

CloudBees CD/RO is a highly extensible platform, which is critical in today’s DevOps landscape. As the number of point solutions continues to rise, managing this complexity becomes more challenging. When evaluating platforms, customers should seek providers who can bring together their entire tool stack into a singular view.  This helps to correlate data across disparate tools while promoting developer choice in the tools they use. 

Successfully managing this requires plugins to third-party solutions which are constantly maintained.  In total, CloudBees CD/RO supports over 100 plugins designed. To deliver a high-quality experience, we must provide a consistent plugin release process.  

This video examines:

  • How we avoid the bookkeeping effort of managing Jira. 

  • How we leverage dynamic environments to speed up our processes by reusing components. 

  • How our release pipeline examines existing releases to ensure all plugins are maintained and up to date.

Continuous Security

Security is one aspect of software development that is never done.  The best anyone can aim for is to address all known security vulnerabilities at any given time. To secure the software delivery lifecycle, it’s critical to ensure visibility, traceability, and compliance. 

Highlights of this video include:

  • How we are constantly evolving and improving our pipeline through security testing.

  • How we submit container images to Iron Bank.

  • How our approach helps to detect security vulnerabilities before they reach our customers. 

Summary

These four use cases exemplify how CloudBees CD/RO can help drive efficiencies. CD/RO is architected to  provide flexibility and scalability to meet each customer’s unique requirements. We hope these examples inspired more possible uses for CloudBees CD/RO in your organization.

To watch this DevOps World session in its entirety, click here. For more on-demand DevOps World sessions, visit devopsworld.com. Stay up to date with DevOps World Tour 2023.

Stay up-to-date with the latest insights

Sign up today for the CloudBees newsletter and get our latest and greatest how-to’s and developer insights, product updates and company news!