diff --git a/.github/scripts/ubuntu-prerequisites.sh b/.github/scripts/ubuntu-prerequisites.sh index 824307e..f5ee53e 100755 --- a/.github/scripts/ubuntu-prerequisites.sh +++ b/.github/scripts/ubuntu-prerequisites.sh @@ -2,7 +2,7 @@ set -euo pipefail apt-get update -apt-get install -y curl git protobuf-compiler +apt-get install -y curl git protobuf-compiler build-essential libclang-15-dev curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y . "$HOME/.cargo/env" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c38ac31..24dbba9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,11 @@ jobs: strategy: fail-fast: false matrix: - container: ["ubuntu:24.04", "debian:12.5"] + container: + - "ubuntu:22.04" + - "ubuntu:latest" + - "debian:10.13" + - "debian:latest" container: ${{ matrix.container }} steps: - uses: actions/checkout@v3 @@ -26,40 +30,32 @@ jobs: bash ./.github/scripts/${DIST}-prerequisites.sh shell: bash - # - name: Rust compilation prerequisites - # run: | - # sudo apt update - # sudo apt install -y \ - # protobuf-compiler - # rustup target add wasm32-unknown-unknown - # rustup component add rustfmt clippy rust-src - # We've run into out-of-disk error when compiling Polkadot in the next step, so we free up some space this way. - # - name: Free Disk Space (Ubuntu) - # uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # 1.3.1 - # with: - # android: true # This alone is a 12 GB save. - # # We disable the rest because it caused some problems. (they're enabled by default) - # # The Android removal is enough. - # dotnet: false - # haskell: false - # large-packages: false - # swap-storage: false + - name: Free Disk Space (Ubuntu) + uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # 1.3.1 + with: + android: true # This alone is a 12 GB save. + # We disable the rest because it caused some problems. (they're enabled by default) + # The Android removal is enough. + dotnet: false + haskell: false + large-packages: false + swap-storage: false - # - name: Build the template - # run: cargo build - # timeout-minutes: 90 + - name: Build the template + run: cargo build + timeout-minutes: 90 - # - name: Run clippy - # run: | - # SKIP_WASM_BUILD=1 cargo clippy --all-targets --locked --workspace --quiet - # SKIP_WASM_BUILD=1 cargo clippy --all-targets --all-features --locked --workspace --quiet - # timeout-minutes: 30 + - name: Run clippy + run: | + SKIP_WASM_BUILD=1 cargo clippy --all-targets --locked --workspace --quiet + SKIP_WASM_BUILD=1 cargo clippy --all-targets --all-features --locked --workspace --quiet + timeout-minutes: 30 - # - name: Run the tests - # run: cargo test - # timeout-minutes: 15 + - name: Run the tests + run: cargo test + timeout-minutes: 15 - # - name: Build the docs - # run: cargo doc --all-features --workspace --no-deps - # timeout-minutes: 15 + - name: Build the docs + run: cargo doc --all-features --workspace --no-deps + timeout-minutes: 15 diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 0000000..103f897 --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,14 @@ +[toolchain] +channel = "stable" +components = [ + "cargo", + "clippy", + "rust-analyzer", + "rust-src", + "rust-std", + "rustc", + "rustc-dev", + "rustfmt", +] +targets = ["wasm32-unknown-unknown"] +profile = "minimal"