更改版本号时安全地创建版本。
carthorse的Python项目详细描述
马车
更改版本号时安全地创建版本。
通过将配置添加到yaml或toml文件中,然后添加以下内容来使用它 到您的持续集成管道:
pip install -U carthorse carthorse
TOML配置
您的文件应包含以下部分:
[tool.carthorse] version-from = "poetry" tag-format = "v{version}" when = [ "version-not-tagged" ] actions = [ { run="poetry publish --username $POETRY_USER --password $POETRY_PASS --build"}, { name="create-tag"}, ]
它的设计使它可以作为pyproject.toml文件的一部分包含。
yaml配置
您的文件应包含以下部分:
carthorse: version-from: poetry tag-format: v{version} when: - version-not-tagged actions: - run: "poetry publish --username $POETRY_USER --password $POETRY_PASS --build" - create-tag
它是做什么的?
粗略地说:
- 从项目的源代码中提取项目的版本。
- 根据版本设置标记格式
- 执行多项检查,如果其中任何一项失败,请停止。
- 执行指定的任何操作。
版本提取
当前支持以下提取项目版本的方法:
- poetry
- 这将解析项目的pyproject.toml,并使用tool.poetry.version 键作为项目的版本。
标签格式
tag-format配置选项允许您控制版本标记的格式 通过指定一个python格式的字符串来插入版本。 默认值是v{version}。
执行检查
将按顺序执行when配置节中的每个检查。如果失败了 然后将不执行任何操作。
目前提供以下检查:
- version_not_tagged
- 如果从POICATION.D/DD>中提取的版本不存在当前Git标签,则这将通过。
- never
- 一个安全网和测试助手,这项检查永远不会通过。
动作
如果所有检查都通过,则按顺序执行列出的操作。如果发生错误 在执行操作期间,不会执行其他操作。
以下操作当前可用:
- run
- 在shell中运行指定的命令。整个环境将通过 $TAG将包含根据标记格式计算的标记。
- create_tag
- 这将基于提取的版本为计算的标记创建一个git标记,并推送 到指定的遥控器。默认情况下,使用origin遥控器。
变化
1.1.0(2019年3月1日)
- 支持从setup.py中提取项目版本。
- 支持提供version-from、when和actions可调用的其他包。
1.0.1(2019年2月27日)
- 更好的pypi元数据。
1.0.0(2019年2月27日)
- 第一个版本,支持诗歌和git标记。