0

我想在运行/启动 vagrant 时通过命令行添加额外的参数

例如:

vagrant up extraParam=test

上面的命令将启动 vagrant 并以 extraParam 作为变量运行 puppet

我知道如何将参数传递给 puppet,即:

config.vm.provision :puppet do |puppet|
    puppet.facter = {
        "extraParam" => "extraParamValue"
    }
}

那可能吗?也许至少作为 --option=extraParam 但我如何通过 vagrant 访问它?

4

1 回答 1

1

不幸的是,目前这似乎是不可能的,至少不是简单的。这个答案似乎有一个有用的建议,但仍然需要在您的 Vagrantfile 或配置配置中进行额外的工作。

vagrant provision 命令可用的唯一选项是:

$ vagrant provision -h
Usage: vagrant provision [vm-name] [--provision-with x,y,z]
    --provision-with x,y,z       Enable only certain provisioners, by type.
    --[no-]parallel              Enable or disable parallelism if provider supports it.
    -h, --help                   Print this help

相反,我所做的是在处理特定功能时编辑 Vagrantfile(在我的情况下,我使用 Ansible,它的标记功能只运行一组播放(使用标签)),并添加我希望的参数在供应商定义块内传递。

于 2014-01-15T15:51:16.873 回答