Planet Puppet

Your source of Puppet technical information

(Even More) Must-See Talks at PuppetConf 2014

molly, 1 day, 6 hours | Source: Puppet Labs

In a second roundup, Puppet Labs covers PuppetConf talks from James Turnbull, John Jawed, and Phil Zimmerman.

[ Read More ]

puppet-lint 1.0.0

Anonymous, 1 day, 22 hours | Source: Tim Sharpe

It's been a long time coming but I'm happy to announce the release of puppet-lint 1.0.0!

Along with a bunch of bugfixes and a rewrite of most of the code, there's some (hopefully) exciting new features in this release.

Automatic fixing of errors

Previewed in the 0.4.0 pre-release, simple problems can now be automatically fixed by puppet-lint (some problems require complex refactoring and so puppet-lint won't attempt anything on your behalf).

In 1.0.0, problems detected by the following checks can be automatically fixed by running puppet-lint with --fix:

  • slash_comments
  • star_comments ...

[ Read More ]

2014 State of DevOps Report: Statistics Class Edition

Nicole Forsgren Velasquez, 2 days, 2 hours | Source: Puppet Labs

In our last post, Improving the DevOps Survey: How and Why we shared the improvements we made to the design of the 2013 DevOps Survey. Our goal was ambitious: to provide an academically rigorous analysis of IT performance and DevOps practices, and how they relate to and predict organizational performance. In this post, we’ll dive deeper into the statistical methods we used to analyze this dataset, thanks to the improvements we made to the survey design.

[ Read More ]

#WomenInTech: Nicole Forsgren Velasquez of Utah State University

michelle, 2 days, 3 hours | Source: Puppet Labs

Nicole Forsgren Velasquez is a professor of management information systems (MIS) and accounting at the Jon M. Huntsman School of Business at Utah State University, as well as an IT researcher and consultant.

[ Read More ]

How Server Density uses Puppet Enterprise: Infrastructure, Config, Failover, Deploys

David Mytton, 2 days, 6 hours | Source: Puppet Labs

Puppet Enterprise supports Server Density's software in four distinct ways: infrastructure, config management, failover and deploys.

[ Read More ]

Hybrid management of FreeIPA types with Puppet

jamesjustjames, 3 weeks, 6 days | Source: The Technical Blog of James

(Note: this hybrid management technique is being demonstrated in the puppet-ipa module for FreeIPA, but the idea could be used for other modules and scenarios too. See below for some use cases…)

The error message that puppet hackers are probably most familiar is:

Error: Duplicate declaration: Thing[/foo/bar] is already declared in file /tmp/baz.pp:2; 
cannot redeclare at /tmp/baz.pp:4 on node

Typically this means that there is either a bug in your code, or someone has defined something more than once. As annoying as this might be, a compile error happens ...

[ Read More ]

Learning Puppet at the Puppet Pizza Place part 2

Anonymous, 1 month, 3 weeks | Source: People & Software

#Learning Puppet at the Puppet Pizza Place In this set of blog posts, I will teach you the base concepts of the [puppet DSL]( Most of the time Puppet is taught within the context of IT configuration management. I've chosen not to do so. I've chosen baking pizza's as the learning environment. It helps less technical people, like IT managers, for example, to get the concepts of Puppet. Checkout part 1 of the series [here](/2014/06/26/pietros-puppet-pizza-place-1/)) ## More pizza's.... Last time Pietro experimentented with Miss Piggy the pizaa backing robot ...

[ Read More ]

Extending Puppet

Anonymous, 1 month, 3 weeks | Source: Example 42

Last November I was contacted by Llewellyn Rozario, Acquisition Editor from Packt Publishing, asking me to write a book about Puppet.

That has been an unexpected and welcomed surprise, I’ve never written a book and hardly considered the opportunity to write one, but the idea seemed too much appealing to be dismissed.

The editor requested a book about how to extend Puppet functionalities with Ruby code, but in my own opinion there where some more interesting topics to talk about.

I proposed a completely revised table of contents and a different title.

I wanted to write about all the ...

[ Read More ]

Learning Puppet at the Puppet Pizza Place

Anonymous, 1 month, 3 weeks | Source: People & Software

#Learning Puppet at the Puppet Pizza Place In this set of blog posts, I will teach you the base concepts of the [puppet DSL]( Most of the time Puppet is taught within the context of IT configuration management. I've chosen not to do so. I've chosen baking pizza's as the learning environment. It helps less technical people, like IT managers, for example, to get the concepts of Puppet. ## Pietro's Puppet Pizza Place Pietro was worn out. He'd had a very busy day at his pizza place. Business was going well. Too ...

[ Read More ]

Rethinking modules - Part 2

Anonymous, 1 month, 4 weeks | Source: Example 42

In the first part of this blog series I expressed my opinions about these points:

  • The general reusability features a component module should have
  • The difference between component and higher abstraction modules
  • What are the challenges we have to face when we want to make reusable higher abstraction modules

I also underlined two fundamental issues that I think are still open in the Puppet modules ecosystem:

  • Patterns to extend reusability of higher abstraction layer modules
  • Standardization in the component application modules

Some preliminary exploration on the first topic has been expressed in Part 1. There’s much more to do ...

[ Read More ]

Tackling Windows with Puppet!!

Choon Ming Goh, 2 months | Source: OlinData

And I'm back!! It has been a long 3 months for me. For those who is not aware, I've been in the UAE working on-site for a client project. It is a very challenging project for a *nix Systems Administrator like me because the project was to automate a large number of Windows applications for a client. Windows! The first thing that came into my mind was the horror of using Windows but at the same time I'm rather excited because it is an uncharted domain for both me and OlinData as we've never work with ...

[ Read More ]

Optionally Typed Parameters

Henrik Lindberg (, 2 months | Source: Puppet on the Edge

Optionally Typed Parameters

And now, the latest entry in the series about the new Puppet Type System introduces the capability to optionally type the parameters of defines, classes, lambdas and EPP template parameters.

There are also some new abilities and changes to the type system that I will cover in this post.

Optionally Typed Parameters

Writing high quality puppet code involves judicious use of type checking of given arguments. This is especially important when writing modules that are consumed by others. Anyone having written a serious module knows that it is a chore to not only deal with all of ...

[ Read More ]

The Puppet Type System Blog Posts

Henrik Lindberg (, 2 months | Source: Puppet on the Edge

The Puppet Type System

In Puppet 3.5's future parser there is a new type system that makes it much easier to write validation logic for parameters (and much more). I have written a series of blog posts about the new type system - and this post is just an index to the series.

It works best if they are read in the order they were published:

[ Read More ]

EC2 provisioning using Foreman

Ohad Levy (, 2 months | Source: The Foreman: Blogs

One of foreman goals, is to provide a simple and familiar process to provision systems, regardless of where they are located.

We've now added the ability to provision systems in EC2, alongside with the existing virtualization providers such as RHEVM, libvirt, VMWare etc.

In this blog, I'll try to describe step by step what is required in order to provision a new instance in EC2.


  • You should be using a recent version of foreman, either directly from git, or using the nightly, see for git instruction, or use the debian, redhat or fedora nightly packages.
  • Have a ...

[ Read More ]

Getting foreman search results into your Puppet manifest

Ohad Levy (, 2 months | Source: The Foreman: Blogs

Lets say you want to know all of the hosts your monitoring host need to monitor, or maybe, the hosts to which your database needs to allow access to, traditionally, the solution to this problem was using Puppet storeconfigs.

In this blog post, I mentioned how you could utilize foreman search language to get customized results.

While storeconfigs is a great solution, and if it works for you, by all means, please do keep using it, but in this post I would like to show you how to use Foreman to query for similar data + foreman data as well.

Lets ...

[ Read More ]

Securely managing secrets for FreeIPA with Puppet

jamesjustjames, 2 months, 2 weeks | Source: The Technical Blog of James

Configuration management is an essential part of securing your infrastructure because it can make sure that it is set up correctly. It is essential that configuration management only enhance security, and not weaken it. Unfortunately, the status-quo of secret management in puppet is pretty poor.

In the worst (and most common) case, plain text passwords are found in manifests. If the module author tried harder, sometimes these password strings are pre-hashed (and sometimes salted) and fed directly into the consumer. (This isn’t always possible without modifying the software you’re managing.)

On better days, these strings are kept separate ...

[ Read More ]

Jenkins, Puppet, Graphite, Logstash and YOU

Kris Buytaert, 2 months, 2 weeks | Source: Everything is a Freaking Puppet problem

This is a repost of an article I wrote for the Acquia Blog some time ago.

As mentioned before, devops can be summarized by talking about culture, automation, monitoring metrics and sharing. Although devops is not about tooling, there are a number of open source tools out there that will be able to help you achieve your goals. Some of those tools will also enable better communication between your development and operations teams.

When we talk about Continuous Integration and Continuous Deployment we need a number of tools to help us there. We need to be able to build reproducible ...

[ Read More ]

Hiera data in modules and OS independent puppet

jamesjustjames, 2 months, 2 weeks | Source: The Technical Blog of James

Earlier this year, R.I.Pienaar released his brilliant data in modules hack, a few months ago, I got the chance to start implementing it in Puppet-Gluster, and today I have found the time to blog about it.

What is it?

R.I.’s hack lets you store hiera data inside a puppet module. This can have many uses including letting you throw out the nested mess that is commonly params.pp, and replace it with something file based that is elegant and hierarchical. For my use case, I’m using it to build OS independent puppet modules, without storing ...

[ Read More ]

Rethinking modules - Part 1

Anonymous, 2 months, 3 weeks | Source: Example 42

I’m somehow obsessed by Puppet modules, it must be a rare syndrome, and I hope self awareness is the first step towards its cure.

I’ve passed years developing modules, trying to find ways to make them useful, usable and reusable. Most of the times I wrote them while working on specific Puppet projects, trying to figure out how they could be used in different circumstances.

I’ve redefined my opinions on how to design them over time, following the evolution of Puppet, the best practices of the moment, the feedback I received from other users and my own ...

[ Read More ]

puppet snmp module 3.1.0

Michael Arnold, 2 months, 3 weeks | Source: The Razor's Edge

Today, I have released a minor update to my Puppet module for Net-SNMP to the Puppet Forge. Included are some long outstanding fixes from community members: Add the missing service class parameter (Clint Miller) Support for custom VACM com2sec and group mappings (Steve Maddison) Support for FreeBSD (Hunter Satterwhite) Let me know if […]

[ Read More ]