Olá, puppeters:),
Espero que você possa me ajudar com uma situação. Ou seja, vou usar o fantoche para implantar muitos nós (quero dizer realmente muitos) com o Apache instalado. O problema que tenho é que, por enquanto, a única maneira de criar um vhost com um ServerName especificado é emitir o nome do servidor no arquivo principal do puppetmaster (site.pp). Parece algo assim:
case $::hostname {
hostname1: {vhost_default { 'hostname1.domain': }}
hostname2: {vhost_default { 'hostname2.domain': }}
Existe uma maneira de criar um arquivo vhost sem ter que emitir o nome. O que significa que o puppetmaster lê o nome do host e o escreve sozinho no template. O modelo é o seguinte (apenas a parte importante):
<VirtualHost *:80>
ServerName <%= fqdn %>
ServerAlias www.<%= fqdn %>
E o init.pp para o apache com a parte do modelo: define vhost_default () {
file { "/etc/apache2/sites-available/domain.conf":
owner => 'root',
group => 'root',
mode => 644,
content => template( 'apache/default_vhost.erb' ),
require => [ Package[ 'apache2' ] ]
Ou você pode pensar em outra maneira de implantar arquivos vache do apache? (Talvez sem diretiva ServerName?) Agradecemos antecipadamente.