As variáveis não são analisadas dentro de aspas simples. Use aspas duplas quando precisar interpolar variáveis $.
Estou tentando criar um arquivo com base em modelos, mas estou recebendo um erro de que o (s) modelo (s) não pode ser encontrado.
Minha configuração de diretório é / etc / puppet / modules // templates /
Em modelos, se tiver um diretório para cada host, além de um modelo comum. No diretório do host, tenho um modelo específico para esse host.
classe {
file { "/tmp/<file>":
ensure => present,
content => template('<module>/${hostname}/default.erb', '<module>/common.erb'),
audit => content,
notify => File["/tmp/<file2>"],
}
file { "/tmp/<file2>":
ensure => present,
source => "/tmp/file",
audit => content,
}
}
quando eu executo o agente fantoche, recebo o erro na opção de conteúdo da primeira declaração de arquivo. Não sei se a função template precisa dos templates diretamente sob o diretório template ou se não está interpretando corretamente a variável hostname.
As variáveis não são analisadas dentro de aspas simples. Use aspas duplas quando precisar interpolar variáveis $.