mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-01 05:49:54 +00:00
Improves CI performance by caching Playwright browsers between runs. This reduces the time spent downloading browsers on each workflow execution. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: Claude <noreply@anthropic.com>
67 lines
2.5 KiB
YAML
67 lines
2.5 KiB
YAML
name: Update Locales
|
|
|
|
on:
|
|
# Manual dispatch for urgent translation updates
|
|
workflow_dispatch:
|
|
# Only trigger on PRs to main/master - additional branch filtering in job condition
|
|
pull_request:
|
|
branches: [ main ]
|
|
types: [opened, synchronize, reopened]
|
|
|
|
jobs:
|
|
update-locales:
|
|
# Branch detection: Only run for manual dispatch or version-bump-* branches from main repo
|
|
if: github.event_name == 'workflow_dispatch' || (github.event.pull_request.head.repo.full_name == github.repository && startsWith(github.head_ref, 'version-bump-'))
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: Comfy-Org/ComfyUI_frontend_setup_action@v3
|
|
|
|
- name: Cache tool outputs
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: |
|
|
ComfyUI_frontend/.cache
|
|
ComfyUI_frontend/.cache
|
|
key: i18n-tools-cache-${{ runner.os }}-${{ hashFiles('ComfyUI_frontend/pnpm-lock.yaml') }}
|
|
restore-keys: |
|
|
i18n-tools-cache-${{ runner.os }}-
|
|
- name: Cache Playwright browsers
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ~/.cache/ms-playwright
|
|
key: playwright-browsers-${{ runner.os }}-${{ hashFiles('ComfyUI_frontend/pnpm-lock.yaml') }}
|
|
restore-keys: |
|
|
playwright-browsers-${{ runner.os }}-
|
|
- name: Install Playwright Browsers
|
|
run: npx playwright install chromium --with-deps
|
|
working-directory: ComfyUI_frontend
|
|
- name: Start dev server
|
|
# Run electron dev server as it is a superset of the web dev server
|
|
# We do want electron specific UIs to be translated.
|
|
run: pnpm dev:electron &
|
|
working-directory: ComfyUI_frontend
|
|
- name: Update en.json
|
|
run: pnpm collect-i18n
|
|
env:
|
|
PLAYWRIGHT_TEST_URL: http://localhost:5173
|
|
working-directory: ComfyUI_frontend
|
|
- name: Update translations
|
|
run: pnpm locale
|
|
env:
|
|
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
|
|
working-directory: ComfyUI_frontend
|
|
- name: Commit updated locales
|
|
run: |
|
|
git config --global user.name 'github-actions'
|
|
git config --global user.email 'github-actions@github.com'
|
|
git fetch origin ${{ github.head_ref }}
|
|
# Stash any local changes before checkout
|
|
git stash -u
|
|
git checkout -B ${{ github.head_ref }} origin/${{ github.head_ref }}
|
|
# Apply the stashed changes if any
|
|
git stash pop || true
|
|
git add src/locales/
|
|
git diff --staged --quiet || git commit -m "Update locales [skip ci]"
|
|
git push origin HEAD:${{ github.head_ref }}
|
|
working-directory: ComfyUI_frontend
|