diff --git a/.github/workflows/greet_on_first_merge.yml b/.github/workflows/greet_on_first_merge.yml new file mode 100644 index 000000000..8864f35cc --- /dev/null +++ b/.github/workflows/greet_on_first_merge.yml @@ -0,0 +1,38 @@ +name: Greet on User First PR Merge + +on: + pull_request: + types: [closed] + +jobs: + greet: + runs-on: ubuntu-latest + steps: + - uses: actions/github-script@v4 + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + script: | + const prNumber = context.payload.pull_request.number; + const authorLogin = context.payload.pull_request.user.login; + + const firstPR = await github.issues.listForRepo({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_requests: { + state: 'closed', + author: authorLogin, + }, + }); + + console.log(firstPR.data.length); + + if (firstPR.data.length === 1) { + const greetingMessage = ` Congratulations, @${authorLogin} for your first pull request merge in this repository! 🎉🎉. Thanks for your contribution to JSON Schema! `; + + await github.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: prNumber, + body: greetingMessage + }); + }