使用0.5.2 Packer。在conf文件中获得以下打包程序配置程序。
{
"type": "puppet-masterless",
"manifest_file": "site.pp",
"module_paths": ["puppet_modules"],
"execute_command": "{{.FacterVars}}{{if .Sudo}} sudo -E {{end}}/opt/ruby/bin/puppet apply --verbose --modulepath='{{.ModulePath}}' {{if ne .HieraConfigPath \"\"}}--hiera_config='{{.HieraConfigPath}}' {{end}} {{if ne .ManifestDir \"\"}}--manifestdir='{{.ManifestDir}}' {{end}} --detailed-exitcodes {{.ManifestFile}}"
},
运行时,无法上传木偶模块。
virtualbox-iso: Provisioning with Puppet...
virtualbox-iso: Creating Puppet staging directory...
virtualbox-iso: Uploading local modules from: puppet_modules
virtualbox-iso: Unregistering and deleting virtual machine...
virtualbox-iso: Error deleting virtual machine: VBoxManage error:
virtualbox-iso: Deleting output directory...
Build 'virtualbox-iso' errored: Error uploading modules: lstat /Users: no such file or directory
打包器验证工作正常。看来打包器没有使用模块清单的登台目录。这个" /用户"困扰我,看起来像OSX目录:/
有什么想法吗?
答案 0 :(得分:0)
找到https://github.com/mitchellh/packer/issues/863的一些线索。
我在其中一个木偶模块中添加了一个符号链接。
ls -lR . | grep ^l
lrwxrwxrwx 1 foo foo 37 févr. 3 14:30 nodejs -> /Users/william/projects/puppet-nodejs
只需添加即可将其删除,一切正常(请参阅Find and delete all symlinks in home folder, having trouble making it work)
find /path -type l | xargs rm