Sign inSign up

paritytech/ink-ci-linux

By paritytech

•Updated over 3 years ago

ink-ci-linux utility Docker image.

Image
0

500K+

paritytech/ink-ci-linux repository overview

⁠ink! CI for Linux Distributions

Docker image based on our base CI image <base-ci-linux:latest>.

Used to build and test ink!.

⁠Dependencies and Tools

  • parallel: for running commands in parallel, without overlapping output
  • codecov: to upload the test coverage results
  • binaryen: needed by cargo-contract for optimizing Wasm files
  • cargo-dylint and dylint-link: needed by cargo-contract for running lints

Inherited from <base-ci-linux:latest>

  • libssl-dev
  • clang
  • lld
  • libclang-dev
  • make
  • cmake
  • git
  • pkg-config
  • curl
  • time
  • rhash
  • ca-certificates
  • jq

Rust versions:

We always use the latest possible⁠ nightly version that supports our required rustup components:

  • clippy: The Rust linter.
  • rust-src: The Rust sources of the standard library.
  • miri: The Rust MIR interpreter that interprets the test suite with additional checks.
  • rustfmt: The Rust code formatter.

Rust tools & toolchains:

  • grcov: Required for general Rust code coverage reports.
  • rust-covfix: Required to polish the coverage reports by grcov.
  • cargo-contract: Required to build ink! Wasm smart contracts.
  • xargo: Required so that miri runs properly.
  • cargo-spellcheck: Required for the CI to do automated spell-checking.
  • wasm32-unknown-unknown: The toolchain to compile Rust codebases for Wasm.
  • llvm-tools-preview: our MIR source-based Rust coverage instrumentation.
  • cargo-nextest: Test runner for Rust project, to replace cargo test.

Click here⁠ for the registry.

⁠Usage

test-ink:
    stage: test
        image: paritytech/ink-ci-linux:production
        script:
            - cargo build ...

Tag summary

Content type

Image

Digest

sha256:eafafc3cb…

Size

1.3 GB

Last updated

over 3 years ago

docker pull paritytech/ink-ci-linux:ee3f4073-20230720