gpt4 book ai didi

python - 在 mercurial hook 中获取经过身份验证的用户

转载 作者:太空宇宙 更新时间:2023-11-04 01:26:19 24 4
gpt4 key购买 nike

我有一个 Apache httpd+mod_wsgi+Mercurial 设置,我想在 Hook 中获得经过身份验证的用户,特别是 pretxnchangegroup Hook 。我读过(很可能是错误的)os.environ['REMOTE_USER'] 应该包含该信息,但看起来不像。

我目前有一个扩展,可以将 os.environ 打印到 stderr

import sys
import os

def pretxnchangegroup_hook(ui, repo, **kwargs):
print >> sys.stderr, 'pretxnchangegroup activated'
print >> sys.stderr, os.environ

def reposetup(ui, repo):
ui.setconfig('hooks', 'incoming.accesscontrol', pretxnchangegroup_hook)

使用 hg -v push 这段代码输出:

remote: calling hook incoming.accesscontrol: <function pretxnchangegroup_hook at 0x7f8310221230>
remote: pretxnchangegroup activated
remote: {'LANG': 'C', 'TERM': 'xterm', 'SHLVL': '2', 'PWD': '/', 'PATH': '/sbin:/usr/sbin:/bin:/usr/bin', '_': '/usr/sbin/httpd'}

最佳答案

好的,我希望这对我以外的任何人都有帮助,因为我在其他任何地方都找不到提到过的内容。

通过身份验证的用户 (REMOTE_USER) 和许多其他信息可以在 repo.ui.environ map 上找到,其中 repo 是一个传递给 Hook 的参数。

我想这张 map 与 mod_cgi 下 os.environ 中的 map 相同。

关于python - 在 mercurial hook 中获取经过身份验证的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17678920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com