使用chef.recipe_url和受密码保护的网站

时间:2014-01-16 21:16:34

标签: chef vagrant

我正在使用vagrant来编写脚本部署,我的Vagrantfile中的配置子句如下所示:

config.vm.provision :chef_solo do |chef|
    chef.recipe_url = "http://our.server.com:8081/artifactory/cookbooks/cookbooks.tar.gz"
    chef.add_recipe "vagrant::vagrant_default"
end

问题是我们的Artifactory存储库支持HTTP身份验证;正在运行的chef-solo给我们一个401 Unauthorized (OpenURI::HTTPError)错误。我尝试将网址更改为http://user:pass@our.server.com:8081/artifactory/cookbooks/cookbooks.tar.gz,但它不起作用。

如何访问HTTP身份验证后的cookbook URL?

1 个答案:

答案 0 :(得分:1)

您可以传递网址中的凭据吗?像这样:

chef.recipe_url = "https[s]://#{the_user}:#{the_password}@our.server.com:8081/artifactory/cookbooks/cookbooks.tar.gz"

我使用类似于使用remote_file下载。