跳转到主要内容

简化发布流程的工具

项目描述

本项目包含用于在GitHub上创建发布和发布到PyPI上的工具和模板。旨在供Robot Framework及其生态系统中的工具和库使用,但自然也可以由其他项目使用。

要使用此项目,您应该至少了解Python打包的基本知识。

主要功能

  • 可用于自定义Invoke任务的实用程序。这些实用程序可以直接从rellu模块导入

    • 设置项目版本,包括自动将其设置为下一个合适的开发版本。

    • 设置问题跟踪器中的常见标签。

    • 根据问题跟踪器中的问题生成发布说明。需要项目使用预定义的标签。

  • 通用 Invoke 任务位于 rellu.tasks 模块 中。

    • 清理临时文件和目录。

  • tasks.py 文件实现了使用上述工具的 Invoke 任务。其他项目可以将其用作示例或模板。

  • 使用 Invoke 文件中定义的任务、git 和其他工具在 BUILD.rst 文件中创建发布的逐步说明,该文件可以作为模板使用。

  • 使用通用良好实践的 setup.py。还有一个超级简单的 MANIFEST.in,但此项目不需要 setup.cfg

依赖关系

Rellu 设计与 Invoke 一起使用,后者也用于内部。所有项目依赖项均列在 requirements.txtrequirements-build.txt 文件中。

Rellu 本身仅与 Python 3.6 或更高版本兼容,但与其一起使用的项目自然也支持较旧的 Python 版本。Rellu 在 Linux 上开发和测试,但也应该能够在 OSX 上良好运行。在 Windows 上使用它可能可行,但未进行测试或支持。

所需项目设置

要能够自动生成发行说明,必须使用这些规则配置问题跟踪器

  • 里程碑必须与项目版本匹配,并使用格式 v1.2v1.2.1

  • 必须使用提供的实用程序配置标签。

  • 里程碑和标签必须一致使用

    • 有效的问题必须将类型定义为标签 bugenhancementtask。类型为任务的问题不包括在发行说明中。

    • 问题应设置优先级。请参阅各种 prio- 标签。

    • 属于特定里程碑的问题应设置该里程碑。

    • 包含在特定预发布版本中的问题应设置相应的标签(例如 a1b2rc3)。

由以下提供支持