Puppet实战-Puppet主机、模块、类、资源、变量、参数、标签命名规范
本文源自于作者守住每一天《Puppet实战》中第五章:Puppet语法和命令详解部分资料的汇总,考虑到各种印刷错误和勘误,特写了此篇文章。更多详细说明可参考《Puppet实战》书籍。
Puppet命名规范:
约定说明:
1
2
3
4
5
6
7
|
小写字母:
"a-z"
大写字母:
"A-Z"
数字:
"0-9"
句号:
"."
下划线:
"_"
连字符:
"-"
冒号:
":"
|
主机命名:
1
2
|
规范:/\A[a-z0-
9
._-]+\Z/
推荐:角色-运营商-机房-IP.系统.域名 web-cnc-bj-
174.129
.
158.192
.centos.linuxtone.org
|
模块命名:
1
2
|
规范:\A[a-z][a-z0-9_-]*\Z
备注:必须以小写字母开头
|
类命名:
1
2
3
|
规范:单个类 \A[a-z][a-z0-9_-]*\Z 类::子类 \A([a-z][a-z0-9_-]*)?(::[a-z][a-z0-9_-]*)*\Z
备注:必须以小写字母开头
eg. Class nginx Class nginx::install
|
资源命名:
1
2
|
规范:可以是任意字符,但对英文大小写敏感,通常只受限于底层操作系统,为资源命名时都以作用名命名
eg.
package
{
'nginx'
: }
|
变量命名:
1
2
3
4
5
|
规范:\A\$[a-zA-Z0-9_]*\Z
eg. $net_ipv4_ip_forward =
'1'
类中变量引用:
规范:类::子类::变量 \A$([a-z][a-z0-9_-]*)?(::[a-z][a-z0-9_]*)*::[a-zA-Z0-9_]+\Z
$sysctl::params::net_ipv4_ip_forward
|
参数命名:
1
2
|
规范:\A$[a-z][a-z0-9_]*\Z
备注:必须以美元符号$开头,且第一个字符必须是小写字母
|
标签命名:
1
2
|
规范:\A[a-z0-9_][a-z0-9_:\.\-]*\Z
备注:必须以小写字母开头
|
本文转自凌激冰51CTO博客,原文链接:http://blog.51cto.com/dreamfire/1348603,如需转载请自行联系原作者