From 3a89265c2d3f873da093ae97e0108625fa925ae1 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 11:17:51 +0100 Subject: [PATCH 01/12] build from scracth --- .github/workflows/publish-runtime.yml | 23 ++++++++++++++++++----- docker/tanssi-srtool.Dockerfile | 11 +++++++++++ 2 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 docker/tanssi-srtool.Dockerfile diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index 18e420f59..1871039f8 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -69,9 +69,15 @@ jobs: matrix: chain: ${{ fromJson(needs.matrix_prep.outputs.matrix_tests) }} srtool_image: - - moonbeamfoundation/srtool + - moondancelabs/srtool srtool_image_tag: - - 1.70.0 + - 1.75.0 + # Change this once https://github.com/paritytech/srtool/pull/81 gets merged + srtool_build_base_dockerhub: + - moondancelabs/srtool + srtool_build_source_image_tag: + - temp-1.75 + steps: - uses: actions/checkout@v3 with: @@ -81,14 +87,21 @@ jobs: with: name: original-scripts path: original-scripts - - name: Build & Push purestake/srtool image + - name: Build & Push moondancelabs/srtool image if: github.repository == 'moondance-labs/tanssi' run: | - echo ${{ matrix.chain.runtime_name }} docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false if [[ $image_exists = "false" ]]; then - exit 1 + echo building "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" + docker build --pull --no-cache . \ + -f docker/moonbeam-srtool.Dockerfile \ + --build-arg SRTOOL_IMAGE_TAG=${{ matrix.srtool_build_source_image_tag }} \ + --build-arg SRTOOL_IMAGE_REPO=${{ matrix.srtool_build_base_dockerhub }} \ + -t ${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }} + + echo pushing "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" + docker push "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" else echo skiping build "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}", image already exists fi diff --git a/docker/tanssi-srtool.Dockerfile b/docker/tanssi-srtool.Dockerfile new file mode 100644 index 000000000..ef607e2df --- /dev/null +++ b/docker/tanssi-srtool.Dockerfile @@ -0,0 +1,11 @@ +ARG SRTOOL_IMAGE_TAG +ARG SRTOOL_IMAGE_REPO + +FROM ${SRTOOL_IMAGE_REPO}:${SRTOOL_IMAGE_TAG} + +USER root + +RUN apt-get update && \ + apt-get install openssh-server -y + +USER 1001 \ No newline at end of file From 3c60c1758459da3e0fa5573a1d4701c3be49064b Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 11:23:11 +0100 Subject: [PATCH 02/12] let's login to docker --- .github/workflows/publish-runtime.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index 1871039f8..88911b45d 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -82,6 +82,13 @@ jobs: - uses: actions/checkout@v3 with: ref: ${{ github.event.inputs.to }} + - name: Login to DockerHub + uses: docker/login-action@v2.2.0 + if: github.repository == 'moonbeam-foundation/moonbeam' + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_PASSWORD }} + registry: index.docker.io - name: Download original scripts uses: actions/download-artifact@v3 with: @@ -95,7 +102,7 @@ jobs: if [[ $image_exists = "false" ]]; then echo building "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" docker build --pull --no-cache . \ - -f docker/moonbeam-srtool.Dockerfile \ + -f docker/tanssi-srtool.Dockerfile \ --build-arg SRTOOL_IMAGE_TAG=${{ matrix.srtool_build_source_image_tag }} \ --build-arg SRTOOL_IMAGE_REPO=${{ matrix.srtool_build_base_dockerhub }} \ -t ${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }} From b330a9af3cd07624a9e8dc7f34c130d5d382ae7d Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 11:26:09 +0100 Subject: [PATCH 03/12] change --- .github/workflows/publish-runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index 88911b45d..309ebf066 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -84,7 +84,7 @@ jobs: ref: ${{ github.event.inputs.to }} - name: Login to DockerHub uses: docker/login-action@v2.2.0 - if: github.repository == 'moonbeam-foundation/moonbeam' + if: github.repository == 'moondance-labs/tanssi' with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_PASSWORD }} From 923df84eaefdccb1ca0125bf3768b29ba9c5a5b0 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 11:29:37 +0100 Subject: [PATCH 04/12] wip --- .github/workflows/publish-runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index 309ebf066..cdbfc2d90 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -87,7 +87,7 @@ jobs: if: github.repository == 'moondance-labs/tanssi' with: username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_PASSWORD }} + password: ${{ secrets.DOCKERHUB_TOKEN }} registry: index.docker.io - name: Download original scripts uses: actions/download-artifact@v3 From 6e0f45a5141271e49a78264afce092946a970aa6 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 11:44:01 +0100 Subject: [PATCH 05/12] add job to build runtimes with chevdor GH action --- .github/workflows/publish-runtime-chevdor.yml | 214 ++++++++++++++++++ 1 file changed, 214 insertions(+) create mode 100644 .github/workflows/publish-runtime-chevdor.yml diff --git a/.github/workflows/publish-runtime-chevdor.yml b/.github/workflows/publish-runtime-chevdor.yml new file mode 100644 index 000000000..492193224 --- /dev/null +++ b/.github/workflows/publish-runtime-chevdor.yml @@ -0,0 +1,214 @@ +name: Publish Runtime Draft Chevdor + +# The code (like generate-release-body) will be taken from the tag versions, not master +on: + workflow_dispatch: + inputs: + from: + description: tag (ex. runtime-53) to retrieve commit diff from + required: true + to: + description: tag (ex. runtime-155) to generate release note and srtool runtimes from + required: true + chains: + description: the chains for which we should do the release (ex. dancebox) + required: false + type: choice + default: tanssi-only + options: + - tanssi-only + - templates-only + - run-all + +jobs: + ####### Build runtimes with srtool ####### + + setup-scripts: + runs-on: self-hosted + steps: + ## Use scripts and tools from current branch + - uses: actions/checkout@v3 + - name: Upload scripts + uses: actions/upload-artifact@v3 + with: + name: original-scripts + path: scripts + - name: Upload tools + uses: actions/upload-artifact@v3 + with: + name: original-tools + path: tools + + matrix_prep: + runs-on: ubuntu-latest + outputs: + matrix_tests: ${{ steps.prepare.outputs.matrix_tests }} + steps: + - uses: actions/checkout@v3 + + # Build input dependent matrix + - name: create matrix + id: prepare + run: | + dancebox='{"runtime_name": "dancebox","runtime_path" : "./runtime/dancebox/src/lib.rs", "runtime_dir" : "./runtime/dancebox", "chain_name": "dancebox"}' + flashbox='{"runtime_name": "flashbox","runtime_path" : "./runtime/flashbox/src/lib.rs", "runtime_dir" : "./runtime/flashbox", "chain_name": "flashbox"}' + frontier_template='{"runtime_name": "frontier-template","runtime_path" : "./container-chains/templates/frontier/runtime/src/lib.rs", "runtime_dir" : "./container-chains/templates/frontier/runtime/", "chain_name": "container-chain-template-frontier"}' + simple_template='{"runtime_name": "simple-template","runtime_path" : "./container-chains/templates/simple/runtime/src/lib.rs", "runtime_dir" : "./container-chains/templates/simple/runtime/", "chain_name": "container-chain-template-simple"}' + + if [[ ${{ github.event.inputs.chains }} = "tanssi-only" ]]; then + echo "matrix_tests=[$dancebox, $flashbox]" >> $GITHUB_OUTPUT + elif [[ ${{ github.event.inputs.chains }} = "templates-only" ]]; then + echo "matrix_tests=[$simple_template, $frontier_template]" >> $GITHUB_OUTPUT + else + echo "matrix_tests=[$dancebox, $flashbox, $simple_template, $frontier_template]" >> $GITHUB_OUTPUT + fi + build-srtool-runtimes: + needs: ["setup-scripts", "matrix_prep"] + runs-on: ubuntu-latest + strategy: + matrix: + chain: ${{ fromJson(needs.matrix_prep.outputs.matrix_tests) }} + srtool_image: + - moondancelabs/srtool + srtool_image_tag: + - 1.75.0 + steps: + - uses: actions/checkout@v3 + with: + ref: ${{ github.event.inputs.to }} + - name: Login to DockerHub + uses: docker/login-action@v2.2.0 + if: github.repository == 'moondance-labs/tanssi' + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + registry: index.docker.io + - name: Download original scripts + uses: actions/download-artifact@v3 + with: + name: original-scripts + path: original-scripts + - name: Build & Push purestake/srtool image + if: github.repository == 'moondance-labs/tanssiasdas' + run: | + exit 1 + echo ${{ matrix.chain.runtime_name }} + docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false + + if [[ $image_exists = "false" ]]; then + exit 1 + else + echo skiping build "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}", image already exists + fi + # Build WASM with Substrate Runtime Tool + - name: Srtool build + id: srtool_build + uses: chevdor/srtool-actions@v0.9.2 + with: + chain: ${{ matrix.chain.chain_name }} + runtime_dir: ${{ matrix.chain.runtime_dir }} + - name: Summary + run: | + echo '${{ steps.srtool_build.outputs.json }}' | jq . > ${{ matrix.chain.runtime_name }}-srtool-digest.json + cat ${{ matrix.chain.runtime_name }}-srtool-digest.json + cp ${{ steps.srtool_build.outputs.wasm_compressed }} ${{ matrix.chain.runtime_name }}-runtime.compact.compressed.wasm + - name: Archive Artifacts for ${{ matrix.chain }} + uses: actions/upload-artifact@v2 + with: + name: runtime-info + path: | + ${{ matrix.chain.runtime_name }}-runtime.compact.compressed.wasm + ${{ matrix.chain.runtime_name }}-srtool-digest.json + + + ####### Prepare the release draft ####### + prepare-draft-release: + runs-on: ubuntu-latest + needs: ["setup-scripts", "build-srtool-runtimes", "matrix_prep"] + outputs: + release_url: ${{ steps.create-release.outputs.html_url }} + asset_upload_url: ${{ steps.create-release.outputs.upload_url }} + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + ref: ${{ github.event.inputs.to }} + fetch-depth: 0 + - name: Use Node.js 18.x + uses: actions/setup-node@v3 + with: + node-version: 18.x + - name: Download Original Tools + uses: actions/download-artifact@v3 + with: + name: original-tools + path: original-tools + - name: Download runtime-info + uses: actions/download-artifact@v3.0.2 + with: + name: runtime-info + path: build + - name: Generate release body + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + id: generate-release-body + working-directory: original-tools + run: | + RUNTIMES=$(echo '${{needs.matrix_prep.outputs.matrix_tests}}' | jq -r '.[] | .runtime_name + " "') + yarn + yarn -s run ts-node github/generate-runtimes-body.ts --owner "${{ github.repository_owner }}" --repo "$(basename ${{ github.repository }})" --from "${{ github.event.inputs.from }}" --to "${{ github.event.inputs.to }}" --srtool-report-folder '../build/' --runtimes $RUNTIMES > ../body.md - name: Get runtime version + - name: Create draft release + id: create-release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.event.inputs.to }} + release_name: Runtime ${{ github.event.inputs.to }} + body_path: body.md + draft: true + + + ####### Upload asserts to the release draft ####### + publish-draft-release: + runs-on: ubuntu-latest + needs: ["setup-scripts", "build-srtool-runtimes", "prepare-draft-release", "matrix_prep"] + strategy: + matrix: + chain: ${{ fromJson(needs.matrix_prep.outputs.matrix_tests) }} + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + ref: ${{ github.event.inputs.to }} + fetch-depth: 0 + - name: Download ${{ matrix.chain }} runtime + uses: actions/download-artifact@v3.0.2 + with: + name: runtime-info + path: build + - name: Get runtime version + id: get-runtime-ver + run: | + runtime_ver="$(cat ${{ matrix.chain.runtime_path }} | grep -o 'spec_version: [0-9]*' | tail -1 | grep -o '[0-9]*')" + echo "runtime_ver=$runtime_ver" >> $GITHUB_OUTPUT + mv build/${{ matrix.chain.runtime_name }}-runtime.compact.compressed.wasm ${{ matrix.chain.runtime_name }}-runtime-${runtime_ver}.wasm + mv build/${{ matrix.chain.runtime_name }}-srtool-digest.json ${{ matrix.chain.runtime_name }}-runtime-${runtime_ver}-srtool-digest.json + - name: Upload ${{ matrix.chain }} wasm + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ needs.prepare-draft-release.outputs.asset_upload_url }} + asset_path: ${{ matrix.chain.runtime_name }}-runtime-${{ steps.get-runtime-ver.outputs.runtime_ver }}.wasm + asset_name: ${{ matrix.chain.runtime_name }}-runtime-${{ steps.get-runtime-ver.outputs.runtime_ver }}.wasm + asset_content_type: application/octet-stream + - name: Upload ${{ matrix.chain.runtime_name }} srtool digest + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ needs.prepare-draft-release.outputs.asset_upload_url }} + asset_path: ${{ matrix.chain.runtime_name }}-runtime-${{ steps.get-runtime-ver.outputs.runtime_ver }}-srtool-digest.json + asset_name: ${{ matrix.chain.runtime_name }}-runtime-${{ steps.get-runtime-ver.outputs.runtime_ver }}.srtool-digest.json + asset_content_type: application/json From 2256a9352fee1e604faa23034cdc88cea61591bc Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 11:59:48 +0100 Subject: [PATCH 06/12] chevdor fix --- .github/workflows/publish-runtime-chevdor.yml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.github/workflows/publish-runtime-chevdor.yml b/.github/workflows/publish-runtime-chevdor.yml index 492193224..5b20364b9 100644 --- a/.github/workflows/publish-runtime-chevdor.yml +++ b/.github/workflows/publish-runtime-chevdor.yml @@ -88,18 +88,6 @@ jobs: with: name: original-scripts path: original-scripts - - name: Build & Push purestake/srtool image - if: github.repository == 'moondance-labs/tanssiasdas' - run: | - exit 1 - echo ${{ matrix.chain.runtime_name }} - docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false - - if [[ $image_exists = "false" ]]; then - exit 1 - else - echo skiping build "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}", image already exists - fi # Build WASM with Substrate Runtime Tool - name: Srtool build id: srtool_build From a813a25ff5fdcabde3578942c59e2c3f111f0590 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 12:03:34 +0100 Subject: [PATCH 07/12] fix --- .github/workflows/publish-runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index cdbfc2d90..de40336a9 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -99,7 +99,7 @@ jobs: run: | docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false - if [[ $image_exists = "false" ]]; then + if [[ $image_exists == "false" ]]; then echo building "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" docker build --pull --no-cache . \ -f docker/tanssi-srtool.Dockerfile \ From df536c783fb188a44fd18022e8906296c2716149 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 12:15:45 +0100 Subject: [PATCH 08/12] echo image exists --- .github/workflows/publish-runtime.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index de40336a9..e713b4d3c 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -99,6 +99,7 @@ jobs: run: | docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false + echo $image_exists if [[ $image_exists == "false" ]]; then echo building "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" docker build --pull --no-cache . \ From d2f9867a9eaeba82b9907bb74e5a7b477c98e820 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 12:23:41 +0100 Subject: [PATCH 09/12] trying to fix --- .github/workflows/publish-runtime-chevdor.yml | 1 - .github/workflows/publish-runtime.yml | 4 +--- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/publish-runtime-chevdor.yml b/.github/workflows/publish-runtime-chevdor.yml index 5b20364b9..bdeec4830 100644 --- a/.github/workflows/publish-runtime-chevdor.yml +++ b/.github/workflows/publish-runtime-chevdor.yml @@ -82,7 +82,6 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - registry: index.docker.io - name: Download original scripts uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index e713b4d3c..9eadba9cf 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -88,7 +88,6 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - registry: index.docker.io - name: Download original scripts uses: actions/download-artifact@v3 with: @@ -99,8 +98,7 @@ jobs: run: | docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false - echo $image_exists - if [[ $image_exists == "false" ]]; then + if [[ $image_exists = "false" ]]; then echo building "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" docker build --pull --no-cache . \ -f docker/tanssi-srtool.Dockerfile \ From 4c08c3280907a1c9e7a5a3ec2d153a53c8f5d4d0 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 12:53:04 +0100 Subject: [PATCH 10/12] try without if --- .github/workflows/publish-runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index 9eadba9cf..357714457 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -84,10 +84,10 @@ jobs: ref: ${{ github.event.inputs.to }} - name: Login to DockerHub uses: docker/login-action@v2.2.0 - if: github.repository == 'moondance-labs/tanssi' with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} + registry: index.docker.io - name: Download original scripts uses: actions/download-artifact@v3 with: From b2d45837eb3a7bec90085bc24cc44c95cff8f681 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 13:11:18 +0100 Subject: [PATCH 11/12] pull remote registry --- .github/workflows/publish-runtime.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime.yml b/.github/workflows/publish-runtime.yml index 357714457..336591579 100644 --- a/.github/workflows/publish-runtime.yml +++ b/.github/workflows/publish-runtime.yml @@ -96,7 +96,7 @@ jobs: - name: Build & Push moondancelabs/srtool image if: github.repository == 'moondance-labs/tanssi' run: | - docker pull "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false + docker pull "registry.hub.docker.com/${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" && image_exists=true || image_exists=false if [[ $image_exists = "false" ]]; then echo building "${{ matrix.srtool_image }}:${{ matrix.srtool_image_tag }}" From 347e09e6bcc69b3f28bf05d1890f219338f06c2a Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 29 Feb 2024 15:00:35 +0100 Subject: [PATCH 12/12] resolve --- .github/workflows/publish-runtime-chevdor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-runtime-chevdor.yml b/.github/workflows/publish-runtime-chevdor.yml index bdeec4830..3e566e9a7 100644 --- a/.github/workflows/publish-runtime-chevdor.yml +++ b/.github/workflows/publish-runtime-chevdor.yml @@ -143,7 +143,7 @@ jobs: run: | RUNTIMES=$(echo '${{needs.matrix_prep.outputs.matrix_tests}}' | jq -r '.[] | .runtime_name + " "') yarn - yarn -s run ts-node github/generate-runtimes-body.ts --owner "${{ github.repository_owner }}" --repo "$(basename ${{ github.repository }})" --from "${{ github.event.inputs.from }}" --to "${{ github.event.inputs.to }}" --srtool-report-folder '../build/' --runtimes $RUNTIMES > ../body.md - name: Get runtime version + yarn -s run ts-node github/generate-runtimes-body.ts --owner "${{ github.repository_owner }}" --repo "$(basename ${{ github.repository }})" --from "${{ github.event.inputs.from }}" --to "${{ github.event.inputs.to }}" --srtool-report-folder '../build/' --runtimes $RUNTIMES > ../body.md - name: Create draft release id: create-release uses: actions/create-release@v1