gpt4 book ai didi

python - 通过 Python 脚本不受信任的 SVN SSL 证书

转载 作者:太空宇宙 更新时间:2023-11-03 14:03:38 26 4
gpt4 key购买 nike

我现在有一个奇怪的场景。当我在构建服务器(独立于 SVN 服务器)上发出 svn info TXN REPO 命令时,它按预期工作并向控制台显示相关信息。

但是,当我使用 Python 编写脚本时,特别是子进程模块中的 Popen,它会向标准错误(控制台)打印一条消息 svn: E230001: Server SSL certificate untrusted

我尝试过的:

在脚本调用中使用 --non-interactive--trust-server-cert 标志。

通过脚本在 svn info 调用中传递用户名/密码。

上面两个好像都不生效,吐出和上面一样的错误。但是,从命令提示符手动运行相同的命令会成功,没有任何问题。我认为这可能与 python 打开一个到 SVN 服务器的新 session 有关,并且该 session 不是“可信”连接?但我不能确定。

我们的SVN服务器在一台windows机器上,版本是1.8.0

我们的构建服务器是运行 Jenkins 2.84 版的 Windows 机器。 Jenkins 执行启动 Python 脚本的批处理脚本,执行上述任务。

命令:svn_session = Popen("svn info --non-interactive --trust-server-cert --no-auth-cache -r %s %s"% (TXN, REPOS), stdout=管道,stderr=PIPE,shell=True)

** 编辑 **

当我将脚本中的 python 行复制并粘贴到同一台服务器上的交互式 python shell 时,该命令也按预期工作。所以问题在于脚本如何执行命令,而不是命令本身或 Python 如何运行该命令。**

有没有人遇到过这个?

最佳答案

以防将来有人看到这个。 Panda Pyjama 对此给出了详细的解答..

SVN command line in jenkins fails due to server certificate mismatch

关于python - 通过 Python 脚本不受信任的 SVN SSL 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46886937/

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