使用 python-poetry 发布到 test.pypi.org

Leo*_*ter 23 python pypi python-poetry

我一直在研究使用 Poetry 来发布 Python 项目。我想使用一个类似于Python Packaging Authority 教程的小项目来测试发布过程。由于这是一个简单的项目,我想将其发布到 pypi 的测试实例而不是真实实例。Test.pypi 需要一个令牌才能发布,但我不知道如何让 Poetry 使用我的测试 pypi 令牌。我能找到的所有文档都使用 HTTP 基本身份验证进行 test-pypi,但该身份验证不再有效。

我使用以下命令添加了存储库:

poetry config.repositories.test-pypi https://test.pypi.org
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下命令创建令牌:

poetry config pypi-token.test-pypi my-token
Run Code Online (Sandbox Code Playgroud)
poetry config test-pypi-token.test-pypi my-token
Run Code Online (Sandbox Code Playgroud)

我在诗歌文档中找不到添加标记的语法的良好解释,因此我们将不胜感激。

Tom*_*zen 29

我已成功使用令牌并poetry上传到 PyPI 和 TestPyPI。我相信您只需要通过附加以下内容来更改您正在配置的 TestPyPI URL /legacy/

poetry config repositories.test-pypi https://test.pypi.org/legacy/
Run Code Online (Sandbox Code Playgroud)

然后,您可以像之前一样创建令牌:

poetry config pypi-token.test-pypi <your-token>
Run Code Online (Sandbox Code Playgroud)

https://test.pypi.org/legacy/是用于上传包的 API 端点。它在文档中有点隐藏,但这里提到这是您应该使用的 URL。repositories.另请注意, and中句点之后的名称pypi-token.需要匹配,这就是我们指定的原因:repositories.test-pypipypi-token.test-pypi


Jos*_*nde 21

一次性设置(每个主机/环境)

PYPI测试

  • 将存储库添加到诗歌配置中
    poetry config repositories.test-pypi https://test.pypi.org/legacy/

  • 从https://test.pypi.org/manage/account/token/获取令牌

  • 使用存储令牌poetry config pypi-token.test-pypi pypi-YYYYYYYY

注意: “test-pypi”是要发布到的“存储库”(又名“索引”)的名称。

PYPI生产

每次需要发布时

凹凸版

  • poetry version prerelease或者
  • poetry version patch

诗歌出版

测试PyPi

  • poetry publish -r test-pypi

PyPi

  • poetry publish