Planet Puppet

Your source of Puppet technical information

Knowledge is one of the best ways ensure customer success

Stephanie Stouck, 22 hours, 29 minutes | Source: Puppet Labs

Speed up your time to value with Puppet Enterprise by leveraging our new services and training bundle, Get Started with Puppet.

[ Read More ]

Print the rspec-puppet catalog, courtesy of @willaerk

rnelson0, 4 days, 6 hours | Source: RNELSON0

Sometimes, when you are writing an rspec-puppet test, you’re not sure exactly how the test should be written. You know that you want to test a resource with some extra attribute, but you may be describing the resource wrong, or using a bad regex to test the contents. Rspec-puppet will helpfully tell you when the […]

[ Read More ]

Announcing the PuppetConf 2016 speaker lineup

Kara Sowles, 1 week, 2 days | Source: Puppet Labs

Get ready for PuppetConf 2016: The speaker lineup is as bright as San Diego sunshine.

[ Read More ]

Know when to leverage the right expertise at the right time

Owen Rodabaugh, 1 week, 2 days | Source: Puppet Labs

Speed up your time to value with Puppet Enterprise by leveraging our new services and training bundle, Get Started with Puppet.

[ Read More ]

Aligning applications with business strategy at Wells Fargo

Aliza Earnshaw, 1 week, 4 days | Source: Puppet Labs

Wells Fargo went on a DevOps journey, bringing the bank's IT team to a new way of architecting applications in alignment with their business purpose.

[ Read More ]

Rspec fixtures tip: symlink to other modules in your controlrepo

rnelson0, 1 week, 4 days | Source: RNELSON0

If you are writing rspec tests against your controlrepo, specifically your profile module, you need to set up your .fixtures.yml file to reference the other modules in your controlrepo. For example, here’s a list of the modules in the dist directory of a controlrepo: dist ├── eyaml ├── profile └── role If any of the […]

[ Read More ]

Exploring Puppet(4) modules design patterns

Anonymous, 2 weeks, 5 days | Source: Example 42

The enhancements coming with Puppet 4’s parser and type system are starting to appear in the modules ecosystem, still the need to preserve backwards compatibility is often slowing authors from fully embracing the powers and the elegance of the new Puppet language. When example42 announced the 4th generation of its Puppet modules and introduced a complete control repo, we decided to fully embrace Puppet 4 and ignore backwards compatibility. I, Alessandro, was struggling to find a sane way to put together the possibilities (and limitations) of Tiny Puppet, the structure of a full featured control-repo, and the usage of ...

[ Read More ]

Including additional resources in your rspec-puppet tests

rnelson0, 3 weeks, 4 days | Source: RNELSON0

I’m a strong advocate of creating unit tests for your puppet code with rspec-puppet. I’ve written a number of articles on tests before, so here’s one more. When you’re testing a class, sometimes there’s an expectation that it’s used alongside another class or resource. But your test is only against your class, so how do […]

[ Read More ]

OpsTheater 1.6: Open Source at last!

Walter Heck, 1 month | Source: OlinData

source: https://flic.kr/p/robn4v

We're excited to release OpsTheater 1.6 and with that release make the full code open source. We actually quietly released a few weeks back already, but life is busy and I didn't have time to write this blog post until today.

Why Open Source?

Since late 2015 we have been working internally on OpsTheater, a stack of tools we see used individually a lot in Enterprise environments. We decided to put them together so we could make our own lives easier. That turns out to work well. A simple OpsTheater deployment with GitLab, Icinga, ELK Stack and ...

[ Read More ]

A modern Puppet 4 control repo

Anonymous, 1 month, 1 week | Source: Example 42

A few weeks ago we introduced version 4 of example42 Puppet modules with a radical change in the reference repository layout. We’ve started to work on a Puppet 4 only compatible control-repo setup and we explored alternatives or optimizations to current best practices. The term “control-repo” is relatively recent in Puppet world but its function has been common for a while: a single place where we manage our whole Puppet setup: our data, our code, the public modules we use. Needless to say that a good stating control-repo is vital to a sane Puppet setup. What we present here ...

[ Read More ]

Converting and Formatting Data Like a Pro With Puppet 4.5.0

Henrik Lindberg (noreply@blogger.com), 1 month, 1 week | Source: Puppet on the Edge

Before Puppet 4

Before Puppet 4.0.0 there was basically only the data types; String, Boolean, Array, Hash, and Undef. Most notably missing were numeric types (Numeric, Integer, and Float). In Puppet 4.0.0 those and many other types were defined and implemented in a proper type system. This was all good, but a few practical problems were not solved; namely data conversion. In Puppet 4.5.0 there is a new feature that will greatly help with this task. But first lets look at the state of what is available in prior versions.

Converting String to Number ...

[ Read More ]

Digging out data in style with puppet 4.5.0

Henrik Lindberg (noreply@blogger.com), 1 month, 1 week | Source: Puppet on the Edge

