Skip to content

Add auto update with better messages. #5

Add auto update with better messages.

Add auto update with better messages. #5

name: Update Package List
on:
schedule:
- cron: '0 0 * * *' # Runs daily at midnight
push:
branches:
- main
workflow_dispatch: # Allows manual triggering
permissions:
contents: write
pull-requests: write
jobs:
update-packages:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install dependencies
run: npm install
- name: Run package extractor
run: npm run extract
- name: Check for changes
id: git-check
run: |
git diff --exit-code packages/package-list.json || echo "changes=true" >> $GITHUB_OUTPUT
- name: Read commit message
id: commit-msg
if: steps.git-check.outputs.changes == 'true'
run: |
if [ -f "temp/commit-msg.txt" ]; then
echo "message<<EOF" >> $GITHUB_OUTPUT
cat temp/commit-msg.txt >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
else
echo "message=chore(packages): update MCP package list" >> $GITHUB_OUTPUT
fi
- name: Remove temp files
run: rm -rf temp
- name: Create Pull Request
if: steps.git-check.outputs.changes == 'true'
uses: peter-evans/create-pull-request@v5
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: ${{ steps.commit-msg.outputs.message }}
title: 'Update MCP Package List'
body: |
${{ steps.commit-msg.outputs.message }}
This PR was automatically generated by the package update workflow.
branch: update-package-list
base: main
delete-branch: true
- name: Merge Pull Request
if: steps.git-check.outputs.changes == 'true'
uses: peter-evans/create-or-update-pull-request@v5
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: ${{ steps.commit-msg.outputs.message }}
branch: update-package-list
base: main