To have a fully working environment we might need to locally install some software for specific activities.
We can simply run bin/setup.sh
to install them via Puppet
or just can do that manually, as follows.
All the modules have a metadata.json
file where dependencies are described.
Most of the modules require PuppetLabs' stdlib
.
To be able to use the control-repo
with Puppet
some gems are needed and modules defined in the Puppetfile
have to be deployed.
The hiera-eyaml
, r10k
and deep_merge
gems can be installed by the setup script or manually with commands like:
# Gem installation in system
gem install hiera-eyaml
gem install r10k
gem install deep_merge
# Gem installation in Puppet environment
/opt/puppetlabs/puppet/bin/gem install hiera-eyaml
/opt/puppetlabs/puppet/bin/gem install r10k
/opt/puppetlabs/puppet/bin/gem install deep_merge
# Gem installation in Puppet server environment (if present)
/opt/puppetlabs/bin/puppetserver gem install hiera-eyaml
/opt/puppetlabs/bin/puppetserver gem install r10k
/opt/puppetlabs/bin/puppetserver gem install deep_merge
Population of the modules
directory via r10k
based on Puppetfile
:
r10k puppetfile install -v
The above steps can be accomplished by simply running bin/puppet_setup.sh
.
For a correct setup of the Vagrant
environment we need Vagrant
, VirtualBox
and some extra plugins:
vagrant plugin install vagrant-cachier
vagrant plugin install vagrant-vbguest
vagrant plugin install vagrant-hostmanager
These plugins, as Vagrant
itself, can be installed by the bin/setup.sh
script.
Docker
operations via the command line require Docker
to be locally installed.
If we use Mac
or Windows
we need the newer native client, things won't work when using Docker
running inside a Virtualbox VM
.
You'll need to run docker login
before trying any operation that involves pushing our images to Docker registry
.
Also Docker
can be installed by the bin/setup.sh
script.