Tag Info

Hot answers tagged

9

Have a look at: https://github.com/example42/puppi/blob/master/manifests/netinstall.pp Usage example: netinstall { 'postgis': url => 'http://postgis.refractions.net/download/postgis-1.5.5.tar.gz', extracted_dir => 'postgis-1.5.5', destination_dir => '/tmp', postextract_command => '/tmp/postgis-1.5.5/configure && make ...


8

Puppet does not have an uninstaller, you must manually remove the following files. (Tested on 3.2.3) Uninstalling Remove the following binaries /usr/bin/puppet /usr/sbin/puppet Remove the following directories /private/etc/puppet /usr/share/doc/puppet To get rid of the puppet user that appears on the login screen sudo dscl . delete /Users/puppet ...


7

At least two plugins which should help: vagrant-host-shell vagrant-triggers If you don't care that the script is run on (almost) all vagrant commands, you can also just shell out (or use what ever ruby magic) in Vagrantfile: system('./myscript.sh') Vagrant.configure('2') do |config| # ... end


7

You refer to the package by the name "php_pdo", but Puppet sees the package as "php-pdo" (dash, not underscore). Every time it checks to see of php_pdo is installed, it finds out that it is not. Unfortunately it doesn't matter how many times you install php-pdo, it will never be php_pdo. To resolve the issue, change the line: package {"php_pdo": to be: ...


4

According to their website: Puppet Enterprise packages the power of Puppet for ease of installation, maintenance and scalability Simplified integration & installation Tuned for scalaibility All components tested and approved by Puppet Labs engineers Built-in support as part of your paid license Your Puppet deployment is always up to ...


4

I can't help with the Puppet part, but you can forward the SSH Agent by setting: Vagrant.configure("2") do |config| config.ssh.forward_agent = true # ... end This way the SSH connections (also make by git) try to use your private keys from the host.


3

Puppet and docker can do many of the same things, however they approach them in a different way. Puppet manages files + packages + services. (Called the trifecta). Docker encapsulates binaries and configuration files inside of a container. At the time of this writing, docker is still unstable and shouldn't be used in production. Many of the API's are ...


3

We managed to solve this issue by enabling pluginsync in the puppet config on the puppethosts. #puppethost:/etc/puppet/puppet.conf [main] #... pluginsync=true


3

The above answer is incomplete, not all the files are removed with the above commands. I was able to completely uninstall Puppet (on Mountain Lion) by running the following commands: for f in $(pkgutil --only-files --files com.puppetlabs.puppet); do sudo rm /$f; done for d in $(pkgutil --only-dirs --files com.puppetlabs.puppet | tail -r); do sudo rmdir ...


2

In Centos, I believe the package you're looking for is "vim-enhanced" ... not just "vim". It is very likely that the package was already installed before you ran the test.


2

It's a bug in the 1.5.x branch of Facter. I can't recall the exact version it was fixed in, but a more recent 1.6.x version will fix the issue.


2

Puppetlabs provides a break down of the differences here: http://puppetlabs.com/puppet/enterprise-vs-open-source The most noticeable difference is support, a much improved web UI and as of 3.x better ability to view what happened during a puppet run. Additional information http://puppetlabs.com/puppet/faq


2

