Your source of Puppet technical information
Henrik Lindberg (firstname.lastname@example.org), 2 days, 17 hours | Source: Puppet on the EdgeThe 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
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.
| |- 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 ...
Emilien Macchi, 6 days, 10 hours | Source: eNovance Puppet Blog
Our Vancouver week just ended and I think it was a very productive Summit for the Puppet OpenStack folks.
This blog post summarizes what we did this week, and what we plan for the next release.
So we officially decided to support the latest version of OpenStack provided by upstream packages (Ubuntu UCA and CentOS7 RDO) in our modules master branch. That means if you submit a change in the module, it will have to pass our integration testing (running Beaker).
Reid Vandewiele, 1 week | Source: Puppet Labs
Hiera separates data from your Puppet code, making it possible to use the same generic code over and over again. Eighty percent of the puppet code most organizations use tends to be generic; only the data varies.
Carl Caum, 1 week, 1 day | Source: Puppet Labs
Puppet Enterprise will now be the native configuration management solution for Huawei switches, making it easy to configure your entire data center with a single tool.
Justin Dorff, 1 week, 2 days | Source: Puppet Labs
Bill Koefoed was named CFO of the Year in the medium company category, along with four other CFOs from Portland companies across different industries.
Henrik Lindberg (email@example.com), 1 week, 3 days | Source: Puppet on the Edge
In Puppet 4.0.0 there is a new API for writing Ruby functions that extend the functionality of the Puppet language. This API is available in the 3.7.x versions of Puppet when using --parser future, so you can try out this functionality today.
The new 4x API for functions was created to fix problems and add missing features in the 3x API:
Scope(and has access to too much non-API)
:undefSymbol if undefined values are given ...
Kara Sowles, 2 weeks | Source: Puppet Labs
Read details of our diversity program at PuppetConf 2015: 18 free tickets to underrepresented groups, travel sponsorship for qualifying speakers, and more.
rnelson0, 2 weeks, 1 day | Source: RNELSON0In 2014, we set up our puppet environment and we’ve spent the first half of 2015 improving the configuration. In that time, we installed hiera, were introduced to it through the role/profile pattern, focused on separating the data from the code and moving it into hiera, and most recently on an improved controlrepo that modified […]
Matthieu Huin, 2 weeks, 2 days | Source: eNovance Puppet Blog
We are proud to announce the first stable release of Software Factory. We have been operating a deployment that is hosting some projects along SF itself for a long time already. And since the platform has been proven stable enough for us, and consistently upgraded without much outage, it’s a good opportunity to look back at what we built and where we are now.
rnelson0, 3 weeks, 5 days | Source: RNELSON0Now that we have a unified controlrepo, we need to set up an r10k webhook. I have chosen to implement the webhook from zack/r10k. There are other webhooks out there – I’m a huge fan of Reaktor – but I chose this because I’m already using this module and because it is recommended by Puppet […]
rnelson0, 3 weeks, 6 days | Source: RNELSON0Quick note: I am deprecating my individual repos – role, profile, hiera etc – that I have used throughout the Puppet series. I will be doing representative work within the Puppetinabox repositories, mostly the controlrepo. I’m not sure when I’ll shut down the repos entirely, not until after I update old links, of course. Some […]
Martin Alfke (firstname.lastname@example.org), 4 weeks | Source: Unix FreakThe new Puppet Enterprise Version 3.8 is out since a couple of days.
rnelson0, 4 weeks | Source: RNELSON0I’d like to tell a tale of a git-astrophe that I caused in the hope that others can learn from my mistakes. Git is awesome but also very feature-ful, which can lead to learning about some of those features at the worst times. In this episode, I abused my knowledge of git rebase, learned how the […]
Martin Alfke (email@example.com), 1 month | Source: Unix FreakSLES and OpenSuSE are supported operatingsystems by Puppet.
Patrick Schönfeld, 1 month | Source: just-imho: tech
So you’ve written that custom puppet type for something and start working on another puppet type in the same module. What if you needed to share some code between this types? Is there a way of code-reuse that works with the plugin sync mechanism?
Yes, there is.
Puppet even has two possible ways of sharing code between types.
Option #1: a shared base provider
A provider in puppet is basically a class associated with a certain (puppet) type and there can be a lot providers for a single type (just look at the package provider!). It seems quiet natural ...
jamesjustjames, 1 month, 1 week | Source: The Technical Blog of James
The Oh-My-Vagrant (omv) project is an easy way to bootstrap a development environment. It is particularly useful for spinning up an arbitrary number of virtual machines in Vagrant without writing ruby code. For multi-machine container development, omv can be used to help this happen more naturally.
Oh-My-Vagrant can be very useful as a docker application development environment. I’ve made a quick (<9min) screencast demoing this topic. Please have a look:
If you watched the screencast, you should have a good overview of what’s possible. Let’s discuss some ...
Patrick Schönfeld, 1 month, 1 week | Source: just-imho: tech
When doing a lot of devops stuff with Puppet, you might get to a point, where the existing types are not enough. That point is usually reached, when a task at hand becomes extraordinary complex when trying to achieve it with the Puppet DSL. One example of such a case could be if you need to interact with a system binary a lot. In this case, writing your own puppet type might be handy.
Now where to start, if you want to write your own type?
Overview: modeling and providing types
First thing that you should know about puppet types ...
Robin Bowes, 1 month, 2 weeks | Source: yo61.com
In a previous post, I described how to describe puppet environments, roles, and profiles, as modules and how to use r10k and librarian-puppet to deploy them.
One possible problem with deploying to the puppet environment directory directly is that the librarian-puppet run can take some time and there is a possibility that puppet may attempt to compile a catalogue in an incomplete or inconsistent environment. One way to overcome this is to deploy the environments into a new directory, create a symlink, and move the symlink atomically into place.
This would look something like this:
cd /etc/puppet/envs # create ...
Robin Bowes, 1 month, 2 weeks | Source: yo61.com
I shall assume that puppet is configured to use to use directory environments and that the environment path is $confdir/environments (ie. the default location). I also assume that both r10k and librarian-puppet are installed and in the path.
jamesjustjames, 1 month, 3 weeks | Source: The Technical Blog of James
With Oh-My-Vagrant (omv) you can set up a dev environment in seconds. (Read the omv introduction if you’ve never used it before!) Since everything is defined in a single
omv.yaml file, it is easy to share your cluster prototype with a friend! The one missing feature was associating code with this config file. This is now possible! Let me show you how it works…
omv.yaml file there is an
extern variable. It is a list of each external repository which you’d like to include. Each element in this list is a hash of key ...
That's easy, you just tweet to @_masterzen_ your Puppet category/tag blog feed (atom or rss) url and I'll include it