From 3e89b8c8f878bcb5700574462d6679f9fda15628 Mon Sep 17 00:00:00 2001 From: ccamel Date: Mon, 14 Oct 2024 20:24:55 +0200 Subject: [PATCH] ci(workflow): enable manual trigger of notif with specific tag input --- .github/workflows/notify-release.yml | 50 ++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/.github/workflows/notify-release.yml b/.github/workflows/notify-release.yml index 3da2e219..77fa2f7c 100644 --- a/.github/workflows/notify-release.yml +++ b/.github/workflows/notify-release.yml @@ -4,39 +4,59 @@ on: release: types: [published] + workflow_dispatch: + inputs: + tag: + description: "Release tag (leave empty for last one)" jobs: + set-env: + runs-on: ubuntu-22.04 + outputs: + tag: ${{ steps.set-env.outputs.tag }} + repo_name: ${{ steps.set-env.outputs.repo_name }} + steps: + - name: Expose tag and repo_name + id: set-env + run: | + if [ -n "$INPUT_TAG" ]; then + TAG="$INPUT_TAG" + else + TAG=$(gh release view --json tagName -q '.tagName') + fi + echo "tag=$TAG" >> $GITHUB_OUTPUT + + REPO_NAME=${GITHUB_REPOSITORY#${GITHUB_REPOSITORY_OWNER}/} + echo "repo_name=$REPO_NAME" >> $GITHUB_OUTPUT + env: + INPUT_TAG: ${{ github.event.inputs.tag }} + notify-github-discussion: runs-on: ubuntu-22.04 + needs: set-env steps: - name: Check out repository uses: actions/checkout@v4 - - name: Set ENV variables - run: | - echo "REPO_NAME=${GITHUB_REPOSITORY#$GITHUB_REPOSITORY_OWNER/}" >> $GITHUB_ENV - - name: Extract changelog for tag run: | { echo 'CHANGELOG<> "$GITHUB_ENV" - env: - TAG: ${{ github.event.release.tag_name }} - name: Create an announcement discussion for release uses: abirismyname/create-discussion@v1.2.0 with: - title: 🎉 ${{ env.REPO_NAME }} ${{ github.event.release.tag_name }} released! + title: 🎉 ${{ needs.set-env.outputs.repo_name }} ${{ needs.set-env.outputs.tag }} released! body: | - [${{ github.repository }}](https://github.com/${{ github.repository }}) ${{ github.event.release.tag_name }} has been released! + [${{ github.repository }}](https://github.com/${{ github.repository }}) ${{ needs.set-env.outputs.tag }} has been released! ${{ env.CHANGELOG }} ## Resources - 📄 Changelog: + 📄 Changelog: 🛠️ Official repo: 💬 Join us on Discord: <${{ env.DISCORD_URL }}> 🐦 Follow us on Twitter: <${{ env.TWITTER_URL }}> @@ -44,13 +64,14 @@ jobs: category-id: ${{ env.CATEGORY_ID }} env: GH_TOKEN: ${{ secrets.OPS_TOKEN }} - DISCORD_URL: "https://discord.gg/axone" - TWITTER_URL: "https://twitter.com/axonexyz" - REPOSITORY_ID: "R_kgDOLsWt6A" - CATEGORY_ID: "DIC_kwDOLsWt6M4CemGO" + DISCORD_URL: ${{ vars.DISCORD_URL }} + TWITTER_URL: ${{ vars.TWITTER_URL }} + REPOSITORY_ID: ${{ vars.DISCUSSIONS_REPOSITORY_ID }} + CATEGORY_ID: ${{ vars.DISCUSSIONS_CATEGORY_ID }} update-docs: runs-on: ubuntu-22.04 + if: github.event_name != 'workflow_dispatch' steps: - name: Update modules docs repository uses: fjogeleit/http-request-action@v1 @@ -105,6 +126,7 @@ jobs: update-docs-version: runs-on: ubuntu-22.04 + if: github.event_name != 'workflow_dispatch' steps: - name: Update docs version uses: fjogeleit/http-request-action@v1