Planet Puppet

Your source of Puppet technical information

Ravello and SimSpace: Security in the cloud

rnelson0, 1 day, 5 hours | Source: RNELSON0

Ravello and SimSpace’s On-Demand Cyber Ranges Last year, many of us were introduced to Ravello Systems and their nested virtualization product. Their hypervisor, HVX, and their network and storage overlay technologies allow you to run any VM from your enterprise on a cloud – specifically Amazon AWS and Google Compute Engine. You can sign up […]

[ Read More ]

Puppet Enterprise Console Password Reset

Suzie Baunsgard, 1 day, 10 hours | Source: Puppet Labs

Learn to do a PE Console password reset with Support Documentation Intern Suzie Baunsgard.

[ Read More ]

A Summer in Customer Success

Cody Melcher, 3 days, 10 hours | Source: Puppet Labs

Cody Melcher, an intern in Customer Success, details his experiences and growth working at Puppet Labs this summer.

[ Read More ]

The State of the Software Supply Chain in 2015

Derek Weeks, 4 days, 10 hours | Source: Puppet Labs

Billions of open source components go into modern applications, creating security vulnerabilities. How to monitor and review? You need automation.

[ Read More ]

Mike Kavis on the State of DevOps

Aliza Earnshaw, 1 week | Source: Puppet Labs

Mike Kavis talks about the 2015 State of DevOps Report in light of his own experience in Fortune 500 companies.

[ Read More ]

Heredoc is Here !

