diff --git a/.github/workflows/crowdin-download.yml b/.github/workflows/crowdin-download.yml new file mode 100644 index 0000000..a6edb80 --- /dev/null +++ b/.github/workflows/crowdin-download.yml @@ -0,0 +1,102 @@ +name: Crowdin Download +on: + workflow_dispatch: + # schedule: + # # runs every day at 12:00 noon UTC + # - cron: '0 12 * * *' + +jobs: + i18n-download: + name: Download + runs-on: ubuntu-20.04 + + steps: + - name: Checkout Source Files + uses: actions/checkout@v2 + with: + token: ${{ secrets.CROWDIN_CAMPERBOT_PAT }} + + - name: Generate Crowdin Config + uses: freecodecamp/crowdin-action@main + env: + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + CROWDIN_API_URL: "https://freecodecamp.crowdin.com/api/v2/" + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + PLUGIN: "generate-config" + PROJECT_NAME: "rpg" + + ##### Download Chinese ##### + - name: Crowdin Download Chinese Translations + uses: crowdin/github-action@master + # options: https://github.com/crowdin/github-action/blob/master/action.yml + with: + # uploads + upload_sources: false + upload_translations: false + auto_approve_imported: false + import_eq_suggestions: false + + # downloads + download_translations: true + download_language: zh-CN + skip_untranslated_files: false + export_only_approved: true + + push_translations: false + + # pull-request + create_pull_request: false + + # global options + config: "./crowdin-config.yml" + base_url: ${{ secrets.CROWDIN_BASE_URL_FCC }} + + # Uncomment below to debug + # dryrun_action: true + + env: + GITHUB_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_PAT }} + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + + # Convert Simplified Chinese to Traditional # + - name: Convert Chinese + uses: freecodecamp/crowdin-action@main + env: + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + CROWDIN_API_URL: "https://freecodecamp.crowdin.com/api/v2/" + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + PLUGIN: "convert-chinese" + FILE_PATHS: '["/game/tl/chinese/"]' + + # Create Commit + - name: Commit Changes + uses: freecodecamp/crowdin-action@main + env: + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + CROWDIN_API_URL: "https://freecodecamp.crowdin.com/api/v2/" + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + PLUGIN: "commit-changes" + GH_USERNAME: "camperbot" + GH_EMAIL: ${{ secrets.ACTIONS_CAMPERBOT_EMAIL }} + GH_BRANCH: "i18n-sync" + GH_MESSAGE: "chore(i18n): processed translations" + + # Generate PR # + # All languages should go ABOVE this. # + + - name: Create PR + uses: freecodecamp/crowdin-action@main + env: + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + CROWDIN_API_URL: "https://freecodecamp.crowdin.com/api/v2/" + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + PLUGIN: "pull-request" + GH_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_PAT }} + BRANCH: "i18n-sync" + REPOSITORY: "freecodecamp/learntocoderpg" + BASE: "main" + TITLE: "chore(i18n): processed translations" + BODY: "This PR was opened auto-magically by Crowdin." + LABELS: "crowdin-sync" + TEAM_REVIEWERS: "i18n" diff --git a/.github/workflows/crowdin-upload.yml b/.github/workflows/crowdin-upload.yml new file mode 100644 index 0000000..92e30e1 --- /dev/null +++ b/.github/workflows/crowdin-upload.yml @@ -0,0 +1,58 @@ +name: Crowdin Upload +on: + workflow_dispatch: + schedule: + # runs every day at 11:00 AM UTC + - cron: "0 11 * * *" +jobs: + i18n-upload: + name: Upload + runs-on: ubuntu-20.04 + + steps: + - name: Checkout Source Files + uses: actions/checkout@v2 + + - name: Generate Crowdin Config + uses: freecodecamp/crowdin-action@main + env: + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + CROWDIN_API_URL: "https://freecodecamp.crowdin.com/api/v2/" + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + PLUGIN: "generate-config" + PROJECT_NAME: "rpg" + + - name: Crowdin Upload + uses: crowdin/github-action@master + # options: https://github.com/crowdin/github-action/blob/master/action.yml + with: + # uploads + upload_sources: true + upload_translations: false + auto_approve_imported: false + import_eq_suggestions: false + + # downloads + download_translations: false + + # pull-request + create_pull_request: false + + # global options + config: "./crowdin-config.yml" + base_url: ${{ secrets.CROWDIN_BASE_URL_FCC }} + + # Uncomment below to debug + # dryrun_action: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + + - name: Hide Non-Translated Strings + uses: freecodecamp/crowdin-action@main + env: + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_CAMPERBOT_SERVICE_TOKEN }} + CROWDIN_API_URL: "https://freecodecamp.crowdin.com/api/v2/" + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID_RPG }} + PLUGIN: "hide-renpy-strings"