diff --git a/.github/workflows/pr-pkg-new.yml b/.github/workflows/pr-pkg-new.yml new file mode 100644 index 00000000..531c3ef7 --- /dev/null +++ b/.github/workflows/pr-pkg-new.yml @@ -0,0 +1,43 @@ +name: Publish Approved Pull Requests +on: + pull_request_review: + types: [submitted] + +jobs: + check: + # First, trigger a permissions check on the user approving the pull request. + if: github.event.review.state == 'approved' + runs-on: ubuntu-latest + outputs: + has-permissions: ${{ steps.checkPermissions.outputs.require-result }} + steps: + - name: Check permissions + id: checkPermissions + uses: actions-cool/check-user-permission@v2 + with: + # In this example, the approver must have the write access + # to the repository to trigger the package preview. + require: "write" + + publish: + needs: check + # Publish the preview package only if the permissions check passed. + if: needs.check.outputs.has-permissions == 'true' + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - run: corepack enable + - uses: actions/setup-node@v4 + with: + node-version: 20 + + - name: Install dependencies + run: yarn + + - name: Build module + run: yarn dev:prepare && yarn prepack + + - name: Publish PR + run: npx pkg-pr-new publish \ No newline at end of file