You’re going to need a minimum of 4 servers. Before you freak out, that’s to keep things simple. Again, calm down. Also, you’ll see I like CentOS. All the servers I built were CentOS 6.5 x86_64
For this you don’t really need to set this one up, but most likely you’ll have an internal git server. I’ll be using Github for this demo. Use whatever you like.
Set up the server and client via this guide.
When done, go ahead and create an unstable feed via:
1 2 3 4 5
Follow this guide to set up jenkins.
Install the jenkins plugins:
- git scm
- ssh plugin
Install these extra Yum packages:
yum install -y rpm-build rpm ruby ruby-devel rubygems git automake autoconf gcc gcc-c++
Install FPM via gem:
gem install fpm
Install the pulp-admin tools the same way you did on the pulp server Not the server, just the admin tools!
Go ahead an ensure all these bits and pieces work, such as connecting to pulp via the login command, using rvm, etc. Jenkins is the heavy lifter in this stack.
Install r10k via gem:
gem install r10k
Also, install the Puppetlabs yum repository and update puppet to 3.4.2 or higher.
Updating Puppet from 2 to 3 on Foreman requires some configuration changes. To get these, just re-run the
# foreman-installer command.
Make these changes to /etc/puppet/puppet.conf for now:
- Under the [master] section add:
hiera_config = $confdir/hiera/master/hiera.yaml
- Replace the [development] and [production] elements at the bottom with:
1 2 3 4 5 6
A puppet node
Because why not. Install the puppet yum repository and install Puppet 3.4.2 or higher.
Make sure you have
pluginsync = true in the /etc/puppet/puppet.conf file under [main]
My assumption before you move on, if you’re following along, is that this node can connect to the puppet master (foreman) and generates all green when you run
# puppet agent -t
Lastly, make sure you’re subscribed to the Yum repository for the myapp package we’ve been building so that puppet can install it when we get to that point. To do that, create the file /etc/yum.repos.d/mypulp.repo with the contents:
1 2 3 4 5 6