BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

Jenkins CI Integrates With Chef and Puppet to Provide Full Traceability of Deployments

| by Matthias Marschall on May 26, 2014. Estimated reading time: 1 minute |

Using the Deployment Notification plugin for Jenkins developed by CloudBees and either the additional Chef Software plugin or Puppet Labs plugin, engineers can now trace every file installed by Chef or Puppet within Jenkins CI. Jenkins will map each file installed by Chef or Puppet using its fingerprinting mechanism and show exactly to which environments that file has been deployed to. The plugin doesn't require Jenkins to run the external software but it offers a way for Chef or Puppet to deliver deployment reports via its API.

The Deployment Notification plugin, the Chef Software plugin and the Puppet Labs plugin are the product of a cooperation between CloudBees, Chef Software and Puppet Labs. Kohsuke Kawaguchi, chief technology officer, CloudBees, and founder of the Jenkins CI community explained that "a need for automation has been driving our industry and traceability is a key enabler of automation." Adam Jacobs, chief technology officer (CTO), Chef Software said: "Giving users of both Jenkins and Chef Software this added capability will help them do a better job developing applications and making updates to them quickly, efficiently and error-free," and Mitch Sonies, vice president, corporate and business development, Puppet Labs said that the integration of Puppet and Jenkins gives developers greater visibility so they can deliver on the promise of continuous delivery. 

Without the Deployment Notification plugin Jenkins was not able to trace binaries through code to deployment. If binaries were picked up by Chef or Puppet and deployed by them to an environment, Jenkins missed that critical piece of information. Engineers where not able to find out where exactly the binary had been used. The Deployment Notification plugin changes that. It can receive MD5 checksums of deployed files from Chef and Puppet and map them to its internal fingerprints of known binaries. Jenkins can use this mechanism to show the environments, hosts, and paths where the binaries have been deployed to by Chef or Puppet giving engineers full visibility into the complete deployment pipeline.

The Chef and Puppet plugins trace the use of the File resource and report each usage back to Jenkins. Engineers need to install the Deployment Notification plugin and either the Chef Software plugin or the Puppet Labs plugin according to their environment. The Deployment Notification plugin only provides the generic functionality to track deployments in Jenkins - the tool specific implementation resides in the vendor specific plugins.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT