1. puppet的ERB的template若想去掉ruby语句产生的空白行,那么<%- statement -%> 除了加上“-”外,>之后也不能有空格。
2. 变量的作用域 , reference超出作用域的变量需要用scope.lookupvar这个函数。
3. ERB完全支持Ruby语法,比如要匹配主机名匹配,应该是<%- if(@hostname =~ /^aws-/) -%> #匹配aws-的主机名。Ruby其他逻辑&& 和|| 也适用。
4. 若要cron某个随机时刻执行(某些场景下,比如需要download几个大文件, 同一时间调度会导致系统负载过高或者带宽不够)。
style="white-space:normal;" />
$minute => fqdn_rand(60)
# 或者用下面的:
$minute = inline_template("<%= Time.at( fqdn.hash % 10000 ).strftime('%M') %>")
cron { my-cron:
minute => $minute,
...
}
可以在class里面写一个define。
阅读(1052) | 评论(0) | 转发(0) |