2014-08-31 2 views
2

Так у меня есть Vagrant файл настроить так:Vagrant + Кукольный puppet.module_path не работает

VAGRANTFILE_API_VERSION = "2" 

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| 
    config.vm.box = "hashicorp/precise64" 

    config.vm.provision "puppet" do |puppet| 
    puppet.manifests_path = "manifests" 
    puppet.manifest_file = "site.pp" 
    puppet.module_path = "modules" 
    puppet.options = "--verbose --debug" 
    end 
end 

Теперь, когда я vagrant ssh в мою виртуальную машину, а затем запустить puppet module install puppetlabs-apache, я получаю следующее сообщение об ошибке:

Error: Could not install module 'puppetlabs-apache' (latest) Directory /home/vagrant/.puppet/modules does not exist

Так что я попытался было:

mkdir -p /home/vagrant/.puppet/modules

следуют:

puppet module install puppetlabs-apache

и это сработало!

Но файлы модулей не отображаются на моей главной машине в каталоге "modules", который я установил в своем Vagrantfile. Поэтому я думаю, что puppet.module_path не работает.?

Спасибо :)

+0

Вы использовали один и тот же «кукольный модуль» как 'root', а не пользователь' vagrant'? –

+0

Yup. Тогда он говорит, что '/ etc/puppet/modules' не существует. –

ответ

0

, ссылающийся puppet внутри виртуальной машины не то же самое, как кукольные, как она используется для предоставления услуг от хоста.

Ресурсы Марионеток, которые используют Вагрант, являются частью проекта Vagrant. Как вы можете видеть, команда Кукольный внутри VM использует либо

  • локальный конфигурационный кукольный и ресурсы в ~/.puppet или
  • глобальных ресурсов в /etc/puppet

Конфигурация Кукольный не разделяется между хозяином и VM ,

+0

Тогда как установить марионеточные модули? –

+0

Если вам нужны модули во время подготовки, вы устанавливаете их [в свой бродячий проект] (https://groups.google.com/d/msg/vagrant-up/zLCnqzCYckA/xAx27C3BfT4J). После завершения подготовки вы можете просто использовать Puppet внутри виртуальной машины. Необходимые модули необходимо установить там снова. –