2 个版本
使用旧的 Rust 2015
0.2.0 | 2018年8月10日 |
---|---|
0.2.0-beta.1 | 2018年7月24日 |
在 测试 中排名 425
每月下载 21 次
58KB
1K SLoC
snowpatch - 补丁的持续集成
概述
snowpatch 是一个针对使用基于补丁、以邮件列表为中心的 Git 工作流的项目的持续集成工具。这种工作流被许多知名的开放源代码项目使用,如 Linux 内核。
snowpatch 充当补丁跟踪系统与持续集成自动化服务器之间的桥梁。snowpatch 监控补丁队列中的补丁,在现有树形结构上应用补丁,触发适当的构建和测试套件,并报告结果。
目前,snowpatch 支持 Patchwork 和 Jenkins。
snowpatch 设计理念与 Patchwork 的补充而非取代现有工作流的理念一致。对于已经将 Patchwork 作为核心补丁管理工具的项目,snowpatch 不会对开发工作流造成任何额外变化。
snowpatch 只需要 Patchwork 账户和具有适当权限的 Jenkins 账户以及 API 密钥。许多使用基于补丁的工作流的项目高度去中心化,使用他们不管理的 Patchwork 实例,并在公司防火墙后面隐藏的构建机器。因此,snowpatch 设计上不需要对 Patchwork 或 Jenkins 进行管理员访问或安装额外的插件。
snowpatch 故意采用极简设计,这使其与像 Zuul 这样的工具区分开来,后者更加复杂,可能更适合能够更好地适应全面 CI 系统的工作流的项目。其他提供 CI 系统集成支持的补丁跟踪系统,如 Patchew,也可能适用于具有合适工作流的项目。
snowpatch 以纪念 skiboot 项目命名,该项目启发了 snowpatch 的创建。
项目状态
雪斑目前正处于积极开发中。它已经实现了足够的核心功能,可以满足基本持续集成(CI)需求,并且目前已在少数项目中投入生产使用。仍有许多核心功能尚未实现,文档也尚不完整。
目前,没有稳定性保证,新版本的行为可能会在没有通知的情况下发生重大变化。
安装
雪斑是一个Rust程序。为了编译它,您需要Rust及其包管理器Cargo。雪斑应能在任何支持Rust和Git的目标上运行,但仅经过Linux测试。目前我们不提供预构建的二进制文件。
非Rust依赖项
使用Cargo安装
要使用Cargo安装最新标记的雪斑版本,请运行cargo install snowpatch
,这将下载并编译雪斑及其所有Rust依赖项。雪斑二进制文件将被安装为snowpatch
。
手动构建
要手动编译雪斑,请克隆Git仓库并运行cargo build --release
。可执行文件可以在target/release/snowpatch
中找到或使用cargo run
执行。
文档
要获取使用信息,请运行snowpatch --help
。
示例配置可以在examples
目录中找到。
更多信息可以在docs
目录中找到。
贡献
请阅读我们的贡献指南,了解有关贡献的更多信息。
联系方式
雪斑的开发在[email protected]的邮件列表上完成。要订阅,请访问列表信息页面。
补丁在patchwork.ozlabs.org上跟踪。
雪斑由Russell Currey和Andrew Donnellan维护。
许可
版权所有 © 2016-2018 IBM公司。
此程序是免费软件;您可以在自由软件基金会发布的GNU通用公共许可证的条款和条件下重新分发和/或修改它;许可证的第2版,或(根据您的选择)任何较新版本。
此程序的分发是希望它有用,但没有任何保证;甚至没有对适销性或针对特定目的的适用性的隐含保证。有关详细信息,请参阅GNU通用公共许可证。
您应该已经收到与此程序一起的GNU通用公共许可证副本;如果没有,请写信给自由软件基金会,公司地址:美国马萨诸塞州波士顿市富兰克林街51号,5楼,邮编02110-1301。
依赖项
~28–41MB
~736K SLoC