- Modified GitHub Actions workflows to replace environment variable references with secrets for MAIN_VITE_MINERU_API_KEY, RENDERER_VITE_AIHUBMIX_SECRET, and RENDERER_VITE_PPIO_APP_SECRET. - Added onwarn handler in electron.vite.config.ts to suppress specific warnings related to CommonJS variables in ESM.
67 lines
2.3 KiB
YAML
67 lines
2.3 KiB
YAML
name: Auto I18N
|
|
|
|
env:
|
|
API_KEY: ${{ secrets.TRANSLATE_API_KEY }}
|
|
MODEL: ${{ vars.AUTO_I18N_MODEL || 'deepseek/deepseek-v3.1'}}
|
|
BASE_URL: ${{ vars.AUTO_I18N_BASE_URL || 'https://api.ppinfra.com/openai'}}
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, reopened]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
auto-i18n:
|
|
runs-on: ubuntu-latest
|
|
if: github.event.pull_request.head.repo.full_name == 'CherryHQ/cherry-studio'
|
|
name: Auto I18N
|
|
permissions:
|
|
contents: write
|
|
pull-requests: write
|
|
|
|
steps:
|
|
- name: 🐈⬛ Checkout
|
|
uses: actions/checkout@v5
|
|
with:
|
|
ref: ${{ github.event.pull_request.head.ref }}
|
|
|
|
- name: 📦 Setting Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20
|
|
|
|
- name: 📦 Install dependencies in isolated directory
|
|
run: |
|
|
# 在临时目录安装依赖
|
|
mkdir -p /tmp/translation-deps
|
|
cd /tmp/translation-deps
|
|
echo '{"dependencies": {"openai": "^5.12.2", "cli-progress": "^3.12.0", "tsx": "^4.20.3", "@biomejs/biome": "2.2.4"}}' > package.json
|
|
npm install --no-package-lock
|
|
|
|
# 设置 NODE_PATH 让项目能找到这些依赖
|
|
echo "NODE_PATH=/tmp/translation-deps/node_modules" >> $GITHUB_ENV
|
|
|
|
- name: 🏃♀️ Translate
|
|
run: npx tsx scripts/auto-translate-i18n.ts
|
|
|
|
- name: 🔍 Format
|
|
run: cd /tmp/translation-deps && npx biome format --config-path /home/runner/work/cherry-studio/cherry-studio/biome.jsonc --write /home/runner/work/cherry-studio/cherry-studio/src/renderer/src/i18n/
|
|
|
|
- name: 🔄 Commit changes
|
|
run: |
|
|
git config --local user.email "action@github.com"
|
|
git config --local user.name "GitHub Action"
|
|
git add .
|
|
git reset -- package.json yarn.lock # 不提交 package.json 和 yarn.lock 的更改
|
|
if git diff --cached --quiet; then
|
|
echo "No changes to commit"
|
|
else
|
|
git commit -m "fix(i18n): Auto update translations for PR #${{ github.event.pull_request.number }}"
|
|
fi
|
|
|
|
- name: 🚀 Push changes
|
|
uses: ad-m/github-push-action@master
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
branch: ${{ github.event.pull_request.head.ref }}
|