У меня есть переменная hiera в шаблоне erb для одной проверки состояния.
<% if @server_name == 'jira-dev-api'
После обновления до версии 5 эта переменная в цикле if
не работает.Но это примет правильные значения без оператора if
в шаблоне erb.
Я попробовал поиск кукол для отладки hiera, и он работает нормально.Переменная определяется в том же модуле, что и ниже.
module_name::install_confluence_apache_config::server_name=xyz
Когда я добавил область с абсолютным путем, как показано ниже,
scope['module_name::install_confluence_apache_config::server_name']
, это работает.
Есть ли какие-либо изменения в erb scoping в выражении if
в марионетке 5?Я использовал Puppet 3 с открытым исходным кодом.
Добавление дополнительной информации.
a) имя_сервера - это переменная, определенная в файле yaml "node /% {:: clientcert}".б) Я использовал Puppet 3.8, и рабочий шаблон erb был таким, как показано ниже
<% if @server_name == 'jira-dev-api'
в) обновлен до марионетки 5.5. Но заметил, что когда я ссылаюсь на переменную server_name в erb в операторе if, как указано выше, значение равноне получается. Но работает, когда я использую
scope['module_name::install_confluence_apache_config::server_name']
Также эта проблема только внутри, если в шаблоне erb.