summaryrefslogtreecommitdiffstats
path: root/.cirrus.yml
diff options
context:
space:
mode:
authorCarl Lerche <me@carllerche.com>2019-03-22 11:58:00 -0700
committerGitHub <noreply@github.com>2019-03-22 11:58:00 -0700
commit678f15bd48151f82233fdecb4a4e7c538932d09a (patch)
treec55eb95e092fdec0c0ee7e0a7a77544e59e3c1a1 /.cirrus.yml
parentb1172f8074b381b543ff15e23e3092fc5dc6de7d (diff)
ci: skip crates.io dep run when releasing (#995)
#993 introduces changes in a sub crate that other Tokio crates depend on. To make CI pass, a `[patch]` statement and `path` dependencies are used. When releasing, these must be removed. However, the commit that removes them and prepares the crates for release will not be able to pass CI. This commit adds a conditional on a special `[ci-release]` snippet in the commit message. If this exists, CI is only run with the full "patched" dependencies.
Diffstat (limited to '.cirrus.yml')
-rw-r--r--.cirrus.yml15
1 files changed, 14 insertions, 1 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index 4172a50d..d66d5f36 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -15,6 +15,18 @@ task:
- sh rustup.sh -y
- . $HOME/.cargo/env
- rustup target add i686-unknown-freebsd
+ - |
+ # Remove any existing patch statements
+ mv Cargo.toml Cargo.toml.bck
+ sed -n '/\[patch.crates-io\]/q;p' Cargo.toml.bck > Cargo.toml
+
+ # Patch all crates
+ cat ci/patch.toml >> Cargo.toml
+
+ # Print `Cargo.toml` for debugging
+ echo "~~~~ Cargo.toml ~~~~"
+ cat Cargo.toml
+ echo "~~~~~~~~~~~~~~~~~~~~"
cargo_cache:
folder: $HOME/.cargo/registry
test_script:
@@ -23,6 +35,7 @@ task:
- cargo doc --all
i686_test_script:
- . $HOME/.cargo/env
- - cargo test --all --exclude tokio-tls --no-fail-fast --target i686-unknown-freebsd
+ - |
+ cargo test --all --exclude tokio-tls --no-fail-fast --target i686-unknown-freebsd
before_cache_script:
- rm -rf $HOME/.cargo/registry/index