我在 puppet 配置中使用 vagrant。我的 vagrantfile 中的配置设置如下所示:
config.vm.provision "puppet" do |puppet|
puppet.manifests_path = "puppet/manifests"
puppet.hiera_config_path = "puppet/hiera.yaml"
puppet.module_path = "../puppet/modules"
puppet.manifest_file = "site.pp"
end
我有另一个不受 vagrant 管理的虚拟机,并希望在其上应用 puppet 配置。我想使用 vagrant 正在使用的确切“puppet apply”命令。
有人可以告诉我 vagrant 使用的确切“puppet apply”命令吗?
最佳答案
它是开源的,你可以随时查看源代码: plugins/provisioners/puppet/provisioner/puppet.rb 。相关方法是 run_puppet_apply
。和/或您可以在测试配置上启用详细日志记录并检查日志以查看命令行。
那是行不通的。确切的 vagrant puppet 配置命令包含对 vagrant 文件所在的临时附加文件夹的引用。
没有人能够做到这一点,因为确切的命令特定于您的环境。
我的建议是从日志中提取应用于您现有 VM 之一的命令,并将其用作构建您自己的手动命令的起点。相关的命令项是模块路径(它将包含对临时共享文件夹的引用,基本上使 ../puppet/modules
在 VM 中可见)、您的 hiera 文件(它被“上传”到 VM 到一个临时文件中)和 FACTER
定义,如果任何。
关于vagrant - vagrant 用于 puppet 配置的确切 puppet 命令是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27674176/