name: Sync I18n with Crowdin on: push: branches: - canary paths: - 'packages/frontend/i18n/**' workflow_dispatch: jobs: synchronize-with-crowdin: runs-on: ubuntu-latest permissions: contents: write pull-requests: write steps: - name: Checkout uses: actions/checkout@v4 - name: Crowdin action uses: crowdin/github-action@v2 with: upload_sources: true upload_translations: true download_translations: true auto_approve_imported: true import_eq_suggestions: true export_only_approved: true skip_untranslated_strings: true localization_branch_name: l10n_crowdin_translations create_pull_request: true pull_request_title: 'chore(i18n): sync translations' pull_request_body: 'New Crowdin translations by [Crowdin GH Action](https://github.com/crowdin/github-action)' pull_request_base_branch_name: 'canary' config: packages/frontend/i18n/crowdin.yml env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}