diff --git a/.github/workflows/docker-runtime-draft.yml b/.github/workflows/docker-runtime-draft.yml index bf32b322c..709662fe1 100644 --- a/.github/workflows/docker-runtime-draft.yml +++ b/.github/workflows/docker-runtime-draft.yml @@ -53,7 +53,7 @@ jobs: - name: Upload binaries uses: actions/upload-artifact@v4 with: - name: binaries-${{ matrix.chain.cpu }} + name: binaries-${{ matrix.cpu }} path: binaries docker-tanssi: runs-on: ubuntu-latest @@ -67,7 +67,7 @@ jobs: uses: actions/checkout@v4 - uses: actions/download-artifact@v4 with: - pattern: binaries-${{ matrix.chain.cpu }} + pattern: binaries-* merge-multiple: true path: build - name: Prepare diff --git a/.github/workflows/publish-binary-tannsi-relay.yml b/.github/workflows/publish-binary-tanssi-solochain.yml similarity index 100% rename from .github/workflows/publish-binary-tannsi-relay.yml rename to .github/workflows/publish-binary-tanssi-solochain.yml diff --git a/.github/workflows/publish-docker-runtime-tanssi-solochain.yml b/.github/workflows/publish-docker-runtime-tanssi-solochain.yml new file mode 100644 index 000000000..359adcd46 --- /dev/null +++ b/.github/workflows/publish-docker-runtime-tanssi-solochain.yml @@ -0,0 +1,32 @@ +name: Publish Docker runtime tanssi-solochain + +on: + workflow_dispatch: + inputs: + tag: + description: runtime tag (ex. runtime-2200-startlight) to publish on docker + required: true + +jobs: + tag-docker: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Login to DockerHub + uses: docker/login-action@v2.2.0 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Publish runtime docker image + run: | + DOCKER_IMAGE=moondancelabs/starlight + DOCKER_TAG="${{ github.event.inputs.tag }}" + COMMIT=`git rev-list -n 1 '${{ github.event.inputs.tag }}'` + SHA=sha-${COMMIT::8} + echo tagging "${DOCKER_IMAGE}:${SHA}" + docker pull "${DOCKER_IMAGE}:${SHA}" + docker tag "${DOCKER_IMAGE}:${SHA}" "${DOCKER_IMAGE}:${DOCKER_TAG}" + docker push "${DOCKER_IMAGE}:${DOCKER_TAG}" \ No newline at end of file diff --git a/.github/workflows/publish-docker-tannsi-relay.yml b/.github/workflows/publish-docker-tanssi-solochain.yml similarity index 99% rename from .github/workflows/publish-docker-tannsi-relay.yml rename to .github/workflows/publish-docker-tanssi-solochain.yml index 6437c9c6f..2c5e90a57 100644 --- a/.github/workflows/publish-docker-tannsi-relay.yml +++ b/.github/workflows/publish-docker-tanssi-solochain.yml @@ -1,4 +1,4 @@ -name: Publish Docker Dancelight +name: Publish Docker Solochain on: workflow_dispatch: diff --git a/tools/github/print-client-release-issue.ts b/tools/github/print-client-release-issue.ts index 57b2f3960..d3a2e7e2e 100644 --- a/tools/github/print-client-release-issue.ts +++ b/tools/github/print-client-release-issue.ts @@ -25,14 +25,22 @@ async function main() { const commonTemplate = ` - [ ] Start the github action Publish Binary Draft with ${previousVersion} => ${newVersion} (master branch). + - [ ] Start the github action Publish Dancelight Binary Draft with ${previousVersion} => ${newVersion} + (master branch). - [ ] Review the generated Draft and clean a bit the messages if needed (keep it draft). - [ ] Start the internal optimized binary build by starting the github action Prepare Optimized Binary Draft with the commit of ${previousVersion} (mster branch) + - [ ] Start the internal optimized binary build by starting the github action Prepare Optimized Dancelight Binary Draft with the commit of ${previousVersion} (mster branch) - [ ] Update chain-networks stagenet-dancebox config.json to include sha-xxxxx built from the optimized binary and pushed to docker (matching your ${newVersion} tag) and increase the config version + 1. + - [ ] Update chain-networks stagelight config.json to include sha-xxxxx built from the optimized binary and pushed to docker + (matching your ${newVersion} tag) and increase the config version + 1. - [ ] Test the new client on stagenet-dancebox. + - [ ] Test the new client on stagelight. - [ ] Publish the client release draft. - [ ] When everything is ok, publish the new docker image: start github action Publish Docker with ${newVersion}. + - [ ] When everything is ok, publish the new docker image: start github action Publish Docker Dancelight + with ${newVersion}. `; // Detect if it's a major release or hotfix diff --git a/tools/github/print-runtime-release-issue.ts b/tools/github/print-runtime-release-issue.ts index e711cbfb6..3354a2176 100644 --- a/tools/github/print-runtime-release-issue.ts +++ b/tools/github/print-runtime-release-issue.ts @@ -35,15 +35,27 @@ async function main() { - [ ] Re-run all extrinsics/hooks benchmarks. - [ ] Branch from master and create branch \`perm-runtime-${newVersion}\`. - [ ] Tag \`perm-${newVersion}\` with runtime-${newVersion} and push to github -- [ ] Branch from master and create branch \`perm-runtime-${newVersion}-templates\`. -- [ ] Tag \`perm-runtime-${newVersion}-templates\` with runtime-${newVersion}-templates and push to github +- [ ] Tag \`perm-runtime-${newVersion}\` with runtime-${newVersion}-templates and push to github +- [ ] Tag \`perm-runtime-${newVersion}\` with runtime-${newVersion}-starlight and push to github +- [ ] NOTE: if this is a hotfix to one of the runtimes, branch from runtime-${previousVersion} version +and create perm-runtime-${newVersion}-templates, perm-runtime-${newVersion}-starlight or perm-runtime-${newVersion}-tanssi +depending on whether the hotfix is for templates, starlight or tanssi-parachain. Then tag accordingly - [ ] Start the github action Publish Runtime Draft with runtime-${previousVersion} => runtime-${newVersion} - \`gh workflow run "Publish Runtime Draft" -r 'master' ` + - `-f from=runtime-${previousVersion} -f to=runtime-${newVersion} -f chains=run-all\` + `-f from=runtime-${previousVersion} -f to=runtime-${newVersion} -f chains=tanssi-only\` +- [ ] Start the github action Publish Runtime Draft +with runtime-${previousVersion} => runtime-${newVersion} + - \`gh workflow run "Publish Runtime Draft" -r 'master' ` + + `-f from=runtime-${previousVersion} -f to=runtime-${newVersion} -f chains=templates-only\` +- [ ] Start the github action Publish Runtime Draft + with runtime-${previousVersion} => runtime-${newVersion} + - \`gh workflow run "Publish Runtime Draft" -r 'master' ` + + `-f from=runtime-${previousVersion} -f to=runtime-${newVersion} -f chains=dancelight-only\` - [ ] Review the generated Draft and clean a bit the messages if needed (keep it draft) - [ ] Upgrade typescript API: Start the github action "Upgrade typescript API" - [ ] Upgrade stagenet-dancebox +- [ ] Upgrade stagelight - [ ] When everything is ok, publish the draft release `; @@ -68,7 +80,7 @@ ${commonTemplate} - [ ] Publish the docker runtime image (trigger the github action "Publish Docker runtime containers") - \`gh workflow run "Publish Runtime Draft" -r 'master' ` + `-f from=runtime-${previousVersion}-templates -f to=runtime-${newVersion}-templates\` -- [ ] Create a PR that increment spec version (like #1051) in both containers and tanssi runtimes +- [ ] Create a PR that increment spec version (like #1051) in both containers, tanssi and starlight runtimes `; console.log(template); } else {