有问题上传python到Nexus 3.8 - 401错误

时间:2018-02-15 17:11:11

标签: python nexus sonatype

我刚刚将Nexus升级到3.8.0-02 OSS以获得Python Pypi支持。

我已经创建了一个pypi托管和一个pypi-proxy以及一个额外的pypi-group来合并它们。我已经给了自己与这些存储库相关的所有角色。一切正常,UI和pip可以很好地查询代理存储库(没有凭据)。

问题是我无法从python中的setuptools发布。我的〜/ .pypirc模式0600并包含: [distutils的] index-servers =    关系

[关系] 存储库:https://ld3-nexus-3-kev.pibenchmark.com:8443/nexus/repository/pypi-hosted/ 用户名:kevin_thorpe 密码:XXXXXXX

这个用户名和密码适用于Maven,所以我知道它不是那样的。如果我 python setup.py register -r nexus 那么我会收到401响应。与文档中的 twine 相同的结果。奇怪的是,什么都没有登录显然是失败的登录。流量正在流向服务器,但我无法查看数据包中的内容。我已尝试过我的LDAP用户和本地用户,但结果相同。

如何调试连接问题?它似乎只是python的问题

2 个答案:

答案 0 :(得分:1)

我可以用以下内容重现错误:

python3 setup.py register -r myserver

在request.log中:

10.255.0.3 - - [16/Feb/2018:19:12:51 +0000] "POST /nexus/repository/pypi/ HTTP/1.1" 401 0 3 "Python-urllib/3.6"

请注意第二个-应该是用户名,但NONE到达那里。

使用curl的输出示例: curl -u admin -X POST https://my_awesome_nexus_server/nexus/repository/pypi/

10.255.0.3 - admin [16/Feb/2018:19:14:45 +0000] "POST /nexus/repository/pypi/ HTTP/1.1" 500 1948 15 "curl/7.55.1"

在Docker Container上测试,最新(3.8)和3.7。在我看来,问题是在客户端。

<强>更新 管理以使其与twine(在virtualenv中)一起使用:

python3 setup.py build
twine upload -r myserver dist/mypackage-0.1.0.tar.gz

它可以在Nexus3(3.7)上找到。

答案 1 :(得分:0)

我对故障排除的建议是查看nexus.log和request.log以获取更详细的日志语句。这些可以在&#34; log&#34;中的数据目录中找到。子目录。

另一个选择是在https://issues.sonatype.org/projects/NEXUS/中提交一张票,看看Sonatype员工是否还有其他想法。如果你包含一个support.zip(在此处记录:https://help.sonatype.com/display/NXRM3/Support+Features#SupportFeatures-CreatingaSupportZIP)会很有帮助,当你这样做时会包含日志。

我为一些有点通用的建议道歉,但到目前为止,我从您的帖子详细信息中看到您的配置没有任何问题。