Skip to content
Molly Waggett edited this page Nov 20, 2019 · 18 revisions

This document attempts to capture the details of our branching strategy for Puppet Server. This information is up-to-date as of 2019-11-20.

Puppet Server Branches

Puppet Server has branches that align with Puppet Enterprise and Ruby Puppet.

  • master For 6.7.x (or greater) development (Ruby Puppet future releases >= 6.11.0)
  • 6.3.x For 6.3.x development (Puppet 6 platform, including Ruby Puppet 6.4.x+, Puppet Agent 6.4.x, PE 2019.1.x+)
  • 5.3.x For 5.3.x development (Puppet 5 platform, including Ruby Puppet 5.5.x+, Puppet Agent 5.5.x, PE 2018.1.x+)
  • 2.6.x For 2.6.x development (Ruby Puppet 4.10.x, Puppet Agent 1.10.x, PE 2016.4.x)

Master and 6.3.x Series

The master and 6.3.x series is compatible with the Puppet 6 platform.

5.3.x Series

The 5.3.x series is compatible with the Puppet 5 platform.

2.6.x Series

The 2.6.x release series is compatible with Puppet 4.10.x as part of Puppet Collection 1 (PC1). The 2.1.0 and later releases are compatible with Puppet 3.x for remote agents only, and only Puppet 4.x satisfies the package dependency between Puppet Server and Puppet.

"Normal" branching workflow

Under normal circumstances, bugfix releases will be based off of the matching branch; for instance the 5.3.10 release will be based off of the 5.3.x branch, and potential 2.6.x releases will be based off of the 2.6.x branch. PRs should only be targeted at version specific branches if they are intended to go out in a z/bugfix release, and all code merged into version specific branches should be merged up into the master branch at regular intervals.

Most PRs should normally be targeted at the master branch, which is where feature work will be going on for the next X/Y release.

Clone this wiki locally