每次主分支上有更新时,都可以使用 github 操作发布到 PyPI。
例如,可以使用:https://github.com/marketplace/actions/publish-python-poetry-package
出于充分的理由,如果版本号未更新(“HTTP 错误 400:文件已存在。”),在 PyPI 上发布将失败。 (这里解释了很好的理由:https://pypi.org/help/#file-name-reuse)
然而,master 分支的内容有时可能会以无法证明更新版本号的方式进行更新(例如,如果更新的是 github 操作,而不是软件)。
推荐的处理方法是什么,如何实施?例如,是否可以仅在有版本更新时才触发发布的 github 操作?或者仅当源代码已更新时?或者有没有办法忽略 Http 错误 400(即,如果发生此错误,则不会获得失败标志)?
根据@sinoroc 的建议,似乎适合在新标签上发布。
---
name: pypi_publish
on:
push:
tags:
- '**'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Build and publish to pypi
uses: JRubics/[email protected]
with:
pypi_token: ${{ secrets.PYPI_TOKEN }}