简体   繁体   中英

How to apply puppet manifests and modules WITHOUT installing Puppet RPM?

I would like to create an RPM package that applies a Puppet manifest on a server which does not contain Puppet, Facter and Hiera. Also, and more importantly, I should be able to apply it WITHOUT being obliged to install neither of these tools (Puppet, Facter, Hiera) on the production server.

So basically, the package should run the following command without installing any of the required packages:

puppet apply install.pp --modulepath=./modules --hiera_config=./conf/hiera.yaml

How can I proceed to make such a package ? Is it a good idea to extract the 'binary' files the Puppet/Hiera/Facter RPMs to include them in another one ?

Thanks!

Installing the relevant packages and then removing them would be by far the fastest and safest way to do what you wish. Maybe you can convince your customer that the cost in time for any other solution is not worth the money. Anyway, if packages are not an option, let's be innovative:

  • You do not have to install from packages, you can install puppet via ruby gems
  • In the same way, you can use source tarballs

Those two options might work, but are not innovative enough.

  • What about installing puppet 'locally' on a disk via the gems or the tarballs, and then mounting this disk via nfs?
  • While we are here, why not do the same but then mount using sshfs?
  • still with the idea of a having first a remote install, you could indeed repackage it via fpm (amazing tool, very strongly recommended). You still end up with a package, but a local one which will not require adding a repository, this might alleviate some of your client concerns.
  • building on this, if the issue is with repositories, not packages, you could download all required packages and install them manually

I guess that the summary of this answer is that the value of doing so is negative compared to using what you distribution provides.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM