Skip to content

ci: caching (#657)

ci: caching (#657) #1

Workflow file for this run

name: Srtool build
on:
push:
branches:
- develop
- master
- 'refs/tags/[0-9]+.[0-9]+.[0-9]+*'
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}
cancel-in-progress: true
env:
SUBWASM_VERSION: v0.21.3
jobs:
build-wasm:
runs-on: ubuntu-latest
strategy:
matrix:
runtime: [peregrine, spiritnet]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Srtool build
id: srtool_build
uses: chevdor/[email protected]
env:
PARACHAIN_PALLET_ID: "0x50"
AUTHORIZE_UPGRADE_PREFIX: "0x02"
AUTHORIZE_UPGRADE_CHECK_VERSION: "true"
with:
chain: ${{ matrix.runtime }}
runtime_dir: runtimes/${{ matrix.runtime }}
- name: Summary
run: |
echo '${{ steps.srtool_build.outputs.json }}' | jq | tee ${{ matrix.runtime }}-srtool-digest.json
echo "Compressed Runtime: ${{ steps.srtool_build.outputs.wasm_compressed }}"
- name: Install subwasm
run: |
wget https://github.com/chevdor/subwasm/releases/download/${{ env.SUBWASM_VERSION }}/subwasm_linux_amd64_${{ env.SUBWASM_VERSION }}.deb
sudo dpkg -i subwasm_linux_amd64_${{ env.SUBWASM_VERSION }}.deb
subwasm --version
- name: Show Runtime information
shell: bash
run: |
subwasm info ${{ steps.srtool_build.outputs.wasm_compressed }}
subwasm info --json ${{ steps.srtool_build.outputs.wasm_compressed }} > ${{ matrix.runtime }}-compressed-info.json
- name: Extract the metadata
shell: bash
run: |
subwasm meta ${{ steps.srtool_build.outputs.wasm_compressed }}
subwasm meta --format=json+scale ${{ steps.srtool_build.outputs.wasm_compressed }} > ${{ matrix.runtime }}-metadata.json
- name: Check the metadata diff
shell: bash
run: |
subwasm get -o ${{ matrix.runtime }}-live.wasm wss://${{ matrix.runtime }}.kilt.io
subwasm diff --no-color ${{ matrix.runtime }}-live.wasm ${{ steps.srtool_build.outputs.wasm_compressed }} || \
echo "Subwasm call failed, check the logs. This is likely because ${{ matrix.runtime }} is not known by subwasm" | \
tee ${{ matrix.runtime }}-diff.txt
- name: Archive Subwasm results
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.runtime }}-runtime
path: |
${{ matrix.runtime }}-compressed-info.json
${{ matrix.runtime }}-metadata.json
${{ matrix.runtime }}-diff.txt
${{ steps.srtool_build.outputs.wasm_compressed }}
${{ matrix.runtime }}-srtool-digest.json