variáveis de marionetes

2

Estou tentando usar variáveis em meus módulos manifest.pp com pouca sorte

class mysoftware($version="dev-2011.02.04b") {
  File {
    links => follow
  }

  file { "/opt/mysoftware":
    ensure => directory
  }
  file { "/opt/mysoftware/share":
    source => "puppet://puppet/mysoftware/air/$version",
    recurse => "true",
  }
  }

Isso não parece estar funcionando quando eu atribuo isso a um nó através do arquivo nodes.pp.

Estou usando o puppetmaster 2.6.4 clientes puppetd são 0,25

    
por Joey BagODonuts 24.02.2011 / 23:23

2 respostas

2

Eu acredito que você precisa referenciá-lo assim:

source => "puppet://puppet/mysoftware/air/${version}",

Veja como eu uso algo semelhante:

class aliases($al="aliases") {
    file { "/etc/aliases":
        mode  => 640,
        source => "puppet:///files/sendmail/${al}",
        owner => "root",
        group => "root",
        before  => Exec["create aliases db"]
    }

     exec { "new_aliases":
        command => "/usr/bin/newaliases",
        subscribe => File["/etc/aliases"],
        alias => "create aliases db",
        refreshonly => true,
     }
}

Que eu faça referência a manifestos / nós.pp. Na verdade, não preciso fazer isso, mas configurá-lo e testá-lo em seu nome (meus outros exemplos teriam sido muito mais longos). Funciona como um encanto.

    
por 03.03.2011 / 17:23
1

Você está usando 2.6 ou mais? As classes com parâmetros são novas na versão 2.6, portanto, se você estiver usando uma versão mais antiga, isso não funcionará.

    
por 24.02.2011 / 23:29

Tags