没有人能够在我的公司内解释这一点,所以如果你能够解决这个KUDOS给你的话!
在我的木偶回购中我设置如下:
environment/ops/modules/papertrail
├── files
│ ├── elasticsearch_log_files.yml
│ ├── log_files.yml
│ └── remote_syslog.conf
|
└── manifests
├── elasticsearch.pp
└──init.pp
└── templates
└── elasticsearch_log_files.yml.erb
我的elasticsearch.pp文件包含以下内容:
class papertrail::elasticsearch inherits papertrail {
$source = "puppet:///modules/papertrail"
file { "/etc/log_files.yml" :
mode => 0644,
owner => root,
group => root,
ensure => present,
source => "$source/elasticsearch_log_files.yml",
}
}
现在,当我尝试将最后一行更改为:
" $源/ elasticsearch_log_files.yml.erb",
或
" $源/模板/ elasticsearch_log_files.yml",
Puppet出错并说它无法找到该文件:
错误:/Stage[main]/Papertrail::Elasticsearch/File[/etc/log_files.yml]:无法评估:无法从环境操作源检索信息:/// modules / papertrail / elasticsearch_log_files.yml.erb
奇怪的是,当我使用以下节来只包含yml文件而不是erb时,它工作正常并且文件会在目标上填充:
"$source/elasticsearch_log_files.yml",
我如何包含我的erb?我有动态变量,我需要分配给配置文件log_files.yml,我到目前为止无法这样做=(
答案 0 :(得分:0)
这已经解决了。我没有将模板目录添加到我的git commit中,所以一旦添加了git add。它奏效了。