8个版本
0.2.0 | 2019年7月27日 |
---|---|
0.1.2 | 2019年1月8日 |
0.0.4 | 2018年10月23日 |
#486 在 Cargo插件
每月 26 次下载
27KB
586 行
cargo template-ci
- 自动生成快速的travis.yml
在我所有的Rust项目中,我都使用travis提供持续集成服务,以验证一切是否正确。然而,Rust的命令行工具已经改变了很多(clippy仍然在变化!),所以我必须调整每个.travis.yml
中的调用。这不是很有趣!
所以这是一个小工具,它会根据几个标志生成一个.travis.yml文件,包含很多不错的东西
- 它使用构建矩阵,以确保所有构建都很快。
- 允许您选择除了测试之外还想要运行哪些构建类型:默认情况下,它会运行clippy并检查rustfmt的合规性。您还可以激活基准测试。
- 允许自定义要运行的操作系统和要测试的版本。
运行
安装后,您可以在Rust项目中运行此工具:cargo template-ci
。它将覆盖项目现有的.travis.yml,所以请确保它做得很好!
配置
默认情况下,配置如下
- 在
stable
、beta
、nightly
上运行测试。 - 在
stable
上运行rustfmt。 - 在
nightly
上运行clippy,但允许失败。 - 不运行基准测试(但如果启用,则将在
nightly
上运行它们)。
配置源
您可以通过编辑项目的Cargo.toml
中的包元数据来配置生成的配置文件:所有内容都位于密钥package.metadata.template_ci
下。此项目有一个示例,它使clippy失败成为致命的。
如果你的项目使用Cargo工作空间,则无法将包元数据添加到顶层工作空间配置文件中。因此,你也可以将template-ci配置放入仓库根目录的文件中
.template-ci.toml
或template-ci.toml
,如果不行的话package.metadata.template_ci
在Cargo.toml
不执行配置值合并:匹配的第一个配置源会导致忽略所有其他文件。
配置参考
以下是可以配置的键的列表
package.metadata.template_ci.os
:运行时的操作系统。默认为linux
package.metadata.template_ci.dist
:运行时的操作系统发行版。默认为xenial
(Ubuntu 16.04)package.metadata.template_ci.versions
:在构建矩阵上运行rust的版本,默认为["stable", "beta", "nightly"]
有额外的矩阵构建设置
-
package.metadata.template_ci.rustfmt
:运行额外的矩阵构建以检查rustfmt有效性的设置run
:是否运行构建。默认:true
。version
:在哪个版本上运行。默认:stable
。allow_failure
:非零退出状态是否应中断构建。默认:false
。
-
package.metadata.template_ci.clippy
:为clippy
代码检查器提供的额外矩阵构建。run
:true
version
:nightly
allow_failure
:true
-
package.metadata.template_ci.bench
:运行cargo bench
的额外矩阵构建。run
:false
version
:nightly
allow_failure
:false
依赖
~6–16MB
~205K SLoC