Control UI Locale Refresh #3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Control UI Locale Refresh | |
| on: | |
| push: | |
| branches: | |
| - main | |
| paths: | |
| - ui/src/i18n/locales/en.ts | |
| - ui/src/i18n/lib/types.ts | |
| - scripts/control-ui-i18n.ts | |
| - package.json | |
| - .github/workflows/control-ui-locale-refresh.yml | |
| release: | |
| types: | |
| - published | |
| schedule: | |
| - cron: "23 4 * * *" | |
| workflow_dispatch: | |
| permissions: | |
| contents: write | |
| concurrency: | |
| group: control-ui-locale-refresh | |
| cancel-in-progress: false | |
| jobs: | |
| refresh: | |
| if: github.repository == 'openclaw/openclaw' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| persist-credentials: true | |
| submodules: false | |
| - name: Setup Node environment | |
| uses: ./.github/actions/setup-node-env | |
| with: | |
| install-bun: "false" | |
| use-sticky-disk: "false" | |
| - name: Ensure translation provider secrets exist | |
| env: | |
| OPENAI_API_KEY: ${{ secrets.OPENCLAW_DOCS_I18N_OPENAI_API_KEY || secrets.OPENAI_API_KEY }} | |
| ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} | |
| run: | | |
| set -euo pipefail | |
| if [ -z "${OPENAI_API_KEY:-}" ] && [ -z "${ANTHROPIC_API_KEY:-}" ]; then | |
| echo "Missing OPENCLAW_DOCS_I18N_OPENAI_API_KEY, OPENAI_API_KEY, or ANTHROPIC_API_KEY secret." | |
| exit 1 | |
| fi | |
| - name: Refresh control UI locale files | |
| env: | |
| OPENAI_API_KEY: ${{ secrets.OPENCLAW_DOCS_I18N_OPENAI_API_KEY || secrets.OPENAI_API_KEY }} | |
| ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} | |
| run: pnpm ui:i18n:sync | |
| - name: Commit and push locale updates | |
| env: | |
| TARGET_BRANCH: ${{ github.event.repository.default_branch }} | |
| run: | | |
| set -euo pipefail | |
| if git diff --quiet; then | |
| echo "No control UI locale changes." | |
| exit 0 | |
| fi | |
| git config user.name "github-actions[bot]" | |
| git config user.email "41898282+github-actions[bot]@users.noreply.github.com" | |
| git add ui/src/i18n package.json scripts/control-ui-i18n.ts | |
| git commit -m "chore(ui): refresh control UI locale files" | |
| git push origin HEAD:"${TARGET_BRANCH}" |