Quantcast
Channel: Puppets on UnixDaemon: In search of (a) life
Browsing all 77 articles
Browse latest View live

Stop People Calling Private Puppet Classes

When writing puppet modules sometimes you need to ensure that certain classes are only used within your module itself. For example a class that implements functionality based on the local operating...

View Article


Asserting the Existence of External Facts

Facter 1.7 introduced support for external facts, and I gave some external fact examples, but it left a couple of small issues unresolved. One of the larger ones is the subject of syncing the external...

View Article


Validating Config Files in Puppet and Ansible

While doing some experiments with Ansible I came across a little snippet of code that I really liked - - name: manage /etc/sudoers template: src=sudoers.j2 dest=/etc/sudoers validate='visudo -cf %s'...

View Article

Liquid Templates in Puppet - Initial Release

Puppet has always supported templating via ERB and while it’s a powerful, flexible templating engine the ability to use any arbitrary ruby code inside a template that’s run on the puppet master...

View Article

Pro Puppet 2nd Edition - Initial Impressions

The kind people at Apress provided me with an alpha review copy of Pro Puppet and while it’s not the finished product you can already get a good feel for the books tone and coverage.I quite liked the...

View Article


Puppet Book Summary - 2013

Even though I don’t spend as much time writing puppet code as I used to I try to stay relevant and as part of that I like to read all the Puppet books that come out. Below are the ones I’ve read this...

View Article

Puppet Resource Ordering Options

Over the years Puppet has handled resources ordering without explicit dependencies in different ways, with the release of Puppet 3.3.0 they’ve exposed this ordering logic to the admin with three...

View Article

Puppet External Resource - a Hidden gem

“a simple resource that blocks transactions until a check passes, theoretically indicating that a remote resource is in a desired state.”   – Puppet Remote Resource DocumentationI stumbled over the...

View Article


Package Install Options in Puppet

One of the new features released in Puppet 3.4.0 is the ability to add options to rpm package installs. This is a feature that’s been discussed in a couple of tickets over the years and now we’ve got...

View Article


Structured Facts with Facter 2

Structured facts in facter had become the Puppet communities version of ‘Duke Nukem Forever’, something that’s always been just around the next corner. Now that the facter 2.0.1 release candidate is...

View Article

Puppet Certified Professional 2014 Exam

A little while ago in a twitter conversation, many hops away a few of us discussed the Puppet Certified Professional exam and topic coverage. Specifically how much of it was focused on Puppet...

View Article

Puppet Lint Custom Checks

In the past if you wanted to run your own puppet-lint checks there was no official, really clean way to distribute them outside of the core code. Now, with the 1.0 release of puppet-lint you can write...

View Article

Puppet 3.7 File Function Improvements

Puppet’s always had a couple of little inconsistencies when it comes to the file and template functions. The file function has always been able to search for multiple files and return the contents of...

View Article


Facter: Ansible facts in Puppet

Have you ever needed to access Ansible facts from inside Puppet? well, if you ever need to, you can use the basic ansible_facts custom fact.# make sure you have ansible installed$ sudo puppet resource...

View Article

Simple Puppet Module Testing with Dockunit

I’ve recently begun to look at replacing as much of my custom puppet tooling as possible with third-party, open source, code. As part of this I’m planning to update my old libvirt testing...

View Article


Puppet validate_json_schema function

A few projects ago we had a JSON app with quite a fiddly config file that was undergoing rapid iteration. Although we never deployed an invalid JSON config we hit a couple of snags with config files...

View Article

Introducing the Deprecate function

A fair while ago I wrote a Deprecation Warnings From Puppet Resources blog post and metaparameter for adding expiry information to your manifests -file { '/ec/cron.d/remove_foos': ensure => 'file',...

View Article


No symbolic file modes - puppet-lint check

Modern versions of Puppet allow you to specify the mode of a file resource in one of two ways, either as a traditional octal value or the (newer addition) symbolic file modes. Although these may seem...

View Article

Duplicate class parameters check for puppet-lint

In versions of Puppet under 3.8.5 it’s been possible to have the same parameter name specified multiple times in a class definition without error. Although allowed it was a little misleading as only...

View Article

No cron resources - customisable puppet-lint check

Sometimes there are certain puppet resource types that you don’t want to include in your code base. In my case it was cron but in yours it could be the more line originated augeas or the horribly named...

View Article
Browsing all 77 articles
Browse latest View live