Skip to content

Update monkeytype theme json list #590

Update monkeytype theme json list

Update monkeytype theme json list #590

Workflow file for this run

name: Update monkeytype theme json list
on:
schedule:
- cron: "0 */24 * * *"
workflow_dispatch:
jobs:
make-request:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20.x"
- name: Download theme json file from monkeytype
run: wget --timeout=180 --tries=3 --waitretry=10 --output-document=monkeytype-data/themes.json https://monkeytype-readme.zeabur.app/mr-command/theme
timeout-minutes: 10
- name: Format JSON data
run: |
python3 -c 'import json; data = json.load(open("monkeytype-data/themes.json")); json.dump(data, open("monkeytype-data/themes.json", "w"), indent=2)'
- name: Format code with Prettier
run: npx prettier --write ./monkeytype-data/themes.json
- name: Print json file contents
run: cat monkeytype-data/themes.json
- name: Update theme list
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
let monkeytypeThemesJson = fs.readFileSync('monkeytype-data/themes.json');
const filePath = '${{ github.workspace }}/monkeytype-data/themes.json';
fs.writeFileSync(filePath, monkeytypeThemesJson);
- name: Print updated theme contents
run: |
cat monkeytype-data/themes.json
- name: Configure git
run: |
git config --global user.name "${{ vars.GITUSERNAME }}"
git config --global user.email "${{ vars.GITUSEREMAIL }}"
- name: Commit and push changes
run: |
if git diff-index --quiet HEAD --; then
echo "No changes detected."
else
git add .
git commit -m "chore: update themes json list"
fi
continue-on-error: true
- name: Push changes
uses: ad-m/github-push-action@master
with:
branch: master
github_token: ${{ secrets.GITHUB_TOKEN }}