init.pp |
|
|---|---|
Class: poccoPocco is derived from Rocco, the literate-programming-style documentation generator. Pocco reads Puppet manifests from puppet modules and produces annotated source documentation in HTML format in the module docs directory. WARNING: install pygments to process highlighting locally, otherwise the manifests are uploaded to http://pygments.appspot.com for processing. Pocco has some puppet specific functionality:
Parameters:
Usage:
|
class pocco (
$ensure = present,
$provider = gem,
$install_path = '/opt/pocco'
) { |
|
There’s only one line requiring rake so might refactor away this requirement later. |
package { 'rake':
ensure => $ensure,
provider => $provider,
} -> |
|
Pocco depends on rocco for the documentation parsing and highlighting. |
package { 'fl-rocco':
ensure => $ensure,
provider => $provider,
} ->
package { 'rocco':
ensure => $ensure,
provider => $provider,
} ->
vcsrepo { '/opt/pocco':
ensure => latest,
source => 'https://github.com/nanliu/puppet-pocco.git',
provider => 'git',
} |
|
The exec command demonstrates pocco generating documentation. |
exec { 'update_pocco_docs':
command => '/opt/pocco/bin/pocco /opt/pocco',
environment => ['RUBYOPT=rubygems', 'RUBYLIB=/opt/pocco/lib'],
logoutput => on_failure,
refreshonly => true,
subscribe => Vcsrepo['/opt/pocco'],
}
} |