Mate um manifesto de fantoche

4

Digamos que eu tenha um manifesto que tenha uma ação diferente para cada versão do Debian

case $lsbdistcodename{
'squeeze':{//stuff}
'lenny' : {//stuff}
default : die

Eu quero que o manifesto lance um erro fatal. Eu acho que a questão é, como eu morro (se você quiser)?
Agente de marionetes / versão mestre 0.24.6.

    
por NickP 10.04.2012 / 20:01

1 resposta

7

Você pode usar a função fail para isso. Eu costumo fazer algo assim:

class postfix::params {
  case $::operatingsystem {
    Debian, Ubuntu: {
      $postfix_package_name       = 'postfix'
      $postfix_postmap_command    = '/usr/sbin/postmap'
      $postfix_service_name       = 'postfix'
    }
    default: { fail("${::hostname}: Module ${::module_name} does not support operatingsystem ${::operatingsystem}") }
  }
}

Isso faz com que o módulo falhe nos nós do Puppet que não estão rodando Debian ou Ubuntu.

Ah, e por favor, pelo amor de tudo que é bom e sagrado, atualize sua instalação do Puppet. 0,24 é antigo e não acho que seja mais suportado. Os Puppetlabs fornecem pacotes estáveis atualizados (veja apt.puppetlabs.com), ou você pode usar aqueles do link .

    
por 10.04.2012 / 20:17

Tags