Henrik Lindberg (, 1 week, 2 days | Source: Puppet on the Edge

Trying out the examples

Starting with Puppet 3.5.0 with --parser future turned on you can now use Puppet Heredoc; basically a way to write strings of text without having to escape/quote special characters. The primary motivation for adding heredoc support to the Puppet Programming Language is to help avoiding the problem known as "backslash hell", where every backslash character in a string may require, two, four or more backslashes to pass an actual backslash through multiple layers of string special character interpretation.

Before talking about the features of Puppet Heredoc, lets look at an example:

 $a = @(END ...

[ Read More ]

aptituz/ssh 2.3.2 published

Patrick Schönfeld, 1 week, 2 days | Source: just-imho: tech

I’ve just uploaded an update version of  my puppet ssh module to the forge.

The module aims at being a generic module to manage of ssh server and clients, including key generation and known_hosts management. It provides a mechanism to generate and deploy ssh keys without the need of storeconfig or PuppetDB but a server-side cache instead. This is neat, if you want to remain ssh keys during a reprovisioning of a host.


The update is mostly to push out some patches I’ve received from contributors via pull requests in the last few months. It adds:

  • Support ...

[ Read More ]

Thanking Oh-My-Vagrant contributors for version 1.0.0

jamesjustjames, 1 week, 3 days | Source: The Technical Blog of James

The Oh-My-Vagrant project became public about one year ago and at the time it was more of a fancy template than a robust project, but 188 commits (and counting) later, it has gotten surprisingly useful and mature.

james@computer:~/code/oh-my-vagrant$ git rev-list HEAD --count
james@computer:~/code/oh-my-vagrant$ git log $(git log --pretty=format:%H|tail -1)
commit 4faa6c89cce01c62130ef5a6d5fa0fff833da371
Author: James Shubin <>
Date:   Thu Aug 28 01:08:03 2014 -0400

    Initial commit of vagrant-puppet-docker-template...
    This is an attempt to prototype a default environment for
    vagrant+puppet+docker hacking. More improvements are needed for it ...

[ Read More ]

Vagrant and Oh-My-Vagrant on RHEL7

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

My employer keeps paying me, which I appreciate, so it’s good to spend some time to make sure RHEL7 customers get a great developer experience! So here’s how to make vagrant, vagrant-libvirt and Oh-My-Vagrant work on RHEL 7+. The same steps should work for CentOS 7+.

I’ll first paste the commands you need to run, and then I’ll explain what’s happening for those that are interested:

# run these commands, and then get hacking!
# this requires the rhel-7-server-optional-rpms repo enabled
sudo subscription-manager repos --enable rhel-7-server-optional-rpms
sudo yum install -y gcc ruby-devel libvirt-devel libvirt qemu-kvm
sudo systemctl ...

[ Read More ]

Making an empty RPM

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

I am definitely not an RPM expert, in fact, I’m afraid of it, but with recent tools such as COPR, and my glorious Makefile, some aspects of it have become palatable. This post will be about a recent journey I had building the most useless RPM ever.

A video of what my work building this RPM looked like.

A video of my journey building this RPM.

Because of reasons, I wanted to satisfy an RPM dependency for a package that I wanted to install without rebuilding that RPM. As a result, I wanted to build as small an RPM as possible. This took me down a much longer path than ...

[ Read More ]

PHP Unit Testing

rnelson0, 2 weeks, 4 days | Source: RNELSON0

I recently needed to investigate unit testing in PHP. I’m familiar with but not very well versed in PHP, and I’m certainly not a PHP aficionado, but a quick google search turned me on to PHPUnit by Sebastian Bergmann. The docs appear very complete and there’s a nice Getting Started guide to keep it simple. […]

[ Read More ]

Shiny new things in Puppet 4

R.I. Pienaar, 4 weeks | Source: R.I.Pienaar -

Puppet 4 has been out a while but given the nature of the update – new packaging requiring new modules to manage it etc I’ve been reluctant to upgrade and did not have the time really. Ditto for Centos 7. But Docker will stop supporting Centos 6 Soon Now so this meant I had to look into both a bit closer.

Puppet 4 really is a whole new thing, it maintains backward compatibility but really in terms of actually using its features I think you’d be better off just starting fresh. I am moving the bulk of my services ...

[ Read More ]

From 0 to OpenStack with devtest: the process in details

Yanis Guenane, 4 weeks, 1 day | Source: eNovance Puppet Blog

Main points :

  • Environment variables driven process
  • 8 steps process
  • Deploy OpenStack using upstream Puppet modules
  • Works for both bare metal and virtualized deployments

What is devtest and how does it work ?

Devtest is the upstream way to deploy Openstack with TripleO. In simple words it takes you from a fresh bare metal server to an overcloud (understand OpenStack cloud) up and running with a single script.

All the devtest related code and components are located in the tripleo-incubator project. The one we will take a closer look at is scripts/

The main is a wrapper around ...

[ Read More ]

Git archive with submodules and tar magic

jamesjustjames, 1 month | Source: The Technical Blog of James

Git submodules are actually a very beautiful thing. You might prefer the word powerful or elegant, but that’s not the point. The downside is that they are sometimes misused, so as always, use with care. I’ve used them in projects like puppet-gluster, oh-my-vagrant, and others. If you’re not familiar with them, do a bit of reading and come back later, I’ll wait.

I recently did some work packaging Oh-My-Vagrant as RPM’s. My primary goal was to make sure the entire process was automatic, as I have no patience for manually building RPM’s. Any good ...

[ Read More ]

puppet snmp module 3.4.0

Michael Arnold, 1 month, 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 fixes from community members: Add a pause after service stop and before creating SNMPv3 users (Guy Martin) Skip zero length strings in ERB template output (Brett Delle Grazie) Fixed a small typo in example (Markus […]

[ Read More ]

puppet vmwaretools module 5.0.0

Michael Arnold, 1 month, 3 weeks | Source: The Razor's Edge

This is a major release of my Puppet module to deploy the VMware Tools Operating System Specific Packages. There is a backwards-incompatible change that necessitated the major version bump. The parameters yum_server, yum_path, and just_prepend_yum_path have been renamed to be reposerver, repopath, and just_prepend_repopath respectively. Also, the module now officially supports Puppet 4 and a […]

[ Read More ]

Customizing bash and vim for better git and puppet use

rnelson0, 1 month, 4 weeks | Source: RNELSON0

Welcome back to our Puppet series. I apologize for the extended hiatus and thank you for sticking around! As an added bonus, in addition to inlining files, I’m including links to the corresponding files and commits in my PuppetInABox project so you can easily review the files and browse around as needed. I hope this […]

[ Read More ]

Puppet Module Functional Testing with Vagrant, OpenStack and Beaker

Emilien Macchi, 2 months, 1 week | Source: eNovance Puppet Blog

This post is originally published on Emilien Macchi’s blog.

During the last OpenStack Summit, I had the pleasure to participate to the Infra sessions and we agreed at how to make functional testing for both Puppet OpenStack and Puppet Infra modules, which is a real proof of collaboration between both groups.

However, I met some people still wondering how to test a patch in a Puppet module without affecting our own system by installing OpenStack.

This article is short but effective: it’s about testing a Puppet module by using Vagrant with OpenStack provider and Beaker.


  • Linux, Windows ...

[ Read More ]

Testing puppet modules: an overview

Patrick Schönfeld, 2 months, 3 weeks | Source: just-imho: tech

When it comes to testing puppet modules, there are lot of options, but for someone entering the world of puppet module testing, the pure variety may seem overwhelming. This is a try to provide some overview.

So you’ve written a puppet module and would like to add some tests. Now what?As of today, puppet tests basically can be done in two ways, complementing each other:

  • Catalog tests (e.g. testing the compiled puppet catalog)
  • Functional/Acceptance tests in a real environment

Catalog tests
In most cases you should at least write some catalog tests.
As of writing this ...

[ Read More ]

The Type Hierarchy and Scalars

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

The Type Hierarchy

In the previous post about the Puppet 3.5 experimental feature Puppet Types I covered the rationale behind having a type system, and exemplified by using a handful of types such as Integer, and Array to achieve simple tasks.

This time, I am going to present an overview of all the types in the type system and present the most fundamental type - the Scalar in more detail.

The Type Hierarchy

|- Scalar
| |- Numeric
| | |- Integer[from, to]
| | | |- (Integer with range inside another Integer)
| | |
| | |- Float[from, to]
| | | |- (Float with range inside another Float)
| |
| |- String
| | |- Enum[*strings]
| | |- Pattern[*patterns]
| |
| |- Boolean ...

[ Read More ]