Puppet Deployment to Non-Production
Deploying to Non-Production
The next step in our development pipeline is to deploy our updated module to production. We already have our nonprod puppet environment set to pull our feature branch from git and we have R10K deployed on our Jenkins server.
Create a new Jenkins job called ‘Deploy to Non-Production’ and link it to the puppet acceptance testing. The only thing we have to do with this job is create a new build step to execute a shell script.
Save the job.
As before, we need to link this job to the previous job. Add a post-build action to the Acceptance Test job with the following parameters:
We need to kick off our pipeline again so edit the metadata.json file by incrementing the version by one point release, commit and push your changes to git. The first Jenkins job will fire and do the unit testing, then our automated acceptance testing will fire off, followed by our newest job which will deploy our module to the nonprod puppet environment. We can verify this by waiting for all the jobs to complete and looking at the metadata.json in our nonprod environment on our puppet master. Check that we still have a prior version in our production environment.
We have completed most of pipeline by getting our module almost fully tested and deployed to our nonprod puppet environment for the last phase of our pipeline: user acceptance testing.