diff --git a/.github/workflows/crowdin.yml b/.github/workflows/crowdin.yml new file mode 100644 index 0000000..25540bf --- /dev/null +++ b/.github/workflows/crowdin.yml @@ -0,0 +1,32 @@ +name: Crowdin Sync +on: + push: + branches: [ main ] + paths: + - 'module/webui/locales/strings/*.xml' + workflow_dispatch: + +jobs: + sync-translations: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: crowdin/github-action@v1 + with: + upload_sources: true + upload_translations: true + download_translations: true + skip_untranslated_files: true + + create_pull_request: true + localization_branch_name: crowdin_branch + pull_request_labels: 'enhancement, documentation' + pull_request_title: '[Translation] Update translation from Crowdin' + + config: 'crowdin.yml' + crowdin_branch_name: main + + env: + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} + CROWDIN_API_TOKEN: ${{ secrets.CROWDIN_API_TOKEN }} diff --git a/crowdin.yml b/crowdin.yml new file mode 100644 index 0000000..6ec39ea --- /dev/null +++ b/crowdin.yml @@ -0,0 +1,24 @@ +project_id_env: CROWDIN_PROJECT_ID +api_token_env: CROWDIN_API_TOKEN +preserve_hierarchy: true + +files: + - source: /module/webui/locales/strings/en.xml + translation: /module/webui/locales/strings/%locale%.xml + languages_mapping: + locale: + ar: ar + az: az + es-ES: es + fr: fr + id: id + it: it + ja: ja + pl: pl + pt-BR: pt + ru: ru + tl: tl + tr: tr + uk: uk + zh-CN: zh-CN + zh-TW: zh-TW