O'Reilly eBook

Continuous Delivery in the Wild

In this eBook, Pete Hodgson, breaks down the fundamentals of Continuous Delivery. Based on interviews with engineering teams of all shapes, sizes, and levels of sophistication, he shares how Continuous Delivery works in the real DevOps world. Download this free eBook today!

Learn Why Agile Businesses Use Split

Deliver software features that matter, fast!

How Real DevOps Engineering Orgs Do It

You’ve probably heard plenty about CI/CD pipelines. But how do engineering DevOps teams in top companies with GitOps operational frameworks put it in practice? Should you have a staging environment? Do trunk-based development? Use pull requests / PR review time? Rely on a Jenkins pipeline to wrap your code in feature flags? Download this eBook to learn how the experts do it!

Download eBook

Download this eBook to learn:

  • Why you should use fewer continuous development environments
  • How branching and continuous integration (CI) make CD possible
  • Why even advanced orgs sometimes violate trunk-based development
  • Deployment strategies such as single-piece flow and the release bus
  • Actions to implement or improve short development cycles within your own organization
  • Improve PR pickup time and cycle time to deploy time 
  • And more! Download the free eBook today
Download eBook

Trunk-based development

Trunk-based development fosters collaboration and rapid iteration, aligning seamlessly with feature management practices and feature flag rollout strategies. 

Download eBook

Collaboration and Rapid Iteration

By continuously integrating code changes into the main branch, teams can quickly incorporate new features while leveraging feature toggles to manage their release.

Enhanced by Feature Management Tools

Providing visibility into feature availability and performance, empowering teams to make informed decisions and iterate on features iteratively.

Smoother Feature Flag Rollout

Trunk-based development complements feature management by promoting frequent integration of code changes into the main branch.

Two Modes of Continuous Delivery

Download eBook

To shorten development cycles and coding time, one mode is Branch-Based Continuous Delivery, where a team uses short-lived feature branches as their unit of change and manages code review with pull requests. The other mode is Trunk-Based Continuous Delivery, where teams practice Trunk-Based delivery, work directly on master, and do ad hoc code review. 

  • Trunk-Based Development teams have a more rapid deployment frequency than Branch-Based teams with multiple new deployments per hour for Trunk-Based versus once or twice a day for Branch-Based.
  • There is an even starker distinction in the typical shorter developement cycles for a production change between these two modes, with changes being in progress for much longer for Branch-Based teams. This is partly because the unit of change for Branch-Based teams is much larger, often an entire feature, rather than an individual commit. In addition, Trunk-Based teams are typically doing code review out-of-band, rather than blocking a change from going out.
  • Trunk-Based Development teams also tend to rely much less on pre-production environments for quality checks, instead of testing in production. This is because faster change makes the sort of manual validation that is done in pre-production environments a lot less feasible or valuable.
  • Most of the larger engineering organizations had teams in both of these modes. Generally the teams working with larger, older systems use Branch-Based Continuous Delivery while teams working on new, smaller systems operate using Trunk-Based Continuous Delivery.

Create Impact With Everything You Build

We’re excited to accompany you on your journey as you build faster, release safer, and launch impactful products.

O'Reilly eBook

Continuous Delivery in the Wild

What is Continuous Delivery: Continuous Delivery is a set of technical practices that allow delivery teams to radically accelerate the pace at which they deliver value to their users.

The Path to Production: Organizations do vary in terms of architecture, industry, and organization size, but there is a consistency in how each business implements Continuous Delivery.

Continuous Delivery Versus Continuous Deployment: Organizations surveyed avoid full-on Continuous Deployment, but institute a manual gate, requiring an engineer to promote changes into production.

Download the eBook

Two Modes of Continuous Delivery

Download eBook

To shorten development cycles and coding time, one mode is Branch-Based Continuous Delivery, where a team uses short-lived feature branches as their unit of change and manages code review with pull requests. The other mode is Trunk-Based Continuous Delivery, where teams practice Trunk-Based delivery, work directly on master, and do ad hoc code review. 

  • Trunk-Based Development teams have a more rapid deployment frequency than Branch-Based teams with multiple new deployments per hour for Trunk-Based versus once or twice a day for Branch-Based.
  • There is an even starker distinction in the typical shorter developement cycles for a production change between these two modes, with changes being in progress for much longer for Branch-Based teams. This is partly because the unit of change for Branch-Based teams is much larger, often an entire feature, rather than an individual commit. In addition, Trunk-Based teams are typically doing code review out-of-band, rather than blocking a change from going out.
  • Trunk-Based Development teams also tend to rely much less on pre-production environments for quality checks, instead of testing in production. This is because faster change makes the sort of manual validation that is done in pre-production environments a lot less feasible or valuable.
  • Most of the larger engineering organizations had teams in both of these modes. Generally the teams working with larger, older systems use Branch-Based Continuous Delivery while teams working on new, smaller systems operate using Trunk-Based Continuous Delivery.

Download this eBook to learn:

  • Why you should use fewer continuous development environments
  • How branching and continuous integration (CI) make CD possible
  • Why even advanced orgs sometimes violate trunk-based development
  • Deployment strategies such as single-piece flow and the release bus
  • Actions to implement or improve short development cycles within your own organization
  • Improve PR pickup time and cycle time to deploy time 
  • And more! Download the free eBook today
Download eBook

Trunk-based development

Trunk-based development fosters collaboration and rapid iteration, aligning seamlessly with feature management practices and feature flag rollout strategies. 

Download eBook

Collaboration and Rapid Iteration

By continuously integrating code changes into the main branch, teams can quickly incorporate new features while leveraging feature toggles to manage their release.

Enhanced by Feature Management Tools

Providing visibility into feature availability and performance, empowering teams to make informed decisions and iterate on features iteratively.

Smoother Feature Flag Rollout

Trunk-based development complements feature management by promoting frequent integration of code changes into the main branch.

Create Impact With Everything You Build

We’re excited to accompany you on your journey as you build faster, release safer, and launch impactful products.