Contributors #19
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Contributors | |
| on: | |
| schedule: | |
| - cron: '0 3 * * 0' # Weekly on Sundays at 3am UTC | |
| workflow_dispatch: # Manual trigger | |
| jobs: | |
| contributors: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: "20" | |
| - name: Install dependencies | |
| run: npm install | |
| - name: Update contributors | |
| run: npm run contributors:check | |
| env: | |
| PRIVATE_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Regenerate README | |
| run: | | |
| npm install | |
| npm start | |
| - name: Check for changes | |
| id: verify-changed-files | |
| run: | | |
| if git diff --exit-code > /dev/null; then | |
| echo "changed=false" >> $GITHUB_OUTPUT | |
| else | |
| echo "changed=true" >> $GITHUB_OUTPUT | |
| fi | |
| - name: Commit contributors | |
| if: steps.verify-changed-files.outputs.changed == 'true' | |
| run: | | |
| git config --local user.email "[email protected]" | |
| git config --local user.name "GitHub Action" | |
| git add . | |
| git commit -m "docs: update contributors" -a || exit 0 | |
| - name: Create Pull Request | |
| if: steps.verify-changed-files.outputs.changed == 'true' | |
| uses: peter-evans/create-pull-request@v7 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| commit-message: "docs: update contributors" | |
| title: "Update Contributors" | |
| body: | | |
| Auto-generated PR to update contributors. | |
| This PR was automatically created by the contributors workflow. | |
| branch: update-contributors | |
| delete-branch: true |