mercurial hgwebdir erro com basicauth no apache2

1

Estou tendo um erro estranho que estou tentando rastrear. Eu estava tentando configurar o mercurial no meu servidor doméstico neste fim de semana. Parece que estou correndo para o ponto em que estou tentando fazer com que os repositórios sejam publicados corretamente.

Estou executando o Ubuntu 10.04 LTS com o Mercurial versão 1.4.3.

Eu segui o guia hgwebdir e tudo parece funcionar muito bem, posso puxar e empurrar meus repositórios locais. Então eu tentei adicionar autenticação básica mudando

ScriptAliasMatch     ^/hg(.*)      /var/hg/hgwebdir.cgi$1
<Directory "/var/hg">
    Options ExecCGI FollowSymLinks
    AllowOverride None
</Directory>

para

ScriptAliasMatch     ^/hg(.*)      /var/hg/hgwebdir.cgi$1
<Directory "/var/hg">
    Options ExecCGI FollowSymLinks
    AllowOverride None
    AuthType Basic
    AuthName hgwebdir
    AuthUserFile /usr/local/etc/httpd/users
    Require valid-user
</Directory>

Isso funciona exatamente como eu esperava quando navego para o diretório pelo meu navegador da Web, mas quando eu hg push obtenho uma longa seção repetindo

File "/usr/lib/python2.6/urllib2.py", line 369, in _call_chain
  result = func(*args)
File "/usr/lib/python2.6/urllib2.py", line 855, in http_error_401
  url, req, headers)
File "/usr/lib/python2.6/urllib2.py", line 833, in http_error_auth_reqed
  return self.retry_http_basic_auth(host, req, realm)
File "/usr/lib/python2.6/urllib2.py", line 843, in retry_http_basic_auth
  return self.parent.open(req, timeout=req.timeout)

seguido por

File "/usr/lib/pymodules/python2.6/mercurial/keepalive.py", line 249, in do_open
  self._start_transaction(h, req)
File "/usr/lib/pymodules/python2.6/mercurial/url.py", line 419, in _start_transaction
  return keepalive.HTTPHandler._start_transaction(self, h, req)
File "/usr/lib/pymodules/python2.6/mercurial/keepalive.py", line 342, in _start_transaction
  h.endheaders()
File "/usr/lib/python2.6/httplib.py", line 904, in endheaders
  self._send_output()
File "/usr/lib/python2.6/httplib.py", line 776, in _send_output
  self.send(msg)
File "/usr/lib/pymodules/python2.6/mercurial/url.py", line 247, in _sendfile
  connection.send(self, data)
File "/usr/lib/pymodules/python2.6/mercurial/keepalive.py", line 519, in safesend
  self.connect()
File "/usr/lib/pymodules/python2.6/mercurial/url.py", line 273, in connect
  keepalive.HTTPConnection.connect(self)
RuntimeError: maximum recursion depth exceeded while calling a Python object

Estou um pouco perdido neste. Eu realmente não tenho certeza porque adicionar a autorização parece funcionar bem através do meu navegador da web, mas jogue esses erros de hg . Qualquer ajuda seria muito apreciada.

    
por Dio 26.09.2010 / 22:37

1 resposta

1

recebi uma resposta dos ótimos amigos do canal de IRC do Mercurial. Isso foi endereçado em Issue2255 . Eu fiz as alterações e funciona como um encanto.

    
por 26.09.2010 / 23:20