我正在整理一些 puppet 脚本 - 我有一个需要以非常相似的方式部署的服务列表(可能大约 20 个左右)。
- 停止现有服务
- 从关系中获取包裹
- 解压到目录
- 设置配置变量
- 启动服务
问题是#4。每个服务的配置略有不同。我想使用 augeas 为每个服务设置配置,并且为每个服务的配置定义一个定义,然后将该定义加载到主服务定义中似乎是有意义的。
所以,我有如下内容:
definition service ($serviceName) {
//stopping, wget, unzip
config[downcase($serviceName)] { "${servicename}_config":
serviceName => $serviceName
}
//start
}
然后,我在配置模块的清单文件夹“foo.pp”中有(例如)
definition config::foo {
//set some stuff
}
由于我确定我已经违反但不知道的各种规则,这不起作用。有没有一种“标准”的方式来做我想做的事情?