Questions tagged [puppet]

Puppet is a ruby-based Configuration Management system incorporating a model-driven DSL. Its purpose is to provide configuration file enforcement, service state monitoring, package installation and other server-side management.

Puppet is a ruby-based Configuration Management system made by Puppet Labs.

Puppet has its own DSL, a model-driven language.

Its purpose is to provide configuration file enforcement, service state monitoring, package installation and other server-side management.

Functionality is provided by types. Out of the box, puppet comes with a number of commonly used types such as package, service and file.

It can be extended with modules available from the Forge.

Puppet is written in Ruby and licensed under the Apache v2 and the source code is avaliable on Github.

Useful Links:

See Also

4080 questions
33
votes
4 answers

what is the puppet agent status on the machine?

I know about puppet agent --disable "my message" --verbose but I would like to know at some point on a given machine, what is its puppet agent status. I don't see how to do it from man puppet-agent Is there an command that would tell me if the…
Bob Yoplait
  • 2,421
  • 1
  • 23
  • 35
33
votes
5 answers

How to fetch a remote file (e.g. from Github) in a Puppet file resource?

file { 'leiningen': path => '/home/vagrant/bin/lein', ensure => 'file', mode => 'a+x', source => 'https://raw.github.com/technomancy/leiningen/stable/bin/lein', } was my idea, but Puppet doesn’t know http://. Is there something…
Profpatsch
  • 4,918
  • 5
  • 27
  • 32
31
votes
6 answers

Where is “Jenkins URL” configuration stored?

I'm trying to set up a non-default URL as part of a puppet script that installs Jenkins. I know how to edit the value via the web UI but I can't seem to find where the value is actually stored. I've looked through the jenkins_home folder and apache…
nweiler
  • 1,140
  • 1
  • 13
  • 23
31
votes
2 answers

Puppet : Specifying a version of a package to install

Apparently this is not possible, but I can't believe that I'm the only one who need it. I want to specify the version of php to install because I'm working on an old project requiring php 5.2. Actually my VM is based on Oneiric with php 5.3 Do you…
JulienD
  • 3,172
  • 3
  • 16
  • 16
29
votes
3 answers

Choosing a vagrant provisioner

Question Can anyone explain why it would be better to choose the puppet or chef vagrant provisioners, rather than the shell provisioner? Background I'm in the process of getting started with Vagrant. One of the things I'm having trouble with is…
Andrew Walker
  • 40,984
  • 8
  • 62
  • 84
29
votes
5 answers

puppet node hostname

I'm using puppet to configure servers. I want to print current machine (node) name in *.erb template. There is hostname variable, but this holds puppetmaster hostname. Is there any good reference/list regarding to this topic?
Michal Bryxí
  • 1,166
  • 1
  • 11
  • 18
29
votes
4 answers

Puppet: How can I wrap a command into two line if >80 characters?

In puppet, if define command is > 80 characters, how can I wrap into two line to do it? exec { 'create_domain': command => "some command exceed 80 character...........................................................how to do how to…
TheOneTeam
  • 25,806
  • 45
  • 116
  • 158
27
votes
1 answer

Multiple puppet requires

Hi I'd like to make a puppet resource/task dependent on multiple other tasks. For example: file{'~/foo':} file{'~/bar':} file{'~/foobar': require => File['~foo'], require => File['~bar'] } What's the correct syntax to define this? Thanks
Keynan
  • 1,338
  • 1
  • 10
  • 18
25
votes
2 answers

String substitution in Puppet?

Is it possible to do a string substitution/transformation in Puppet using a regular expression? If $hostname is "web1", I want $hostname_without_number to be "web". The following isn't valid Puppet syntax, but I think I need something like…
richardkmiller
  • 2,902
  • 3
  • 31
  • 29
24
votes
6 answers

How to iterate over an array in Puppet

I would like to iterate over an array that is stored as a Facter fact, and for each element of the array create a new system user and a directory, and finally make API calls to AWS. Example of the fact: my_env => [shared1,shared2,shared3] How can I…
PapelPincel
  • 4,255
  • 6
  • 39
  • 49
24
votes
5 answers

Puppet agent can't find server

I'm new to puppet, but picking it up quickly. Today, I'm running into an issue when trying to run the following: $ puppet agent --no-daemonize --verbose --onetime **err: Could not request certificate: getaddrinfo: Name or service not…
Kent Rancourt
  • 1,555
  • 1
  • 11
  • 19
23
votes
3 answers

Vagrant, Docker, Puppet, Chef

I don't understand even the basic difference between the services in the title. Do these services just provide software to help you configure/organize/manage your VM's, or do they also provide physical infrastructure for your VM's to run on? In…
Joseph Johnston
  • 533
  • 1
  • 3
  • 14
23
votes
9 answers

Set Environment Variables with Puppet

I am using vagrant with puppet to set up virtual machines for development environments. I would like to simply set a few environment variables in the .pp file. Using virtual box and a vagrant base box for Ubuntu 64 bit. I have this currently. $bar…
bgrantdev
  • 1,622
  • 4
  • 17
  • 29
22
votes
3 answers

Check if a variable is undef in puppet template

What is the proper way to check if a variable is undef in a puppet template? In the manifest the variable is defined as follows $myvar = undef How is this checked in the template? Is saw the following two variants <% if @myvar -%> <% end…
André Keller
  • 3,179
  • 3
  • 15
  • 23
21
votes
3 answers

CentOS 7 and Puppet unable to install nc

I am having a weird issue with having puppet enforce the package nc. I installed it manually in the end via: yum install nc I see puppet does it via: /usr/bin/yum -d 0 -e 0 -y list nc Returns: Error: No matching Packages to list I have tested this…
Werner
  • 791
  • 1
  • 6
  • 23