[英]Why puppet module install --force does not install dependency & how to workaround?
我正在與vagrant&puppet合作安裝我的開發環境。
我使用Shell Provisioner安裝人偶的模塊:
config.vm.provision :shell do |shell|
shell.inline = "puppet module install --force garethr-docker"
end
但是,當我啟動vagrant provision
,我看到puppet不會安裝模塊依賴項(此特定模塊的stdlib,apt和stahma-epel)。
另一方面,如果我刪除--force
,則可以正確安裝依賴項,但是由於puppet第二次拋出錯誤(“模塊已安裝”),所以vagrant provision
只能工作一次。
我該如何克服呢? 謝謝。
PS,我完整的Vagrantfile:
# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "phusion/ubuntu-14.04-amd64"
config.vm.provision :shell do |shell|
shell.inline = "puppet module install --force garethr-docker"
end
config.vm.provision "puppet" do |puppet|
puppet.manifests_path = "puppet/manifests"
puppet.manifest_file = "dockervm.pp"
puppet.options="--verbose --debug"
end
end
在嘗試再次安裝之前,請檢查是否已安裝該模塊。 例如:
{ puppet module list | grep garethr-docker > /dev/null; } || \
puppet module install garethr-docker
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.