Skip to content

Update Translations #32

Update Translations

Update Translations #32

name: Update Translations
on:
schedule:
# Runs at 9am UTC every Monday (4am EST / 1am PST)
- cron: '0 9 * * 1'
workflow_dispatch: # Allow manual trigger
jobs:
update-translations:
permissions:
contents: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
fetch-depth: 0
- name: Install
uses: ./.github/actions/prepare
- name: Run translations update
run: |
set -e
yarn translations
- name: Check for changes
id: changes
run: |
if [ -n "$(git status --porcelain)" ]; then
echo "has_changes=true" >> $GITHUB_OUTPUT
else
echo "has_changes=false" >> $GITHUB_OUTPUT
fi
- name: Get current date
id: date
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
- name: Create Pull Request
if: steps.changes.outputs.has_changes == 'true'
uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: 'Update translations'
title: 'Update translations - Week of ${{ steps.date.outputs.date }}'
body: |
## Automated Translation Update
This PR contains automated translation updates generated by running `yarn translations`.
### Changes
- Updated translation files
- Generated on: ${{ steps.date.outputs.date }}
### Review Checklist
- [ ] Review translation changes
- [ ] Verify no unexpected file modifications
- [ ] Ensure builds pass
---
*This PR was automatically created by the weekly translation update workflow.*
branch: automated-translations-update
delete-branch: true
base: master
labels: |
translations
automated
assignees: '' # Add usernames if needed
reviewers: '' # Add reviewer usernames if needed