我在 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/

10-16 09:48