diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f599b583..d5281540 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -51,6 +51,7 @@ jobs: runs-on: ubuntu-latest env: GITHUB_TOKEN: ${{ secrets.OR_GITHUB_TOKEN }} + BRANCH_NAME: npm-version-patch steps: # CHECKOUT PROJECT @@ -76,7 +77,7 @@ jobs: if [ ${{ inputs.dev }} == true ]; then echo "TAG_NAME=$(npm version prerelease --preid=${{ inputs.jsTag }} --no-git-tag-version --allow-same-version)" >> $GITHUB_ENV else - echo "TAG_NAME=$(npm version patch)" >> $GITHUB_ENV + echo "TAG_NAME=$(npm version patch --no-git-tag-version)" >> $GITHUB_ENV fi # DOWNLOAD CLI IF IT IS A DEV VERSION AND A CLI TAG WAS PROVIDED @@ -93,11 +94,42 @@ jobs: npm ci npm run build + # CREATE PR FOR VERSION + - name: Create Pull Request + id: create_pr + if: inputs.dev == false + uses: peter-evans/create-pull-request@v6.0.5 + with: + token: ${{ env.GITHUB_TOKEN }} + branch: ${{ env.BRANCH_NAME }} + title: "Update Version - Automated Changes" + body: "This is an automated PR created by GitHub Actions" + base: main + draft: false + + # WAIT FOR PR CREATION + - name: Wait for PR to be created + id: pr + if: inputs.dev == false + uses: octokit/request-action@v2.3.1 + with: + route: GET /repos/${{ github.repository }}/pulls?head=${{ github.repository_owner }}:${{ env.BRANCH_NAME }} + + # MERGE PR TO MAIN + - name: Merge Pull Request + if: inputs.dev == false + uses: octokit/request-action@v2.3.1 + with: + route: PUT /repos/${{ github.repository }}/pulls/${{ steps.create_pr.outputs.pull-request-number }}/merge + merge_method: squash # PUSH TAGS IF IT IS A RELEASE - - name: Push tag if release + - name: Push tag if: inputs.dev == false - run: git push && git push --tags + run: | + git pull + git tag ${{env.TAG_NAME}} + git push --tags # PUBLISH NPM PACKAGE