#cargo-subcommand #local #package #pkg #running

app cargo-local-pkgs

在所有本地包上运行cargo命令

7个版本

使用旧的Rust 2015

0.3.2 2016年8月11日
0.3.1 2016年6月16日
0.2.1 2016年2月15日
0.1.1 2016年2月15日

#23 in #pkg

每月21次下载

Apache-2.0/MIT

7KB
80

在所有本地包上运行cargo子命令

这是一个小巧的cargo子命令,用于在所有“本地”包上执行其他子命令(本地包是指主包的依赖路径之一,即同一仓库中的包)。这允许通过一个命令在仓库中的所有crates上运行cargo test

注意

  • 主包必须依赖于仓库中的所有其他crates(不在主包依赖图中的本地crates会导致错误)
  • 必须存在Cargo.lock文件(您可以选择将其提交,或者在运行此子命令之前使用cargo generate-lockfile
  • 您可以使用它来调用外部子命令,但它们必须支持通过-p <pkg>指定包

安装

像往常一样,可以使用cargo install安装此子命令

cargo install cargo-local-pkgs

示例

测试所有本地crates

这将运行所有本地crates的测试(但请参阅下面的说明)

cargo local-pkgs test

与Travis集成

由于cargo install,Travis集成很容易

language: rust
before_script:
  - |
      cargo install cargo-local-pkgs --vers 0.2 &&
      export PATH=$HOME/.cargo/bin:$PATH
script:
  - cargo local-pkgs test

由于库不应该将Cargo.lock提交到git,所以在通过Travis运行cargo local-pkgs时它不存在。但是,我们可以使用cargo generate-lockfile来生成它。将上面的script部分替换为以下内容

script:
  - |
      cargo generate-lockfile &&
      cargo local-pkgs test

依赖

~3MB
~49K SLoC