Sua classe ufprovisioning::config
está definindo valores de variável diretamente de ufprovisioning::params
, mas você está definindo valores com a classe ufprovisioning
top-scope ao declará-la em profile::base
.
Deixe-me expressar de uma maneira um pouco diferente, caso isso não faça sentido. Você está definindo valores de parâmetro para init.pp via base.pp, que obtém valores padrão de params.pp. No entanto, essa lógica é quebrada porque o config.pp obtém valores diretamente do params.pp. Para resolver isso, o config.pp deve herdar valores do init.pp.
Você poderia corrigi-lo movendo as variáveis para os parâmetros ufprovisioning::config
class que herdam da classe de escopo superior como esta;
class ufprovisioning::config (
$webserver_manage = $::ufprovisioning::webserver_manage
$site_name = $::ufprovisioning::site_name
) inherits ufprovisioning {
assert_private()
nginx::resource::server { 'cclloyd.com':
ensure => present,
server_name => [$site_name],
www_root => "/var/www/${site_name}",
listen_port => 80,
ssl => false,
}
}
Mas, lembre-se, mesmo este não é mais o padrão sugerido usado com versões mais recentes do Puppet e do Hiera 5.