From 21d2d74b2cb2d1191fa577f2b8021dde0fe9d55a Mon Sep 17 00:00:00 2001 From: Amine Date: Sun, 9 Mar 2025 15:03:55 +0100 Subject: [PATCH] chore: crowding ci integration. --- .gitea/workflows/assets/crowdin.yml | 10 +++ .gitea/workflows/on_pr.yml | 81 +++++++++++++++++----- androidApp/src/main/res/values/strings.xml | 1 + 3 files changed, 76 insertions(+), 16 deletions(-) create mode 100644 .gitea/workflows/assets/crowdin.yml 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..5516183 100644 --- a/.gitea/workflows/on_pr.yml +++ b/.gitea/workflows/on_pr.yml @@ -3,26 +3,75 @@ on: pull_request: branches: - master + - chore-crowdin-ci jobs: - Lint: + # Lint: + # runs-on: ubuntu-latest + # steps: + # - name: Check out repository code + # uses: actions/checkout@v4 + # - uses: actions/setup-java@v4 + # with: + # distribution: 'temurin' + # java-version: '17' + # cache: gradle + # - name: Install klint + # run: curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.5.0/ktlint && chmod a+x ktlint && mv ktlint /usr/local/bin/ + # - name: Install detekt + # run: curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.7/detekt-cli-1.23.7.zip && unzip detekt-cli-1.23.7.zip + # - name: Linting... + # 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 - - uses: actions/setup-java@v4 + - name: upload translation sources + uses: crowdin/github-action@v2 with: - distribution: 'temurin' - java-version: '17' - cache: gradle - - name: Install klint - run: curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.5.0/ktlint && chmod a+x ktlint && mv ktlint /usr/local/bin/ - - name: Install detekt - run: curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.7/detekt-cli-1.23.7.zip && unzip detekt-cli-1.23.7.zip - - name: Linting... - 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' - build: - needs: Lint - uses: ./.gitea/workflows/common_build.yml + 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.outcome == failure() + run: | + git add ./androidApp/src/main/res/* + git commit -m "translation: translation files" + - name: Push changes + if: steps.check-changes.outputs.outcome == failure() + 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 diff --git a/androidApp/src/main/res/values/strings.xml b/androidApp/src/main/res/values/strings.xml index d04a31a..75e3bef 100644 --- a/androidApp/src/main/res/values/strings.xml +++ b/androidApp/src/main/res/values/strings.xml @@ -133,4 +133,5 @@ "Item unread" Confirm Deletion Are you sure you want to delete the following source?\n%s + Tototta