Puppet vcsrepo detrás del firewall?

Tratando de usar el module vcsrepo de títere para instalar un repository GIT para devstack. Usando https://github.com/ … Pero estoy detrás de un firewall. Hay un server proxy disponible para acceso http, https y FTP a Internet.

¿Hay alguna manera de include el proxy al usar este module? No encontré nada en el vcsrepo que parece funcionar. Dispuesto a modificar (hackear) el module, si es necesario.

Solutions Collecting From Web of "Puppet vcsrepo detrás del firewall?"

Puede search en el module vcsrepo / lib / puppet / provider / vcsrepo / git.rb

cerca de la parte inferior del file en:

def git_with_identity(*args) 

agregue lo siguiente justo debajo de la línea anterior:

 if @resource.value(:http_proxy) ENV['http_proxy'] = @resource.value(:http_proxy) ENV['https_proxy'] = @resource.value(:http_proxy) end 

Luego edite vcsrepo / lib / puppet / type / vcsrepo.rb – antes del último final, agregue:

  newparam :http_proxy do desc "http proxy to use to communicate with the outside world" end 

Ahora en tu manifiesto de marionetas puedes agregar 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'; } 

Pude solucionar esto sin modificar el código vcsrepo. En su lugar, creé un file .gitconfig en el directory de inicio de la raíz, que especifica la información del proxy para los protocolos https / http.