Various helpful scripts
Documentation. Rust and tools for:
- Substrate-based projects CIs
- android
- arm64
- armv7
- i686
- docs autogeneration
- various tools
- tools for kubernetes
Pipelines are triggered by schedule. Can be launched manually though. To launch the pipeline go to the project's CI/CD -> Schedules menu. To change, edit/create the new schedule: set the required variable and cron schedule.
- install
podman(it's rootless) or rename it todockerin the following snippet - Consider the following snippets pick one depending on which shell you use.
TLDR; the function runs the named container in the current dir with
- redirecting the current directory into the image
- keeping your shell history on your host
- keeping Rust caches on your host, so you build faster the next time
example use: cargoenvhere paritytech/ci-linux:production /bin/bash -c 'RUSTFLAGS="-Cdebug-assertions=y -Dwarnings" RUST_BACKTRACE=1 time cargo test --workspace --locked --release --verbose --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml'
- open the CI config file (
.gitlab-ci.yml) - note
CI_IMAGE:variable value there (for exampleparitytech/contracts-ci-linux:production) - look for the job you want to reproduce and see if
*docker-envorimage:is mentioned there (then you should use this one) - note global and in-job
variables:, in order to reproduce the job closely you might want to run it with the sameRUSTFLAGSandCARGO_INCREMENTAL podman pull [CI image name]/docker pull [CI image name]- execute your job how it's shown in the example ^
cargoenvhere [CI image name] /bin/bash -c ‘[cargo build ...]’ - find your artifacts in
/home/$USER/cache/[project name or current dir name]/targetfor Linux users or/path/to/the/cloned/repo/targetfor OS X users.
cargoenvhere paritytech/contracts-ci-linux:production cargo run