diff --git a/.github/workflows/ensure-changelog-entry.yml b/.github/workflows/ensure-changelog-entry.yml new file mode 100644 index 00000000000..758b1384988 --- /dev/null +++ b/.github/workflows/ensure-changelog-entry.yml @@ -0,0 +1,45 @@ +name: Check change log entry +on: + pull_request: + types: [opened, reopened, edited] + +jobs: + ensure_changelog_entry: + permissions: + contents: read + issues: write + runs-on: ubuntu-latest + steps: + - name: Find changelog entry + uses: actions/github-script@v7 + with: + github-token: ${{secrets.GITHUB_TOKEN}} + script: | + // Groups: yes - 1, entry - 2, no - 3 + const regex = /\*\*CHANGELOG entry\*\*\s+(?:(?yes|yep|yeah)(?:\.\s*(.*))?|(no|nope|none)\.?)\s*(?:\*\*Additional Notes|\*\*How to test|\z)/mi + const matches = context.payload.pull_request.body.match(regex) + + // Is author a part of the DataDog/ruby-guild + if (false) { + // Leave comment for DataDog/ruby-guild and + // return + } + + console.log(context.payload.pull_request.body) + console.log(matches) + + // If main response is missing + //if (undefined == matches.at(1) || undefined == matches.at(3)) { + // await github.rest.issues.createComment({ + // owner: context.repo.owner, + // repo: context.repo.repo, + // issue_number: ${{ github.event.pull_request.number }}, + // body: `Please fill CHANGELOG entry section. + + // If your changes need mention in a CHANGELOG + // > Yes. + + // or as follows if they don't + // > No.`, + // }) + //}