The two ways to distribute manifests are either using a puppet master or in a masterless configuration. They are not mutually exclusive and we use both approaches at my work. Masterful With the masterful setup, you have a puppet master which contains a collection of all the modules in your infrastructure. The nodes then report in (every 30 minutes by ...


2

Works on my machine! Vagrantfile: VAGRANTFILE_API_VERSION = '2' Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = 'precise64' config.vm.box_url = 'http://files.vagrantup.com/precise64.box' # # Use host authenticaton for git and maven. # # Ensure host private key is registered with host SSH agent: # # ssh-add -L # ...


2

Possible Solution 1: Using the puppet cert clean on the puppet master is the proper way. However since you're getting errors you may have a bad inventory of certificates. Try doing a re-inventory then a clean: $ puppet cert reinventory $ puppet cert clean --all Note: my example uses the --all flag, this will clear out all certificates, signed and ...


2

Not sure if this is a recommended way of doing it, but using ca seemed to work better where cert failed. $ puppet ca destroy wrong.host.name Notice: Removing file Puppet::SSL::CertificateRequest wrong.host.name at '/var/lib/puppet/ssl/ca/requests/wrong.host.name.pem' Deleted for wrong.host.name: Puppet::SSL::CertificateRequest


2

PE 3.3 includes Puppet 3.6.2, PuppetDB, Facter, Hiera,... https://docs.puppetlabs.com/pe/latest/overview_about_pe.html


1

In a typical puppet infrastructure, you have a puppet master, and puppet nodes. A node is a single server that runs a technology (Like a jenkins node, or git node, or web server node) The master keeps a list of which modules are installed on which nodes, usually in a file called the site.pp The instructions are telling you to install the puppet module on ...


1

The puppet module face has been released in FOSS puppet in 2.7.14. It would have been in 2.7.13, but 2.7.13 got bumped to 2.7.14 by the recent security release. This is according to: Bug #13937 - puppet 2.7.13 RPM missing "puppet module" face. So you may try to re-install your puppet by the recent version: $ curl -O ...


1

I only used Puppet Enterprise. But I believe usually you should use sudo for installing modules. Also, make sure you're running this stuff on the master, not on an agent.


1

Puppet 2.7.x is a very old version. You should install a more recent version (3.7 at the time of this writing) sudo apt-get install -y python-software-properties cd /tmp wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb sudo dpkg -i puppetlabs-release-precise.deb apt-get update apt-get install -y puppet-common #masterless puppet apt-get ...


1

From the link you posted, the recommended way is to define the vhosts in classes and include those (in the node manifest or through an ENC), or manually define each vhost for each node (in the node manifest)>


1

Use Roles, Profiles and Hiera to manage different configurations, with mixed modules. Check this intro from PuppetLabs: http://puppetlabs.com/presentations/designing-puppet-rolesprofiles-pattern. In Foreman, you can group hosts by organisations, environments and groups. I'm not sure how to version control Foreman's configuration though. Foreman uses a DB ...


1

Puppet does not integrate with LDAP / AD / Open Directory, so the user that you will be adding will only be a local account. Run the following on a different user that was made with Open Directory puppet resource user foo (Here is the output from my mac tied to Active Directory, yours should look similar) puppet resource user foo user { 'foo': ensure ...


1

As I understand it, setx sets the variable via the registry (see this article). It requires the start of a new command shell to see the results. If you want to change the path setting under the current command session use set path=%path%;%another_variable%. In response to the comment, this is from setx /?: NOTE: 1) SETX writes variables to the master ...


1

It seems that puppet is not really the best tool for compiling source packages on target systems. The best approach probably is to provide a deb package or whatever your target system expects and install the package using puppet. The problem about compiling software with puppet is that you need to run several exec { } commands with puppet. Everytime you ...


1

Change the URL for the source of the file resource from puppet://puppet/modules/sys-status/sys-status.rb to puppet:///modules/sys-status/sys-status.rb. It tries to get it from a puppet server named 'puppet', which it cannot connect to. Removing it will make it fetch the file from the master it's connecting to. Ger


1

Assuming you have a yum plugin installed, a block as simple as: package { 'mysql-server' : ensure => '5.5' , } should work. You may have to add a repository that includes the package you need through the yum plugin. If there is a specifically named version of the package (for example mysql55w in the webtatic repo) then you just need to ensure it is ...


1

In line with what @tmatilai said about using system('./myscript.sh') I found it quite helpful for one time commands like installing vagrant commands or some provisioner that might not be installed in the system. I just avoid it re-running every time I invoke the vagrant commands by adding a sed to auto-comment the Vagrantfile. For example: ...


1

Simple (and complete) Solution (I say complete because the accepted answer does not check if the user is using vagrant up. Therefore, the script is executed on each command, which is not what the OP wants.) There is however a simple solution to this. ARGV[0] is the first argument of the command entered and can be up, down, status, etc.. Simply check the ...



Only top voted, non community-wiki answers of a minimum length are eligible