更改版本号时安全地创建版本。

carthorse的Python项目详细描述


CircleCI

马车

更改版本号时安全地创建版本。

通过将配置添加到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-fromwhenactions可调用的其他包。

1.0.1(2019年2月27日)

  • 更好的pypi元数据。

1.0.0(2019年2月27日)

  • 第一个版本,支持诗歌和git标记。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
刷卡时java更改recyclerview项目背景   java如何在ServerSocketChannel上收集I/O统计信息   安卓 EditText始终返回Null Java NullPointerException   java 1美元的类文件名是什么?   java这是一个有效的方法吗?Eclipse似乎暗示我的代码存在ab问题。。我就是看不出来   在后台收到推送通知后更改java活动   java如何在TableViewerColumn中使用CheckBoxTableCell   java静态方法使用泛型创建内部类   java struts2<s:选择…>标签   java中变量范围内的错误输出   在类型与该类相同的类中声明的java静态变量   java在随机数列表中查找三角形   java如何检测Mac OS的右击事件   java为现有CSV文件创建DAO   javax的ClassNotFoundException。xml。绑定切换到Java 9时,JAXBEException与Spring启动   安卓将Kotlin算法翻译成Java代码   java m从recylerview获取错误,因为我试图从sqlite获取数据并设置为recylerview