Skip to main content

Python SDK 发布

本文介绍如何通过 GitHub Action 自动化发布 dingtalk-stream 这个 SDK。

核心思想是通过 GitHub Release 触发 GitHub Action 执行,在 GitHub Action 中实现了自动化构建与发布。

步骤说明

  1. 更新版本号:按照规范,确定准备发布的版本号,例如 x.y.z。并将该版本号更新到 dingtalk_stream/version.pyVERSION_STRING 中。
    1. 建议:提交 Pull request 时候,把 dingtalk_stream/version.py 中的版本变更一同提交
  2. 创建 Release:在项目首页,点击右侧 Releases 后,点击Draft a new release,填写表单完成发布
    1. 要求:对于常规发布,Release title 中只写版本号,格式为 vX.Y.Z
    2. 要求:如果是 Breaking change,需要 title 中备注,格式为 vX.Y.Z Breaking change
  3. 检查 CI 结果:完成步骤 2 的 Release 之后,GitHub action 就会自动执行,可以进入 Actions 中检查构建状态及结果。

深入理解原理

该项目使用了 GitHub Actions 实现自动化构建与 NPM 发布。对应的构建脚本在 .github/workflows/publish.yml

触发条件(通过 GitHub release 触发):

on:
release:
types: [published]

构建脚本:

  run: |
python setup.py sdist bdist_wheel

PYPI 发布的 Token,采用钉钉开放平台公共账号创建的 Access Token(通过 GitHub secrets 管理):

  with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}

相关链接