Como incluir, opcionalmente, um parâmetro em uma instância de classe Puppet

2

Estou tentando incluir, opcionalmente, um parâmetro em uma instância de classe de marionetes. Se um valor for fornecido, o parâmetro deve ser passado para a classe e, se estiver vazio, não deve ser.

Esse é o código que eu tenho até agora:

class vcs (

    $path,
    $ensure,
    $provider,
    $source = '',
    $revision = '',
    $user = ''

)

{
    vcsrepo { $path:
      ensure   => $ensure,
      provider => $provider,
      source => $source ? {
        '' => nil,
        default => $source
      }
    }   

}

Eu tentei definir o valor do parâmetro source como nil caso ele não esteja definido, mas o Puppet não parece entender nem nil nem null . (Recebo um erro fatal: repository 'null' does not exist )

Basicamente, quero poder chamar a classe vcs , com apenas os parâmetros path e ensure a serem exigidos e todos os outros como opcionais.

    
por ddario 16.05.2013 / 15:38

1 resposta

2

A solução foi usar undef em vez de nil / null .

    
por 16.05.2013 / 17:04

Tags