theme-store/.github/workflows/update-theme-date.yml
TheRealMG a73edd785e
Fix Theme Metadata Duplication and Add Missing Properties for Recent Pull Requests (#575)
* fix ability to add tags multiple times when rebuilding themes

* fix `createdAt` not being added for pull requests made prior

* adds tags property if it doesn't exist (old PRs)

* updated affected `theme.json` files

* updated more affected `theme.json` files

* fix action failing if new commits before finished

* make action only initiate when themes are changed
2024-10-13 09:59:29 +02:00

59 lines
1.6 KiB
YAML

name: Update Theme Timestamps
on:
push:
branches:
- main
paths:
- 'themes/**'
jobs:
update-timestamp:
runs-on: ubuntu-latest
permissions: write-all
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
fetch-depth: 2
- name: Get changes
run: git diff --name-only HEAD^1 HEAD
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.x'
- name: Detect changed themes
id: get_changes
run: |
changed_themes=$(git diff --name-only HEAD^1 HEAD | grep '^themes/' | awk -F/ '{print $2}' | sort -u)
echo "CHANGED_THEMES=$changed_themes" >> $GITHUB_ENV
- name: Setup python modules
run: |
pip3 install requests
- name: Setup Git
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
- name: Update theme date
if: env.CHANGED_THEMES != ''
run: |
for theme in $CHANGED_THEMES; do
python3 scripts/update_theme_date.py "themes/$theme"
done
- name: Commit changes
if: env.CHANGED_THEMES != ''
run: |
for theme in $CHANGED_THEMES; do
git add "themes/$theme/theme.json"
done
git commit -m "Update \`updated at\` field for \`$CHANGED_THEMES\`"
git pull origin main --strategy-option=theirs
git push origin main