Add in-tree buildkite pipeline

This commit is contained in:
Michael Vines 2018-05-21 23:02:54 -07:00
parent 2786357082
commit 34514d65bc
7 changed files with 97 additions and 0 deletions

14
ci/buildkite.yml Normal file
View File

@ -0,0 +1,14 @@
steps:
- command: "ci/coverage.sh"
label: "coverage [public]"
- command: "ci/test-stable.sh"
label: "stable [public]"
- command: "ci/test-nightly.sh || true"
label: "nightly - FAILURES IGNORED [public]"
- command: "ci/test-ignored.sh || true"
label: "ignored - FAILURES IGNORED [public]"
- command: "ci/test-cuda.sh"
label: "cuda"
- wait
- command: "ci/publish.sh"
label: "publish release artifacts"

17
ci/coverage.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/bash -e
cd $(dirname $0)/..
source $HOME/.cargo/env
rustup update
export RUST_BACKTRACE=1
cargo build
cargo kcov
if [[ -z "$CODECOV_TOKEN" ]]; then
echo CODECOV_TOKEN undefined
exit 1
fi
bash <(curl -s https://codecov.io/bash)
exit 0

19
ci/publish.sh Executable file
View File

@ -0,0 +1,19 @@
#!/bin/bash -e
cd $(dirname $0)/..
if [[ -z "$BUILDKITE_TAG" ]]; then
# Skip publish if this is not a tagged release
exit 0
fi
if [[ -z "$CRATES_IO_TOKEN" ]];
echo CRATES_IO_TOKEN undefined
exit 1
fi
cargo package
# TODO: Ensure the published version matches the contents of BUILDKITE_TAG
cargo publish --token "$CRATES_IO_TOKEN"
exit 0

17
ci/test-cuda.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/bash -e
cd $(dirname $0)/..
if [[ -z "$libcuda_verify_ed25519_URL" ]]; then
echo libcuda_verify_ed25519_URL undefined
exit 1
fi
export LD_LIBRARY_PATH=/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin
curl -X GET -o libcuda_verify_ed25519.a "$libcuda_verify_ed25519_URL"
source $HOME/.cargo/env
cargo test --features=cuda
exit 0

8
ci/test-ignored.sh Executable file
View File

@ -0,0 +1,8 @@
#!/bin/bash -e
cd $(dirname $0)/..
source $HOME/.cargo/env
rustup update
export RUST_BACKTRACE=1
cargo test -- --ignored

11
ci/test-nightly.sh Executable file
View File

@ -0,0 +1,11 @@
#!/bin/bash -e
cd $(dirname $0)/..
source $HOME/.cargo/env
rustup component add rustfmt-preview
cargo fmt -- --write-mode=diff
cargo build --verbose --features unstable
cargo test --verbose --features unstable
exit 0

11
ci/test-stable.sh Executable file
View File

@ -0,0 +1,11 @@
#!/bin/bash -e
cd $(dirname $0)/..
source $HOME/.cargo/env
rustup component add rustfmt-preview
cargo fmt -- --write-mode=diff
cargo build --verbose
cargo test --verbose
exit 0