From ea49c4db6516f90108e9e6782acab9f55b4d6493 Mon Sep 17 00:00:00 2001 From: Ermal Kaleci Date: Sun, 31 Oct 2021 09:34:50 +0100 Subject: [PATCH 1/6] update steps --- .github/workflows/release-notes.yml | 90 +++++++++++++---------------- 1 file changed, 41 insertions(+), 49 deletions(-) diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml index 7e43368d1..8193e6060 100644 --- a/.github/workflows/release-notes.yml +++ b/.github/workflows/release-notes.yml @@ -2,7 +2,6 @@ name: Release Notes env: SUBWASM_VERSION: 0.14.1 - SRTOOL_TAG: 1.53.0 on: workflow_dispatch: @@ -15,11 +14,15 @@ on: description: Release scope [client | runtime | full] default: full required: true + srtool_image: + description: You can use an alternate image, use with caution! + default: paritytech/srtool:1.53.0 + required: true jobs: release-notes: name: Crate release note - runs-on: [self-hosted, linux] + runs-on: ubuntu-latest env: CHAIN: ${{ github.event.inputs.chain }} SCOPE: ${{ github.event.inputs.scope }} @@ -40,7 +43,6 @@ jobs: - name: Build node run: cargo build --release --features=with-${{ env.CHAIN }}-runtime --features=rococo-native - # We now get extra information thanks to subwasm, - name: Install subwasm ${{ env.SUBWASM_VERSION }} run: | wget https://github.com/chevdor/subwasm/releases/download/v${{ env.SUBWASM_VERSION }}/subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb @@ -54,56 +56,27 @@ jobs: subwasm info ws://localhost:9944 > ${{ env.CHAIN }}-subwam-info.txt pkill acala - - name: Srtool build + - name: Srtool build & subwasm info id: srtool_build - uses: chevdor/srtool-actions@v0.3.0 - with: - chain: ${{ env.CHAIN }} - tag: ${{ github.event.inputs.srtool_tag || env.SRTOOL_TAG }} - - - name: Summary + env: + PACKAGE: ${{ env.CHAIN }}-runtime + RUNTIME_DIR: runtime/${{ env.CHAIN }} + SRTOOL_IMAGE: ${{ github.event.inputs.srtool_image }} run: | - echo '${{ steps.srtool_build.outputs.json }}' | jq > ${{ env.CHAIN }}-srtool-digest.json - cat ${{ env.CHAIN }}-srtool-digest.json - echo "Runtime location: ${{ steps.srtool_build.outputs.wasm }}" + docker run -i --rm -e PACKAGE=${{ env.PACKAGE }} -e RUNTIME_DIR=${{ env.RUNTIME_DIR }} -v ${{ env.WORKDIR }}:/build ${{ env.SRTOOL_IMAGE }} build | sed -e '1,/Your Substrate WASM Runtime is ready!/d' > ${{ env.CHAIN }}-srtool-details.txt + cat ${{ env.CHAIN }}-srtool-details.txt - - name: Extract the metadata - run: | - subwasm meta ${{ steps.srtool_build.outputs.wasm }} - subwasm --json meta ${{ steps.srtool_build.outputs.wasm }} > ${{ env.CHAIN }}-metadata.json - - name: Check the metadata diff - run: | - subwasm get wss://karura-rpc-2.aca-api.network/ws --output runtime_mainnet.wasm - subwasm diff ${{ steps.srtool_build.outputs.wasm }} runtime_mainnet.wasm | tee ${{ env.CHAIN }}-diff.txt + WASM_PATH='runtime/${{ env.CHAIN }}/target/srtool/release/wbuild/${{ env.CHAIN }}-runtime/${{ env.CHAIN }}_runtime.compact.wasm' + WASM_COMPRESSED_PATH='runtime/${{ env.CHAIN }}/target/srtool/release/wbuild/${{ env.CHAIN }}-runtime/${{ env.CHAIN }}_runtime.compact.compressed.wasm' - - name: Archive Artifacts for ${{ env.CHAIN }} - uses: actions/upload-artifact@v2 - with: - name: ${{ env.CHAIN }}-runtime - path: | - ${{ steps.srtool_build.outputs.wasm }} - ${{ steps.srtool_build.outputs.wasm_compressed }} - ${{ env.CHAIN }}-srtool-digest.json + echo ::set-output name=wasm::$WASM_PATH + echo ::set-output name=wasm_compressed::$WASM_COMPRESSED_PATH - - name: Archive Subwasm results - uses: actions/upload-artifact@v2 - with: - name: ${{ env.CHAIN }}-runtime - path: | - ${{ env.CHAIN }}-info.json - ${{ env.CHAIN }}-info_compressed.json - ${{ env.CHAIN }}-metadata.json - ${{ env.CHAIN }}-diff.txt - ${{ env.CHAIN }}-subwam-info.txt + subwasm meta $WASM_PATH + subwasm --json meta $WASM_PATH > ${{ env.CHAIN }}-metadata.json - # - name: Upload wasm to pinata - # if: ${{ !env.ACT }} - # uses: aquiladev/ipfs-action@v0.1.6 - # with: - # path: ${{ steps.srtool_build.outputs.wasm_compressed }} - # service: pinata - # pinataKey: ${{ secrets.PINATA_KEY }} - # pinataSecret: ${{ secrets.PINATA_SECRET }} + subwasm get wss://karura-rpc-2.aca-api.network/ws --output runtime_mainnet.wasm + subwasm diff $WASM_PATH runtime_mainnet.wasm | tee ${{ env.CHAIN }}-diff.txt - name: Generate note id: generate-note @@ -112,13 +85,32 @@ jobs: scope: ${{ env.SCOPE }} chain: ${{ env.CHAIN }} subwasm_info: ${{ env.CHAIN }}-subwam-info.txt - srtool_details: ${{ env.CHAIN }}-srtool-digest.json + srtool_details: ${{ env.CHAIN }}-srtool-details.txt wasm_diff: ${{ env.CHAIN }}-diff.txt - name: Crate Release Checklist issue - if: ${{ !env.ACT }} uses: JasonEtco/create-an-issue@v2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: filename: ${{ steps.generate-note.outputs.release-note }} + + - name: Archive Artifacts for ${{ env.CHAIN }} + uses: actions/upload-artifact@v2 + with: + name: ${{ env.CHAIN }}-runtime + path: | + ${{ steps.srtool_build.outputs.wasm }} + ${{ steps.srtool_build.outputs.wasm_compressed }} + ${{ env.CHAIN }}-srtool-details.txt + ${{ env.CHAIN }}-metadata.json + ${{ env.CHAIN }}-subwam-info.txt + ${{ env.CHAIN }}-diff.txt + + # - name: Upload wasm to pinata + # uses: aquiladev/ipfs-action@v0.1.6 + # with: + # path: ${{ steps.srtool_build.outputs.wasm_compressed }} + # service: pinata + # pinataKey: ${{ secrets.PINATA_KEY }} + # pinataSecret: ${{ secrets.PINATA_SECRET }} From 57c4965ad976c75b840354da4cea72e828020828 Mon Sep 17 00:00:00 2001 From: Ermal Kaleci Date: Sun, 31 Oct 2021 10:31:03 +0100 Subject: [PATCH 2/6] subwasm info from runtime --- .github/workflows/release-notes.yml | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml index 8193e6060..a30c7bfbe 100644 --- a/.github/workflows/release-notes.yml +++ b/.github/workflows/release-notes.yml @@ -40,22 +40,12 @@ jobs: target: wasm32-unknown-unknown default: true - - name: Build node - run: cargo build --release --features=with-${{ env.CHAIN }}-runtime --features=rococo-native - - name: Install subwasm ${{ env.SUBWASM_VERSION }} run: | wget https://github.com/chevdor/subwasm/releases/download/v${{ env.SUBWASM_VERSION }}/subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb sudo dpkg -i subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb subwasm --version - - name: Subwasm info - run: | - ./target/release/acala --chain=${{ env.CHAIN }}-dev --rpc-cors=all --ws-external & - sleep 30 - subwasm info ws://localhost:9944 > ${{ env.CHAIN }}-subwam-info.txt - pkill acala - - name: Srtool build & subwasm info id: srtool_build env: @@ -72,6 +62,9 @@ jobs: echo ::set-output name=wasm::$WASM_PATH echo ::set-output name=wasm_compressed::$WASM_COMPRESSED_PATH + subwasm info $WASM_PATH > ${{ env.CHAIN }}-subwam-info.txt + cat ${{ env.CHAIN }}-subwam-info.txt + subwasm meta $WASM_PATH subwasm --json meta $WASM_PATH > ${{ env.CHAIN }}-metadata.json From a5f2665616874b79051ad63446507b98733a1f5a Mon Sep 17 00:00:00 2001 From: Ermal Kaleci Date: Sun, 31 Oct 2021 10:51:50 +0100 Subject: [PATCH 3/6] fix work_dir --- .github/workflows/release-notes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml index a30c7bfbe..8df85a4fe 100644 --- a/.github/workflows/release-notes.yml +++ b/.github/workflows/release-notes.yml @@ -53,7 +53,7 @@ jobs: RUNTIME_DIR: runtime/${{ env.CHAIN }} SRTOOL_IMAGE: ${{ github.event.inputs.srtool_image }} run: | - docker run -i --rm -e PACKAGE=${{ env.PACKAGE }} -e RUNTIME_DIR=${{ env.RUNTIME_DIR }} -v ${{ env.WORKDIR }}:/build ${{ env.SRTOOL_IMAGE }} build | sed -e '1,/Your Substrate WASM Runtime is ready!/d' > ${{ env.CHAIN }}-srtool-details.txt + docker run -i --rm -e PACKAGE=${{ env.PACKAGE }} -e RUNTIME_DIR=${{ env.RUNTIME_DIR }} -v ${{ env.GITHUB_WORKSPACE }}:/build ${{ env.SRTOOL_IMAGE }} build | sed -e '1,/Your Substrate WASM Runtime is ready!/d' > ${{ env.CHAIN }}-srtool-details.txt cat ${{ env.CHAIN }}-srtool-details.txt WASM_PATH='runtime/${{ env.CHAIN }}/target/srtool/release/wbuild/${{ env.CHAIN }}-runtime/${{ env.CHAIN }}_runtime.compact.wasm' From a987c140e4d1333d9dc2e9a71131971036a35c59 Mon Sep 17 00:00:00 2001 From: Ermal Kaleci Date: Sun, 31 Oct 2021 10:57:04 +0100 Subject: [PATCH 4/6] fix work_dir --- .github/workflows/release-notes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml index 8df85a4fe..075af20b5 100644 --- a/.github/workflows/release-notes.yml +++ b/.github/workflows/release-notes.yml @@ -53,7 +53,7 @@ jobs: RUNTIME_DIR: runtime/${{ env.CHAIN }} SRTOOL_IMAGE: ${{ github.event.inputs.srtool_image }} run: | - docker run -i --rm -e PACKAGE=${{ env.PACKAGE }} -e RUNTIME_DIR=${{ env.RUNTIME_DIR }} -v ${{ env.GITHUB_WORKSPACE }}:/build ${{ env.SRTOOL_IMAGE }} build | sed -e '1,/Your Substrate WASM Runtime is ready!/d' > ${{ env.CHAIN }}-srtool-details.txt + docker run -i --rm -e PACKAGE=${{ env.PACKAGE }} -e RUNTIME_DIR=${{ env.RUNTIME_DIR }} -v ${{ github.workspace }}:/build ${{ env.SRTOOL_IMAGE }} build | sed -e '1,/Your Substrate WASM Runtime is ready!/d' > ${{ env.CHAIN }}-srtool-details.txt cat ${{ env.CHAIN }}-srtool-details.txt WASM_PATH='runtime/${{ env.CHAIN }}/target/srtool/release/wbuild/${{ env.CHAIN }}-runtime/${{ env.CHAIN }}_runtime.compact.wasm' From 399b35b1bbd58bc71756cd1fb3e849f43a030fbb Mon Sep 17 00:00:00 2001 From: Ermal Kaleci Date: Sun, 31 Oct 2021 11:34:19 +0100 Subject: [PATCH 5/6] enable upload pinata & self-hosted runner --- .github/workflows/release-notes.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml index 075af20b5..efb0924cb 100644 --- a/.github/workflows/release-notes.yml +++ b/.github/workflows/release-notes.yml @@ -22,7 +22,7 @@ on: jobs: release-notes: name: Crate release note - runs-on: ubuntu-latest + runs-on: [self-hosted, linux] env: CHAIN: ${{ github.event.inputs.chain }} SCOPE: ${{ github.event.inputs.scope }} @@ -40,7 +40,7 @@ jobs: target: wasm32-unknown-unknown default: true - - name: Install subwasm ${{ env.SUBWASM_VERSION }} + - name: Install subwasm run: | wget https://github.com/chevdor/subwasm/releases/download/v${{ env.SUBWASM_VERSION }}/subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb sudo dpkg -i subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb @@ -62,7 +62,7 @@ jobs: echo ::set-output name=wasm::$WASM_PATH echo ::set-output name=wasm_compressed::$WASM_COMPRESSED_PATH - subwasm info $WASM_PATH > ${{ env.CHAIN }}-subwam-info.txt + subwasm info $WASM_COMPRESSED_PATH > ${{ env.CHAIN }}-subwam-info.txt cat ${{ env.CHAIN }}-subwam-info.txt subwasm meta $WASM_PATH @@ -100,10 +100,10 @@ jobs: ${{ env.CHAIN }}-subwam-info.txt ${{ env.CHAIN }}-diff.txt - # - name: Upload wasm to pinata - # uses: aquiladev/ipfs-action@v0.1.6 - # with: - # path: ${{ steps.srtool_build.outputs.wasm_compressed }} - # service: pinata - # pinataKey: ${{ secrets.PINATA_KEY }} - # pinataSecret: ${{ secrets.PINATA_SECRET }} + - name: Upload wasm to pinata + uses: aquiladev/ipfs-action@v0.1.6 + with: + path: ${{ steps.srtool_build.outputs.wasm_compressed }} + service: pinata + pinataKey: ${{ secrets.PINATA_KEY }} + pinataSecret: ${{ secrets.PINATA_SECRET }} From a23f80b6066671f78c3bc22c691a5fc42d99d992 Mon Sep 17 00:00:00 2001 From: Ermal Kaleci Date: Sun, 31 Oct 2021 11:46:20 +0100 Subject: [PATCH 6/6] remove wasm_diff from issue body as it may exceed body limit --- .github/workflows/release-notes.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml index efb0924cb..75670b411 100644 --- a/.github/workflows/release-notes.yml +++ b/.github/workflows/release-notes.yml @@ -79,7 +79,6 @@ jobs: chain: ${{ env.CHAIN }} subwasm_info: ${{ env.CHAIN }}-subwam-info.txt srtool_details: ${{ env.CHAIN }}-srtool-details.txt - wasm_diff: ${{ env.CHAIN }}-diff.txt - name: Crate Release Checklist issue uses: JasonEtco/create-an-issue@v2