Назад | Перейти на главную страницу

Как вы автоматически устанавливаете модули марионеток в `puppet apply`

Можно ли автоматически установить или включить модули марионетки в конфигурацию марионетки? Мне нужно вручную запустить puppet module install перед запуском puppet apply.

Я загружаю модули и сохраняю их в каталоге над моими Vagrantfile в котором я указал путь для поиска модулей, используя config.vm.provision :puppet, :module_path => "modules" а затем включить их в мой марионеточный манифест.

AFAIK это невозможно с 'vanilla' Puppet, но с библиотекарь-марионетка это возможно:

Librarian-puppet - это сборщик для вашей марионеточной инфраструктуры. Вы можете использовать librarian-puppet для управления модулями марионеток, от которых зависит ваша инфраструктура. Он основан на Librarian, фреймворке для написания сборщиков пакетов, которые представляют собой инструменты, которые разрешают, выбирают, устанавливают и изолируют зависимости проекта.

Librarian-puppet управляет вашими модулями / каталогом за вас на основе вашего файла Puppetfile. Ваш Puppetfile становится авторитетным источником того, какие модули вам требуются и в какой версии, теге или ветке.

После использования Librarian-puppet вы не должны изменять содержимое каталога модулей. Репозитории отдельных модулей должны быть обновлены, отмечены новой версией, а версия добавлена ​​в ваш файл Puppetfile.

Как сейчас, Vagrant имеет бродяга-библиотекарь-марионетка модуль.

Монтаж:

vagrant plugin install vagrant-librarian-puppet

Из ридми:

Vagrant автоматически запускает Librarian-Puppet перед любым этапом подготовки, поэтому просто настройте свой Puppetfile, как обычно.

Вы можете указать подкаталог, в котором будет запускаться librarian-puppet, используя конфигурационный ключ librarian_puppet.puppetfile_dir. Имейте в виду, что вам нужно будет явно указать путь к модулям в средстве подготовки: puppet, и этот путь должен существовать до запуска команд vagrant.