Applico una modifica incrementale alla mia installazione postgresql usando puppet.
sudo puppet apply --modulepath=/vagrant/puppet/modules -e "include iwd-postgresql"
Questo risultato nel seguente errore:
Error: Puppet::Parser::AST::Resource failed with error ArgumentError: Could not find declared class postgresql::globals at /vagrant/puppet/modules/iwd-postgresql/manifests/init.pp:6 on node target.intware.com
Wrapped exception:
Could not find declared class postgresql::globals
Ho installato il modulo puppetlabs / postgresql.
Se faccio una lista di burattini, vedo quanto segue:
[vagrant@target ~]$ puppet module list
/home/vagrant/.puppet/modules
├── puppetlabs-apt (v2.2.0)
├── puppetlabs-concat (v1.2.4)
├── puppetlabs-postgresql (v4.6.0)
└── puppetlabs-stdlib (v4.9.0)
/ usr / share / puppet / modules (nessun modulo installato)
Qualche idea? Sto eseguendo il comando appply su una macchina virtuale vagabonda nella cartella home di vagabondo.
risposte:
2 per risposta № 1I commenti di @ChrisPitman mi hanno indirizzato nella giusta direzione: avevo bisogno di impostare il modulepath corretto per includere sia i nostri moduli personalizzati che quelli pre-costruiti.
Quanto segue ha funzionato per me:
sudo puppet apply --modulepath=/vagrant/puppet/modules:/etc/puppet/modules -e "include iwd-postgresql"
0 per risposta № 2
Quando hai usato il comando puppet apply
stavi usando questo percorso /home/vagrant/puppet/modules
, ma il tuo modulo è installato sotto /home/vagrant/.puppet/modules
, comunque se stai usando vagrant
, Penso sia meglio se tu il Vagrantfile
per usare puppet e personalizzare il tuo VM