尝试使用puppet中的vcsrepo模块为devstack安装GIT存储库。使用https://github.com/ ...但是在防火墙后面。有一个代理服务器可用于http,https和FTP访问Internet。
使用此模块时,有没有办法包含代理?我在vcsrepo中找不到任何似乎有用的东西。如果需要,愿意调整(破解)模块。
答案 0 :(得分:1)
您可以查看模块vcsrepo / lib / puppet / provider / vcsrepo / git.rb
位于文件底部附近:
def git_with_identity(*args)
在上面一行中添加以下内容:
if @resource.value(:http_proxy)
ENV['http_proxy'] = @resource.value(:http_proxy)
ENV['https_proxy'] = @resource.value(:http_proxy)
end
接下来编辑vcsrepo / lib / puppet / type / vcsrepo.rb - 在最后一次结束之前添加:
newparam :http_proxy do
desc "http proxy to use to communicate with the outside world"
end
现在在你的木偶清单中你可以添加http_proxy var:
vcsrepo { '/var/www/blash':
ensure => present,
provider => git,
http_proxy => 'http://prxy.local:8080',
require => Class['git-core'],
source => 'http://github.com/blah/blah.git';
}
答案 1 :(得分:1)
我能够在不修改vcsrepo代码的情况下解决这个问题。 相反,我在root的主目录中创建了一个.gitconfig文件,该文件指定了https / http协议的代理信息。