diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 30ba2f29b80..b9dac81a002 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -1,29 +1,18 @@ -name: Check Set-Up & Build +name: Test & Build & Benchmarking Build -# Controls when the action will run. on: - # Triggers the workflow on push or pull request events but only for the master branch push: branches: [ main ] pull_request: - - # Allows you to run this workflow manually from the Actions tab workflow_dispatch: -# A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - check: - # The type of runner that the job will run on + test-build: runs-on: ubuntu-20.04 - - # Steps represent a sequence of tasks that will be executed as part of the job steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 - - - name: Set-Up + - name: Set-Up system dependencies run: sudo apt install -y cmake pkg-config libssl-dev git build-essential clang libclang-dev curl - - name: Install Rustup run: | curl https://sh.rustup.rs -sSf | sh -s -- -y @@ -32,16 +21,25 @@ jobs: rustup update nightly rustup update stable rustup target add wasm32-unknown-unknown --toolchain nightly - - - name: Run tests + - name: Cache + uses: actions/cache@v2.1.6 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} + - name: Clean project artifacts + run: | + cargo clean -p picasso-runtime + cargo clean -p composable + - name: Cargo test run: | cargo test - - - name: Check Build + - name: Cargo check run: | SKIP_WASM_BUILD=1 cargo check --release - - - name: Check Build for Benchmarking + - name: Check build for benchmarking run: > pushd node && cargo check --features=runtime-benchmarks --release