In Puppet 4.5.0 there are a couple of new functions dig, then and lest that together with the existing assert_type and with functions makes it easy to do a number of tasks that earlier required conditional logic and temporary variables.

You typically run into a problem in programming languages in general when you are given a data structure consisting of hashes/arrays (or other objects), and you need to “dig out” a particular value, but you do not know if the path you want from the root of the structure actually exists.

Say you are given a hash ...

[ Read More ]

Hiera Node Classifier 0.7

R.I. Pienaar, 2 months | Source: R.I.Pienaar - www.devco.net

A while ago I released a Puppet 4 Hiera based node classifier to see what is next for hiera_include(). This had the major drawback that you couldn’t set an environment with it like with a real ENC since Puppet just doesn’t have that feature.

I’ve released a update to the classifier that now include a small real ENC that takes care of setting the environment based on certname and then boots up the classifier on the node.

Usage


ENCs tend to know only about the certname, you could imagine getting most recent seen facts from PuppetDB etc ...

[ Read More ]

Puppet Enterprise Migration from 3.8.4 to 2015.3.3

rnelson0, 2 months | Source: RNELSON0

I recently completed a PE migration from 3.8.4 to 2015.3.3 (puppetserver 2.2.41 and puppet agent 4.3.2). This was a somewhat painful exercise, as we kept running into issues because we had gotten so far behind on upgrades. If you need to perform the same kind of upgrade, I hope this broad-stroke description of the upgrade […]

[ Read More ]

The 4th generation of example42 Puppet modules

Anonymous, 2 months | Source: Example 42

Example42 Puppet modules have been around since 2009, they have lived different generations. It’s time for a new one, the 4th. Almost a revolution. Let me give an historical perspective. The first generation of example42 Puppet modules introduced a set of features that were quite uncommon for the times: Support of multiple OS, based on a dedicated params class Possibility to remove (decommission) the resources managed by the module Abstraction and automation of firewalling and monitoring (Optional) Awesome (IMHO) integration with Puppi 1.0 (Optional) The reference layout of this first generation was done in pre Puppet 2.6 ...

[ Read More ]

Come meet us at RootConf 2016 in Bangalore this week!

Walter Heck, 2 months, 1 week | Source: OlinData

Conferences are some of the greatest ways to connect with your peers and to soak up new knowledge. However, great conferences are not easy to find. Especially not Open Source-focused conferences. Well, I have good news today: the great RootConf conference iscoming up this week in Bangalore, and you can come and meet the OlinData India team and myself there!
 

Database BOF

On Thursday, I'll partake in a Birds-Of-a-Feather session about open source databases together with Colin Charles, Srihari Sriraman and Raj Sekhar. This promises to be interesting as some of us come from a mysql background where others ...

[ Read More ]

Hello, Rabbithole

Anonymous, 2 months, 1 week | Source: david.log

Please note that this post is a linear and unedited brain dump of what I did. Many things might have changed meanwhile, and I may have learned how to do things better. This is an experiment in progress.

This is a continuation of lass week's post, refreshing my exiscan module using retrospec-puppet, and a few other nifty technologies. In the last installment I contained docker in a virtualbox to avoid magic action at a distance on my desktop (dialogs popping up, audio being muted).

Picking up the Pieces

Last week, I gave up on this, after provisioning a fresh ...

[ Read More ]

Containing Docker

Anonymous, 2 months, 2 weeks | Source: david.log

Please note that this post is a linear and unedited brain dump of what I did. Many things might have changed meanwhile, and I may have learned how to do things better. This is an experiment in progress.

This is a continuation of lass week's post, refreshing my exiscan module using retrospec-puppet. In the last installment I managed to get the full-system tests running in docker. Yay! It turns out that the SUT from within the docker "container" changes my sound settings and causes weird interactions with my desktop environment. Boo! Isolating myself from the contents of the container ...

[ Read More ]

Automatic grouping in mgmt

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

In this post, I’ll tell you about the recently released “automatic grouping” or “AutoGroup” feature in mgmt, a next generation configuration management prototype. If you aren’t already familiar with mgmt, I’d recommend you start by reading the introductory post, and the second post. There’s also an introductory video.

Resources in a graph

Most configuration management systems use something called a directed acyclic graph, or DAG. This is a fancy way of saying that it is a bunch of circles (vertices) which are connected with arrows (edges). The arrows must be connected to exactly two vertices, and ...

[ Read More ]

Cooperating with Travis CI

Anonymous, 2 months, 3 weeks | Source: david.log

Please note that this post is a linear and unedited brain dump of what I did. Many things might have changed meanwhile, and I may have learned how to do things better. This is an experiment in progress.

This is a continuation of yesterday's post, refreshing my exiscan module using retrospec-puppet. Today I'm aiming for getting the release_checks running on travis. This should ensure that going forward, the module stays neat and clean.

At work we recently released a new version of puppetlabs_spec_helper that has a new rake task that will run all checks that we want to ...

[ Read More ]