mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-25 19:57:56 +00:00
f3073d8b33
This PR adds missing `environment: release` parameter to the `rc-automation ` GHA
114 lines
4.3 KiB
YAML
114 lines
4.3 KiB
YAML
name: Release - RC automation
|
|
on:
|
|
push:
|
|
branches:
|
|
# Catches release-polkadot-v1.2.3, release-v1.2.3-rc1, etc
|
|
- release-v[0-9]+.[0-9]+.[0-9]+*
|
|
- release-cumulus-v[0-9]+*
|
|
- release-polkadot-v[0-9]+*
|
|
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
tag_rc:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
channel:
|
|
- name: "RelEng: Polkadot Release Coordination"
|
|
room: '!cqAmzdIcbOFwrdrubV:parity.io'
|
|
environment: release
|
|
|
|
steps:
|
|
- name: Checkout sources
|
|
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Get release product
|
|
id: get_rel_product
|
|
shell: bash
|
|
run: |
|
|
current_branch=$(git branch --show-current)
|
|
echo "Current branch: $current_branch"
|
|
if [[ "$current_branch" =~ "release-polkadot" ]]; then
|
|
echo "product=polkadot" >> $GITHUB_OUTPUT
|
|
elif [[ "$current_branch" =~ "release-cumulus" ]]; then
|
|
echo "product=polkadot-parachain" >> $GITHUB_OUTPUT
|
|
fi
|
|
|
|
|
|
- name: Compute next rc tag for polkadot
|
|
if: ${{ steps.get_rel_product.outputs.product == 'polkadot' }}
|
|
id: compute_tag_polkadot
|
|
shell: bash
|
|
run: |
|
|
. ./.github/scripts/common/lib.sh
|
|
|
|
# Get last rc tag if exists, else set it to {version}-rc1
|
|
version=$(get_version_from_ghref ${GITHUB_REF})
|
|
echo "$version"
|
|
echo "version=$version" >> $GITHUB_OUTPUT
|
|
|
|
last_rc=$(get_latest_rc_tag $version polkadot)
|
|
|
|
if [ -n "$last_rc" ]; then
|
|
suffix=$(increment_rc_tag $last_rc)
|
|
echo "new_tag=$version-rc$suffix" >> $GITHUB_OUTPUT
|
|
echo "first_rc=false" >> $GITHUB_OUTPUT
|
|
else
|
|
echo "new_tag=$version-rc1" >> $GITHUB_OUTPUT
|
|
echo "first_rc=true" >> $GITHUB_OUTPUT
|
|
fi
|
|
|
|
- name: Compute next rc tag for polkadot-parachain
|
|
if: ${{ steps.get_rel_product.outputs.product == 'polkadot-parachain' }}
|
|
id: compute_tag_cumulus
|
|
shell: bash
|
|
run: |
|
|
. ./.github/scripts/common/lib.sh
|
|
|
|
# Get last rc tag if exists, else set it to polkadot-parachains-{version}-rc1
|
|
version=$(get_version_from_ghref ${GITHUB_REF})
|
|
echo "$version"
|
|
echo "version=$version" >> $GITHUB_OUTPUT
|
|
|
|
last_rc=$(get_latest_rc_tag $version polkadot-parachain)
|
|
if [ -n "$last_rc" ]; then
|
|
suffix=$(increment_rc_tag $last_rc)
|
|
echo "new_tag=polkadot-parachains-$version-rc$suffix" >> $GITHUB_OUTPUT
|
|
echo "first_rc=false" >> $GITHUB_OUTPUT
|
|
else
|
|
echo "new_tag=polkadot-parachain-$version-rc1" >> $GITHUB_OUTPUT
|
|
echo "first_rc=true" >> $GITHUB_OUTPUT
|
|
fi
|
|
|
|
- name: Apply new tag
|
|
uses: tvdias/github-tagger@ed7350546e3e503b5e942dffd65bc8751a95e49d # v0.0.2
|
|
with:
|
|
# We can't use the normal GITHUB_TOKEN for the following reason:
|
|
# https://docs.github.com/en/actions/reference/events-that-trigger-workflows#triggering-new-workflows-using-a-personal-access-token
|
|
# RELEASE_BRANCH_TOKEN requires public_repo OAuth scope
|
|
repo-token: "${{ secrets.RELEASE_BRANCH_TOKEN }}"
|
|
tag: ${{ steps.compute_tag_polkadot.outputs.new_tag || steps.compute_tag_cumulus.outputs.new_tag }}
|
|
|
|
# - id: create-issue
|
|
# uses: JasonEtco/create-an-issue@e27dddc79c92bc6e4562f268fffa5ed752639abd # v2.9.1
|
|
# # Only create the issue if it's the first release candidate
|
|
# if: steps.compute_tag.outputs.first_rc == 'true'
|
|
# env:
|
|
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
# VERSION: ${{ steps.compute_tag.outputs.version }}
|
|
# with:
|
|
# filename: .github/ISSUE_TEMPLATE/release.md
|
|
|
|
- name: Send Matrix message to ${{ matrix.channel.name }}
|
|
uses: s3krit/matrix-message-action@70ad3fb812ee0e45ff8999d6af11cafad11a6ecf # v0.0.3
|
|
# if: steps.create-issue.outputs.url != ''
|
|
with:
|
|
room_id: ${{ matrix.channel.room }}
|
|
access_token: ${{ secrets.RELEASENOTES_MATRIX_V2_ACCESS_TOKEN }}
|
|
server: m.parity.io
|
|
message: |
|
|
Release process for polkadot ${{ steps.compute_tag_polkadot.outputs.new_tag || steps.compute_tag_cumulus.outputs.new_tag }} has been started.<br/>
|