Skip to content

Commit

Permalink
CI for producing blocks
Browse files Browse the repository at this point in the history
  • Loading branch information
rzadp committed Aug 8, 2024
1 parent 1b627cd commit 8674cfb
Showing 1 changed file with 48 additions and 6 deletions.
54 changes: 48 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ concurrency:
cancel-in-progress: true

jobs:
ci:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
Expand Down Expand Up @@ -68,14 +68,56 @@ jobs:
run: SKIP_WASM_BUILD=1 cargo doc --workspace --no-deps
timeout-minutes: 15

# This is mentioned as example in the README:
- name: Build the node individually in release mode
run-node:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
steps:
- uses: actions/checkout@v4

- name: Rust compilation prerequisites (Ubuntu)
if: contains(matrix.os, 'ubuntu')
run: |
# Save some space from debug builds
rm -rf ./target
cargo build --package minimal-template-node --release
sudo apt update
sudo apt install -y \
protobuf-compiler
rustup target add wasm32-unknown-unknown
rustup component add rustfmt clippy rust-src
- name: Install Cargo (MacOS)
if: contains(matrix.os, 'macos')
run: |
curl https://sh.rustup.rs -sSf -y | sh
brew install protobuf
rustup target add wasm32-unknown-unknown --toolchain stable-aarch64-apple-darwin
rustup component add rust-src --toolchain stable-aarch64-apple-darwin
# 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)
if: contains(matrix.os, '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 node individually in release mode
run: cargo build --package minimal-template-node --release
timeout-minutes: 90

- name: Make sure the node is producing blocks
run: |
./target/release/minimal-template-node --dev 2>&1 | tee out.txt &
until curl -s '127.0.0.1:9944'; do sleep 5; done
until cat out.txt | grep -s "Imported #2"; do sleep 5; done
shell: bash
timeout-minutes: 5

build-docker:
runs-on: ubuntu-latest
steps:
Expand Down

0 comments on commit 8674cfb

Please sign in to comment.