多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 自动生成 HTML 文档 > An expert is someone who is one page ahead of you in the manual. > > — David Knight 像大多数工程师一样,我从来没有阅读过手册,除非或者直到产品实际出现了十万火急的情况。 然而,随着你的配置清单代码不断增多且越来越复杂,使用 Puppet 的自动文档工具 puppet doc 为你的节点(node)和类(class)生成 HTML 文档是非常有用的。 #### 操作步骤 在你的配置清单目录下运行如下的 puppet doc 命令: ``` puppet doc --all --outputdir=/var/www/html/puppet --mode rdoc \ --manifestdir=/etc/puppet/manifests/ ``` ![https://box.kancloud.cn/2016-05-12_5733eece1cb64.png](https://box.kancloud.cn/2016-05-12_5733eece1cb64.png) #### 工作原理 puppet doc 在 /var/www/html/puppet 目录下生成结构化的 HTML 文档树, 这与 **RDoc** 生成的文档很类似,RDoc 是流行的 Ruby 文档生成器。 这使理解不同配置清单代码之间的相互关系便得更容易, 因为你可以点击被包含的类名称便能看到它的定义。 #### 更多用法 puppet doc 将根据你当前的配置清单生成基本的文档。 然而,你可以在你的配置清单文件中使用标准的 RDoc 语法包含更多的有用信息。 下面是一个在类中添加一些注释文档的例子: ``` class puppet { # This class sets up the Puppet client. # # ==Actions # Install a cron job to run Puppet. # # ==Requires # * Package["puppet"] # cron { "run-puppet": command => "/usr/sbin/puppet agent --test >/dev/null 2>&1", minute => inline_template("<%= hostname.hash.abs % 60 %>"), } } ``` 你在文档中为每个类添加的注释,会显示在生成的 HTML 文件里,如图所示: ![https://box.kancloud.cn/2016-05-12_5733eece4b5fe.png](https://box.kancloud.cn/2016-05-12_5733eece4b5fe.png)