Como verificar a versão do Apache no Puppet

1

Eu preciso aplicar uma configuração de controle de acesso diferente, dependendo se um servidor está usando o Apache 2.2 ou 2.4. Presumivelmente, isso requer uma verificação de if na versão do Apache.

Gostaria de saber se é isso que devo fazer:

if versioncmp($apache_version, '2.4') >= 0 {
  requires     => 'all denied',
else
  order        => 'deny,allow',
  deny         => 'from all',
}

Uma preocupação que tenho com isso é que parece estar verificando a versão explícita. E se a versão for realmente 2.4.6?

$apache_version é atribuído no topo da classe como

$apache_version =  $::apache::apache_version

Eu nem sei se isso vai funcionar porque não tenho certeza se a turma está ciente do módulo ::apache .

Apesar de ver comentários de que tais verificações não devem ser feitas dentro de um recurso ( apache::vhost neste caso), eu inseri o cheque. Razão é que eu não tenho certeza de como eu faria uma atribuição de variável multilinha de tal forma que eu poderia substituir

order    => 'deny,allow',
deny     => 'from all',

com algo como

else
  $apache2.2_ac
}

Se alguém puder me indicar a direção correta disso, eu ficaria muito grato.

    
por theillien 05.07.2018 / 17:29

0 respostas