Skip to content

mchllweeks/beaker-pe

 
 

Repository files navigation

beaker-pe

The Puppet Enterprise (PE) Beaker Library

What is This Thing?

The PE Beaker library contains all PE-specific

  1. installation methods
  2. helpers

that help someone acceptance test PE easier with Beaker.

Documentation

  • Rubydocs contain the technical reference for APIs and other aspects of beaker-pe. They describe how it works and how to use it but assume that you have a basic understanding of key concepts.
  • How-to guides are recipes. They guide you through the steps involved in addressing key problems and use-cases. For instance, checkout our How-to Install Puppet Enterprise doc.

Upgrading from 0.y to 1.y?

If you've used beaker-pe previously (during the 0.y versions), you'll have to change the way that you include beaker-pe for 1.y versions & beyond.

Before, you could just include beaker itself and you'd get beaker-pe because beaker required beaker-pe. With beaker 3.0, this dependency has been taken out of beaker. Now to use beaker-pe, you'll have to do two things:

  1. add a beaker-pe requirement as a sibling to your current beaker gem requirement
  2. put a require 'beaker-pe' statement in your tests/code that need beaker-pe-specific functionality

Spec Testing

Spec tests all live under the spec folder. These are the default rake task, & so can be run with a simple bundle exec rake, as well as being fully specified by running bundle exec rake test:spec:run or using the test:spec task.

There are also code coverage tests built into the template, which can be run with spec testing by running the test:spec:coverage rake task.

Acceptance Testing

Acceptance tests live in the acceptance/tests folder. These are Beaker tests, & are dependent on having Beaker installed. Note that this will happen with a bundle install execution, but can be avoided if you're not looking to run acceptance tests by ignoring the acceptance_testing gem group.

You can run the acceptance testing suite by invoking the test:acceptance rake task. It should be noted that this is a shortcut for the test:acceptance:quick task, which is named as such because it uses no pre-suite. This uses a default provided hosts file for acceptance under the acceptance/config directory. If you'd like to provide your own hosts file, set the CONFIG environment variable.

Release

To release new versions, we use a Jenkins job (access to internal infrastructure will be required to view job).

To release a new version (from the master branch), you'll need to just provide a new beaker-pe version number to the job, and you're off to the races.

Questions

If you have questions, please reach out to our MAINTAINERS.

About

Puppet Enterprise (PE) Beaker Library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%