Skip to content

Weekly Update Workflow #10

Weekly Update Workflow

Weekly Update Workflow #10

name: Weekly Update Workflow
on:
push:
branches: weekly-update
workflow_dispatch:
schedule:
- cron: '0 0 * * 0'
permissions:
contents: write
jobs:
update-and-release:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '21'
- name: Install dependencies with pnpm
run: |
npm install -g pnpm
pnpm install
- name: Run update script
run: |
python update.py
- name: Check for README.md changes
id: check_changes
run: |
git diff --name-only | grep 'README.md' && echo "::set-output name=README_CHANGED::true" || echo "::set-output name=README_CHANGED::false"
- name: Package with pnpm
if: steps.check_changes.outputs.README_CHANGED == 'true'
run: |
pnpm package
# TODO: Test Publish to npm
- name: Publish if version has been updated
uses: pascalgn/npm-publish-action@1.3.9
with: # All of theses inputs are optional
tag_name: 'v%s'
tag_message: 'v%s'
# create_tag: "true"
# commit_pattern: "^Release (\\S+)"
workspace: '.'
publish_command: 'pnpm'
publish_args: '--non-interactive'
env: # More info about the environment variables in the README
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Leave this as is, it's automatically generated
NPM_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }} # You need to set this in your repo settings
- name: Commit changes
if: steps.check_changes.outputs.README_CHANGED == 'true'
uses: stefanzweifel/git-auto-commit-action@v5