Step 1: Provision a Azure AI Translator 資源
在 Azure 入口網站建立一個 Azure AI 翻譯器資源,然後將以下資料存為 GitHub 倉庫的秘密,讓工作流程能讀取:
-
TRANSLATOR_KEY— 資源的訂閱金鑰。 -
TRANSLATOR_ENDPOINT— 區域端點網址。 -
TRANSLATOR_REGION— 該資源位於 Azure 區域。
Step 2: 新增工作流程
創建.github/workflows/translate.yml:
name: translate
on: push: branches: [main] paths: - "src/**/*.en.resx" - "src/**/*.en.json"
permissions: contents: write pull-requests: write
jobs: translate: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - id: translate uses: IEvangelist/resource-translator@v3 with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} region: ${{ secrets.TRANSLATOR_REGION }} toLocales: '["fr","de","es"]' - if: steps.translate.outputs.has-new-translations == 'true' uses: peter-evans/create-pull-request@v7 with: title: ${{ steps.translate.outputs.summary-title }} body: ${{ steps.translate.outputs.summary-details }} branch: machine-translationStep 3: 提交原始資源檔案
資源檔案使用Name.<sourceLocale>.<ext>慣例。例如,Greetings.en.resx在一輪後變成Greetings.fr.resx、Greetings.de.resx,依此類推。
Step 4: 檢查輸出
工作流程結束後,動作會顯示三個輸出,你可以接入 PR 描述:summary-title、summary-details 和 has-new-translations。它還會透過 core.summary 在職缺頁面寫入 Markdown 摘要。