Stories
Slash Boxes
Comments

SoylentNews is people

SoylentNews is powered by your submissions, so send in your scoop. Only 17 submissions in the queue.

Submission Preview

Link to Story

GitHub Open-Sources Tool to Track and Preview Puppet Changes

Accepted submission by -- OriginalOwner_ http://tinyurl.com/OriginalOwner at 2016-11-09 21:53:15
Software

from the better-tools dept.

InfoWorld reports [infoworld.com]

Puppet, the configuration management and automation tool for datacenters, forms a major portion of the infrastructure supporting code-hosting service GitHub.

GitHub has now open-sourced one of its key Puppet tools, a system for previewing the effects that changes in Puppet configurations will have across thousands of machines.

Octocatalog-diff [github.com] is a Ruby app that allows modifications to Puppet code to be previewed in detail. Thus, users can "ensure not only that it serves the intended purpose for the role at hand, but also to avoid causing unexpected side effects on other roles," as GitHub described in its blog post [githubengineering.com] about the software.

  - Bigger changes require better tools

GitHub had three big use cases for Puppet that demanded a unified tool like Octocatalog-diff: Testing deployments, automated testing of code, and catalog testing ("comparison of catalogs produced by two different Puppet versions or between two environments").

In each case, Octocatalog-diff makes sure major changes to Puppet roles across GitHub's environment can be deployed without breaking other Puppet rules.

Puppet could do this as well, but GitHub didn't want to have to grant access to the Puppet master to engineers who didn't really need it. To that end, Octocatalog-diff can run on its own, without access to the Puppet master.


Original Submission