diff --git a/.github/workflows/check-migrations.yml b/.github/workflows/check-migrations.yml new file mode 100644 index 0000000000..79e35bdf16 --- /dev/null +++ b/.github/workflows/check-migrations.yml @@ -0,0 +1,59 @@ +name: Check Migrations + +on: + push: + branches: ["master"] + tags: + - v[0-9]+.[0-9]+.[0-9]+* + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +jobs: + check-migrations: + continue-on-error: true + runs-on: ubuntu-latest + strategy: + matrix: + runtime: + - astar + - shiden + - shibuya + steps: + - name: Checkout sources + uses: actions/checkout@v4 + + - name: Setup node + uses: actions/setup-node@v4 + with: + node-version: 18.x + + - name: Install deps + run: sudo apt -y install protobuf-compiler + + - name: Install & display rust toolchain + run: rustup show + + - name: Check targets are installed correctly + run: rustup target list --installed + + - name: Build EXTRA_ARGS + if: ${{ !startsWith(github.ref, 'refs/tags/v') }} + run: | + EXTRA_FLAGS+="--disable-spec-check" + echo "Disabling the spec check since we are not releasing" + echo "Flags: $EXTRA_FLAGS" + echo "EXTRA_ARGS=$EXTRA_FLAGS" >> $GITHUB_ENV + + - name: Build ${{ matrix.runtime }} runtime + run: cargo build --release --locked --package ${{ matrix.runtime }}-runtime --features try-runtime + + - name: Run ${{ matrix.runtime }} runtime checks + run: | + PACKAGE_NAME=${{ matrix.runtime }}-runtime + RUNTIME_BLOB_NAME=$(echo $PACKAGE_NAME | sed 's/-/_/g').compact.compressed.wasm + RUNTIME_BLOB_PATH=./target/release/wbuild/$PACKAGE_NAME/$RUNTIME_BLOB_NAME + + npx @acala-network/chopsticks@beta try-runtime -c ${{ matrix.runtime }} --checks All --runtime $RUNTIME_BLOB_PATH ${{ env.EXTRA_ARGS }}