Skip to main content

eeyoung电商客户端调用封装

Project description

ey-commerce-lib

发版流程

下面是从“升级功能”到“发布新版本”的完整流程。示例版本号使用 1.0.34,实际发版时替换成要发布的新版本。

1. 开发功能

git status

先确认当前工作区状态,避免把无关文件一起提交。完成代码修改后,优先运行默认测试:

python -m pytest

如果修改了打包配置、依赖或发布流程,再运行构建检查:

python -m build

如果修改了需要真实平台凭证的集成测试,确认本地已配置 tests/integration_config.py 后再运行:

python -m pytest -m integration -s

2. 提交功能代码

只提交和当前功能相关的文件:

git status
git add 需要提交的文件
git commit -m "feat: describe your change"
git push origin main

main 分支推送只同步代码,不会发布 PyPI。

3. 升级版本号

发布前必须升级版本号,并确保 pyproject.tomluv.lock 里的版本一致。PyPI 不允许重复上传同一个版本号。

例如发布 1.0.34

# 修改 pyproject.toml 和 uv.lock 中的 version 为 1.0.34
git diff pyproject.toml uv.lock
git add pyproject.toml uv.lock
git commit -m "chore: bump version to 1.0.34"
git push origin main

4. 创建并推送 tag

tag 名称必须和版本号对应,建议使用 vX.Y.Z 格式:

git tag v1.0.34
git push origin v1.0.34

推送 tag 后,GitLab CI 会自动执行发布流水线:

build -> publish_pypi -> notify_dingtalk_release

5. 检查发布结果

在 GitLab 中查看:

CI/CD -> Pipelines

确认 tag pipeline 的三个 job 都成功:

build
publish_pypi
notify_dingtalk_release

发布成功后,再确认 PyPI 上已经出现新版本,并检查钉钉群是否收到发版成功通知。

6. CI 变量说明

CI 中的 pip 下载依赖默认使用清华 PyPI 镜像源,以减少自建 GitLab Runner 在国内网络环境下安装 buildtwine 等工具的耗时。这个配置只影响依赖下载,不影响 twine upload 上传到官方 PyPI。

PyPI token 不写在仓库里,GitLab CI 通过下面两个变量上传:

TWINE_USERNAME = __token__
TWINE_PASSWORD = pypi-你的 PyPI API token

钉钉通知通过下面变量发送:

DINGTALK_WEBHOOK = 钉钉机器人 webhook
DINGTALK_SECRET = 钉钉机器人加签密钥,没开加签可以不填

这些变量都应配置在 GitLab 项目的:

Settings -> CI/CD -> Variables

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ey_commerce_lib-1.0.34.tar.gz (115.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ey_commerce_lib-1.0.34-py3-none-any.whl (66.4 kB view details)

Uploaded Python 3

File details

Details for the file ey_commerce_lib-1.0.34.tar.gz.

File metadata

  • Download URL: ey_commerce_lib-1.0.34.tar.gz
  • Upload date:
  • Size: 115.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for ey_commerce_lib-1.0.34.tar.gz
Algorithm Hash digest
SHA256 132661bca362b4549897f46cfc7c8725608f0875a91f7a357046b4fdfc8cf8cc
MD5 a07899b74ae41eb593e648e62bb2e832
BLAKE2b-256 471fb97f4f254c8b7618aecbf8a9c1a3e460ef480d1fde90761509aa8168098d

See more details on using hashes here.

File details

Details for the file ey_commerce_lib-1.0.34-py3-none-any.whl.

File metadata

File hashes

Hashes for ey_commerce_lib-1.0.34-py3-none-any.whl
Algorithm Hash digest
SHA256 1cfaa7dc87638e96ef970545070044d825b3c79c256455086dbdbe97a1bbc207
MD5 38108739272ddbbb717a652f5a97d78b
BLAKE2b-256 48d53dc9e8ed6448495649ef8d4ae2090055c498308e5537f77cd2f71881e1fd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page