我想使用vcsrepo模塊來檢出一個SVN回購。繼承人的代碼頁我用:傀儡SVN退房與vcsrepo不工作
package { $repo_package:
ensure => installed,
}
vcsrepo { "${doc_root}${fqdn}/src":
ensure => present,
provider => $repo_provider, #svn
source => $repository, #svn+ssh://remoterepo.com/path/to/trunk
user => $deploy_user,
owner => 'www-data',
group => 'www-data',
require => [ File["/home/${deploy_user}/.ssh/${deploy_private_key}"], Package["${repo_package}"] ], #making sure ssh key is there and that svn is installed
}
當我運行它,我得到這個錯誤:
Error: /Vcsrepo[/checkout/destination/path]: Could not evaluate:
Execution of '/usr/bin/svnlook uuid /checkout/destination/path'
returned 1: svnlook: E000002: Can't open file
'/checkout/destination/path/format': No such file or directory
我看着svnlook的這是在看回購,對我似乎錯誤在於這段代碼試圖在/ checkout/destination /路徑中創建一個回購站,而不是僅僅試圖將代碼簽出到那裏。
總結我的問題:vcsrepo模塊試圖創建一個新的repo,還是應該只是將文件檢出到指定的目標路徑?
如果是後者,我會在哪裏出錯?
所以這個問題解決了兩個問題:vcsrepo不支持svn的用戶選項,所以我必須爲ssh標識創建一個.ssh/config文件。其次,我之前已經聲明瞭src文件夾,並且由於它已經存在,所以它將更多的處理爲更新,失敗。所以一旦刪除了src文件夾,這是很好的。 – Tybul
你應該考慮提交你自己的問題的答案,並接受它作爲答案,以便將來的SO用戶可以受益。 – ptierno
並提出一個問題https://github.com/puppetlabs/puppetlabs-vcsrepo並提出拉請求,如果可以修復它。你可以從這個方面學到很多東西,我做了很多。 – BMW