diff --git a/.gitea/workflows/assets/crowdin.yml b/.gitea/workflows/assets/crowdin.yml new file mode 100644 index 0000000..ea2e68c --- /dev/null +++ b/.gitea/workflows/assets/crowdin.yml @@ -0,0 +1,10 @@ +project_id_env: CROWDIN_PROJECT_ID +api_token_env: CROWDIN_PERSONAL_TOKEN +base_path: "../../../" + +files: + - source: /androidApp/src/main/res/values/strings.xml + translation: /androidApp/src/main/res/values-%android_code%/%original_file_name% + translate_attributes: '0' + content_segmentation: '0' +preserve_hierarchy: true diff --git a/.gitea/workflows/on_pr.yml b/.gitea/workflows/on_pr.yml index 183053d..3567e80 100644 --- a/.gitea/workflows/on_pr.yml +++ b/.gitea/workflows/on_pr.yml @@ -3,6 +3,7 @@ on: pull_request: branches: - master + - chore-crowdin-ci jobs: Lint: @@ -23,6 +24,56 @@ jobs: run: ktlint 'shared/**/*.kt' 'androidApp/**/*.kt' '!shared/build' - name: Detecting... run: ./detekt-cli-1.23.7/bin/detekt-cli -c detekt.yml --excludes '**/shared/build/**/*.kt' + translations: + runs-on: ubuntu-latest + steps: + - name: Check out repository code + uses: actions/checkout@v4 + - name: upload translation sources + uses: crowdin/github-action@v2 + with: + config: './.gitea/workflows/assets/crowdin.yml' + upload_sources: true + upload_translations: false + download_translations: false + create_pull_request: false + push_translations: false + env: + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} + - name: wait + run: sleep 10s + - name: download translations + uses: crowdin/github-action@v2 + with: + config: './.gitea/workflows/assets/crowdin.yml' + upload_sources: false + upload_translations: false + download_translations: true + create_pull_request: false + push_translations: false + env: + CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} + - name: Check for uncommitted changes + id: check-changes + uses: mskri/check-uncommitted-changes-action@v1.0.1 + - name: Commit Changes + if: steps.check-changes.outputs.changes != '' + run: | + git config --global user.email aminecmi+giteadrone@pm.me + git config --global user.name giteadrone + git add ./androidApp/src/main/res/* + git commit -m "translation: translation files" + - name: Push changes + if: steps.check-changes.outputs.changes != '' + uses: appleboy/git-push-action@v1.0.0 + with: + author_name: giteadrone + author_email: aminecmi+giteadrone@pm.me + remote: ${{ secrets.REMOTE_URL }} + ssh_key: ${{ secrets.PRIVATE_KEY }} + branch: ${{ github.head_ref || github.ref_name }} build: needs: Lint uses: ./.gitea/workflows/common_build.yml