2014-01-16 56 views
1

我使用的癟三對腳本的部署,並在我的Vagrantfile我的供應條款如下:使用chef.recipe_url用密碼保護的網站

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認證;運行廚師獨奏給我們一個401 Unauthorized (OpenURI::HTTPError)錯誤。我嘗試將網址更改爲http://user:[email protected]:8081/artifactory/cookbooks/cookbooks.tar.gz,但它不起作用。

如何訪問HTTP身份驗證後的食譜URL?

回答

1

你可以通過URL中的憑據?事情是這樣的:

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

我使用的是類似於使用remote_file下載。

+0

試過了,正如問題中提到的那樣。 –

+0

很抱歉。包括用戶名和密碼在內的url是否可以在網頁瀏覽器中使用你有沒有嘗試https? – sudocode

+0

它在Web瀏覽器中工作。雖然我們會到達那裏,但這還不是https。最終。 –