From 4184616f1fa3ba73c5a7ed8583c5c0cc8f5cc32c Mon Sep 17 00:00:00 2001 From: Sergii Stotskyi Date: Sun, 16 Jun 2024 05:40:18 +0300 Subject: [PATCH] chore: updates release gha to let me know what is going to be released after merge --- .github/workflows/release.yml | 11 ++++++++--- packages/dx/bin/release-packages.sh | 13 ++++++++++--- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 95e77ff0a..cec22bf00 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -11,7 +11,7 @@ on: jobs: release: runs-on: ubuntu-latest - if: ${{ !github.event.pull_request || github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'released') }} + if: ${{ contains(github.event.pull_request.labels.*.name, 'released') }} steps: - name: Check out code uses: actions/checkout@v3 @@ -44,6 +44,7 @@ jobs: GH_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }} NPM_TOKEN: ${{ secrets.RELEASE_NPM_TOKEN }} ACTIONS_STEP_DEBUG: ${{ secrets.ACTIONS_STEP_DEBUG }} + PREVIEW_BRANCH: ${{ github.event.pull_request.merged != true && github.ref_name }} run: | if [[ "${TRACE:-false}" == true || "${ACTIONS_STEP_DEBUG:-false}" == true ]]; then set -o xtrace # Trace the execution of the script (debug) @@ -51,9 +52,13 @@ jobs: . ./packages/dx/bin/release-packages.sh changed_paths="$(gh pr view --json files --jq '.files.[].path' "${{ github.event.pull_request.number }}" | cut -d / -f 1,2 | uniq)"; - release_packages "$changed_paths" + release_packages "$changed_paths" "$PREVIEW_BRANCH" released_packages=$(extract_package_versions "$changed_paths"); if [[ "${{github.event.pull_request.number}}" != "" && "$released_packages" != "" ]]; then - gh pr comment "${{ github.event.pull_request.number }}" --body "🚀 Released in ${released_packages}" + body="After merging this PR, changes will be released in ${released_packages}" + if [ "$PREVIEW_BRANCH" = "" ]; then + body="🚀 This PR changes was released in ${released_packages}" + fi + gh pr comment "${{ github.event.pull_request.number }}" --body "$body" fi diff --git a/packages/dx/bin/release-packages.sh b/packages/dx/bin/release-packages.sh index 93f4ce653..e8f5d303a 100755 --- a/packages/dx/bin/release-packages.sh +++ b/packages/dx/bin/release-packages.sh @@ -2,9 +2,12 @@ release_packages() { changed_paths=$1; + preview_branch=$2; + + echo "Releasing packages with the next args (branch: ${preview_branch:-master}): $changed_paths" if [ "$changed_paths" = "" ];then - echo <<<______HERE__ + echo <<<______HERE__ Usage: release-packages "packages/casl-ability" release-packages ' @@ -28,8 +31,12 @@ ______HERE__; pnpm_options="${pnpm_options} --filter ./${path}" done - echo "running: pnpm run -r $pnpm_options release" >> $GITHUB_STEP_SUMMARY - pnpm run -r $pnpm_options release + release_options="" + if [ "$preview_branch" != "" ]; then + release_options=" --dry-run --no-ci --branches master,$preview_branch" + fi + echo "running: pnpm run -r $pnpm_options release $release_options" >> $GITHUB_STEP_SUMMARY + pnpm run -r $pnpm_options release $release_options } extract_package_versions() {