Depois de tentar alguns becos sem saída e de comentários do @Mike Renfro, desenvolvi os seguintes passos (sinta-se à vontade para melhorá-lo):
-
Não instale pacotes do código-fonte com o Puppet (demora muito e traz muitos problemas)
-
Sempre crie pacotes binários. Pode ser facilmente redistribuído e testado.
-
Configure seu próprio repositório - para o Debian, uma boa escolha é reprepro , a documentação parece ser horrível, mas há uma marionete módulo para instalação: puppet-reprepro . Adicionar novo pacote é muito fácil:
$ reprepro -Vb . includedeb squeeze ~/packages/my_package.deb
-
Crie novos pacotes com fpm . O processo de construção de um pacote é surpreendentemente simples e muito mais fácil do que escrevê-lo no roteiro de fantoches.
-
Instale os pacotes simplesmente com:
package { "leiningen": ensure => present }
-
Você pode simplesmente obter pacotes que ainda estão na versão de teste e implantá-los com seu repositório local.
- Use hiera para configuração específica da máquina, em manifestos devem ser apenas modelos geralmente reutilizáveis para determinadas tarefas (como web-server, db-server, etc.)