puppet-doc-lint
Lint your Puppet files for RDoc coverage
This project is heavily based on the puppet-parse code base, go check it out! :smile:
Assumptions
This assumes that you're formatting your documentation in Puppet with RDoc formatting.
For example this will work:
# == Class: foo
#
# This module manages foo
#
# === Parameters
#
# [*ensure*]
# Controls presence of package and stuff
#
# === Authors
#
# * Jane Doe <mailto:[email protected]>
#
This will not:
# Class: foo
#
# This module manages foo
#
# Parameters:
# - $ensure
#
# Authors: Jane Doe <mailto:[email protected]>
#
Installation
gem install puppet-doc-lint
Usage
By hand
You can report on one or more manifests by running
puppet-doc-lint <path(s) to file(s)>
For example:
puppet-doc-lint ~/Projects/puppetlabs-firewall/manifests/linux/debian.pp
class firewall::linux::debian Parameters are ["ensure", "enable"]
class firewall::linux::debian Docs found are ["ensure", "enable"]
Rake task
** Currrently broken maybe? **
If you want to parse your entire modules directory, you can add `require 'puppet-doc-lint/rake-task' to your Rakefile and then run
rake parse
If you need to ignore certain paths from being parsed:
PuppetDocLint.configuration.ignore_paths = ["vendor/**/*.pp"]
Contributing
You can do any of these:
- Create new Pull Request
- Create an issue
- Write me an email
- Complain about how useless my code is on twitter