README.md in onceover-3.2.0 vs README.md in onceover-3.2.1

- old
+ new

@@ -283,11 +283,11 @@ If you have hiera data inside your controlrepo (or somewhere else) the Controlrepo gem can be configured to use it. Just dump your `hiera.yaml` file from the puppet master into the `spec/` directory or the root of your controlrepo and you are good to go. **WARNING:** This assumes that the path to your hiera data (datadir) is relative to the root of the controlrepo, if not it will fall over. -**Alternatively:**, if you are using cool new per-environment hiera config made available in puppet 4.x, the tool will automatically detect this and everything should work. +**Alternatively:**, if you are using cool new per-environment hiera config made available in puppet 4.x (Now called Hiera 5), the tool will automatically detect this and everything should work. If you want to use a different v5 `hiera.yaml` for testing, pleace it under the spec directory. Note that the datadir must be relative to the location of the hiera.yaml file in this instance. i.e. `../data` ## Spec testing Once you have your `onceover.yaml` and factsets set up you are ready to go with spec testing. @@ -304,10 +304,16 @@ ### Adding your own spec tests When using this gem adding your own spec tests is exactly the same as if you were to add them to a module, simply create them under `spec/{classes,defines,etc.}` in the Controlrepo and they will be run like normal, along with all of the `it { should compile }` tests. +### Exposing Puppet output + +If you want to see Puppet's output, you can set the `SHOW_PUPPET_OUTPUT` environment variable to `true`, eg: + +`SHOW_PUPPET_OUTPUT=true onceover run spec` + ## Acceptance testing Acceptance testing works in much the same way as spec testing except that it requires a nodeset file along with `onceover.yaml` To run the tests: @@ -406,10 +412,18 @@ **NOTE:** If you want to access the class or factset that onceover is running against just use the `$onceover_class` and `$onceover_node` variables respectively. ## Extra Tooling +### Plugins + +Onceover now allows for plugins. The framework is extremely simple and basically relies on the plugins to monkey-patch themselves in. It will likely be improved in future. To create a plugin simply install a gem with a name that starts with `onceover-` and onceover will `require` it. Once it has been required it is up to the plugin to insert itself wherever it is required. + +Examples: + + - [onceover-octocatalog-diff](https://github.com/dylanratcliffe/onceover-octocatalog-diff) + ### Inspecting and updating the Puppetfile Onceover comes with some extra commands for interacting with the Puppetfile in useful ways. These are: `onceover show puppetfile` @@ -588,5 +602,17 @@ repo: puppetlabs/apache ref: 1.5.0 ``` Notice that the symlinks are not the ones that we provided in `environment.conf`? This is because the rake task will go into each of directories, find the modules and create a symlink for each of them (This is what rspec expects). + +## Contributors + +Cheers to all of those who helped out: + + - jessereynolds + - op-ct + - GeoffWilliams + - beergeek + - jairojunior + - natemccurdy + - aardvark