From 3cee3bd92ddbc4e44f1f720b815804e4a611c263 Mon Sep 17 00:00:00 2001 From: UnschooledGamer <76094069+UnschooledGamer@users.noreply.github.com> Date: Wed, 12 Nov 2025 21:00:02 +0530 Subject: [PATCH 1/7] feat: Add translation check workflow for pull requests * Introduced a new GitHub Actions workflow to check for changes in translation files & a new workflow for labeling based upon the changed files on pull requests. * The workflow detects changes in JSON files located in the src/lang directory and runs a lint check if any changes are found. * Added a Workflow to label Pull requests based on their changed files. --- .github/labeler.yml | 13 ++++++++++++ .github/workflows/add-pr-labels.yml | 17 ++++++++++++++++ .github/workflows/ci.yml | 31 +++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+) create mode 100644 .github/labeler.yml create mode 100644 .github/workflows/add-pr-labels.yml diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 000000000..848bd7a5c --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,13 @@ +translations: + - any: + - changed-files: + - any-glob-to-any-file: 'src/lang/*.json' + +docs: + - any: + - changed-files: + - any-glob-to-any-file: '**/*.md' + +enhancement: + - any: + - head-branch: ['^feature', 'feature', '^feat', '^add'] \ No newline at end of file diff --git a/.github/workflows/add-pr-labels.yml b/.github/workflows/add-pr-labels.yml new file mode 100644 index 000000000..f9b979fbb --- /dev/null +++ b/.github/workflows/add-pr-labels.yml @@ -0,0 +1,17 @@ +name: Add Pull Requests Labels +on: + pull_request_target: + types: [opened] + +jobs: + add-labels: + timeout-minutes: 5 + runs-on: ubuntu-latest + + if: github.event.action == 'opened' + permissions: + contents: read + pull-requests: write + + steps: + - uses: actions/labeler@v6 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 788d228c4..0ae6e0907 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,3 +33,34 @@ jobs: - name: Run Biome run: biome ci . + + translation-check: + name: Translation Check (On PR Only) + timeout-minutes: 5 + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: read + if: github.event_name == 'pull_request' + steps: + - name: Checkout Repository + uses: actions/checkout@v5 + - name: Use Node.js + uses: actions/setup-node@v5 + with: + cache: npm + cache-dependency-path: '**/package-lock.json' + + - name: Detect Changed Files + uses: dorny/paths-filter@v3 + id: file-changes + with: + list-files: shell + filters: | + translation: + - 'src/lang/*.json' + token: ${{ secrets.GITHUB_TOKEN }} + - name: Translation Files Check (if changed) + if: steps.file-changes.outputs.translation == 'true' + run: | + npm run lint check \ No newline at end of file From 9e59e45ac24069a9c75c891dab520d492eabb453 Mon Sep 17 00:00:00 2001 From: UnschooledGamer <76094069+UnschooledGamer@users.noreply.github.com> Date: Thu, 27 Nov 2025 12:22:05 +0530 Subject: [PATCH 2/7] Enhance nightly build workflow to support F-Droid APK generation and artifact uploads. Added steps to build and upload both standard and F-Droid APKs with appropriate naming conventions. --- .github/workflows/nightly-build.yml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 70af04d54..2a3fd54f2 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -170,13 +170,28 @@ run: | node utils/storage_manager.mjs y npm run build paid dev apk + mv platforms/android/app/build/outputs/apk/debug/app-debug.apk platforms/android/app/build/outputs/apk/debug/app-debug-normal.apk echo "VERSION: $UPDATED_VERSION" >> $GITHUB_STEP_SUMMARY - + - name: Upload APK Artifact uses: actions/upload-artifact@v4 with: name: app-debug-${{ env.GIT_COMMIT }} path: platforms/android/app/build/outputs/apk/debug/app-debug.apk + + - name: Run npm build paid dev apk fdroid (for F-Droid) + if: ${{ !inputs.is_PR }} + run: | + node utils/storage_manager.mjs y + npm run build paid dev apk fdroid + mv platforms/android/app/build/outputs/apk/debug/app-debug.apk platforms/android/app/build/outputs/apk/debug/app-debug-fdroid.apk + + - name: Upload APK Artifact + uses: actions/upload-artifact@v4 + if: ${{ !inputs.is_PR }} + with: + name: app-debug-fdroid-${{ env.GIT_COMMIT }} + path: platforms/android/app/build/outputs/apk/debug/app-debug-fdroid.apk - name: remove keystore and build.json run: | @@ -218,7 +233,8 @@ name: ${{ env.UPDATED_VERSION }} tag_name: ${{ env.UPDATED_VERSION }} files: | - platforms/android/app/build/outputs/apk/debug/app-debug.apk + platforms/android/app/build/outputs/apk/debug/app-debug-normal.apk + platforms/android/app/build/outputs/apk/debug/app-debug-fdroid.apk body: | Automated Nightly (pre-release) Releases for Today From 46201a0d858f46d946dd384e703e3c80b14362ca Mon Sep 17 00:00:00 2001 From: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com> Date: Thu, 27 Nov 2025 12:27:06 +0530 Subject: [PATCH 3/7] Update nightly-build.yml --- .github/workflows/nightly-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 2a3fd54f2..0ca91992e 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -54,7 +54,7 @@ build: timeout-minutes: 60 runs-on: ubuntu-latest - if: github.repository_owner == 'Acode-Foundation' + #if: github.repository_owner == 'Acode-Foundation' permissions: # contents write is needed to create Nightly Releases. From 3f8b4ea33beb94ec965ec86de9b0ca51ccf019a7 Mon Sep 17 00:00:00 2001 From: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com> Date: Thu, 27 Nov 2025 12:31:38 +0530 Subject: [PATCH 4/7] Uncomment conditional for repository owner check --- .github/workflows/nightly-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 0ca91992e..2a3fd54f2 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -54,7 +54,7 @@ build: timeout-minutes: 60 runs-on: ubuntu-latest - #if: github.repository_owner == 'Acode-Foundation' + if: github.repository_owner == 'Acode-Foundation' permissions: # contents write is needed to create Nightly Releases. From bd50081412b1f38c052a98001d5c05cf1467a6e7 Mon Sep 17 00:00:00 2001 From: UnschooledGamer <76094069+UnschooledGamer@users.noreply.github.com> Date: Thu, 27 Nov 2025 12:33:51 +0530 Subject: [PATCH 5/7] Update nightly build workflow to upload F-Droid APK with corrected naming convention. --- .github/workflows/nightly-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 2a3fd54f2..78715ebe2 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -177,7 +177,7 @@ uses: actions/upload-artifact@v4 with: name: app-debug-${{ env.GIT_COMMIT }} - path: platforms/android/app/build/outputs/apk/debug/app-debug.apk + path: platforms/android/app/build/outputs/apk/debug/app-debug-normal.apk - name: Run npm build paid dev apk fdroid (for F-Droid) if: ${{ !inputs.is_PR }} From 30382daa66d4fe74b62cce37ebc66efb7eed0f1b Mon Sep 17 00:00:00 2001 From: UnschooledGamer <76094069+UnschooledGamer@users.noreply.github.com> Date: Thu, 27 Nov 2025 12:49:45 +0530 Subject: [PATCH 6/7] Refactor nightly build workflow to use temporary paths for APK artifacts. Updated paths for both standard and F-Droid APK uploads to /tmp directory for improved clarity and organization. --- .github/workflows/nightly-build.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 78715ebe2..2581f4cd3 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -170,28 +170,28 @@ run: | node utils/storage_manager.mjs y npm run build paid dev apk - mv platforms/android/app/build/outputs/apk/debug/app-debug.apk platforms/android/app/build/outputs/apk/debug/app-debug-normal.apk + mv platforms/android/app/build/outputs/apk/debug/app-debug.apk /tmp/app-debug-normal.apk echo "VERSION: $UPDATED_VERSION" >> $GITHUB_STEP_SUMMARY - name: Upload APK Artifact uses: actions/upload-artifact@v4 with: name: app-debug-${{ env.GIT_COMMIT }} - path: platforms/android/app/build/outputs/apk/debug/app-debug-normal.apk + path: /tmp/app-debug-normal.apk - name: Run npm build paid dev apk fdroid (for F-Droid) if: ${{ !inputs.is_PR }} run: | node utils/storage_manager.mjs y npm run build paid dev apk fdroid - mv platforms/android/app/build/outputs/apk/debug/app-debug.apk platforms/android/app/build/outputs/apk/debug/app-debug-fdroid.apk + mv platforms/android/app/build/outputs/apk/debug/app-debug.apk /tmp/app-debug-fdroid.apk - name: Upload APK Artifact uses: actions/upload-artifact@v4 if: ${{ !inputs.is_PR }} with: name: app-debug-fdroid-${{ env.GIT_COMMIT }} - path: platforms/android/app/build/outputs/apk/debug/app-debug-fdroid.apk + path: /tmp/app-debug-fdroid.apk - name: remove keystore and build.json run: | @@ -233,8 +233,8 @@ name: ${{ env.UPDATED_VERSION }} tag_name: ${{ env.UPDATED_VERSION }} files: | - platforms/android/app/build/outputs/apk/debug/app-debug-normal.apk - platforms/android/app/build/outputs/apk/debug/app-debug-fdroid.apk + /tmp/app-debug-normal.apk + /tmp/app-debug-fdroid.apk body: | Automated Nightly (pre-release) Releases for Today From c3f0ff202e70f027d845c217f309e6603a3c4f9a Mon Sep 17 00:00:00 2001 From: UnschooledGamer <76094069+UnschooledGamer@users.noreply.github.com> Date: Thu, 27 Nov 2025 12:59:14 +0530 Subject: [PATCH 7/7] Update nightly build workflow to prevent tagging and releases for pull requests. Added condition to skip release step if the workflow is triggered by a pull request. --- .github/workflows/nightly-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly-build.yml b/.github/workflows/nightly-build.yml index 2581f4cd3..74f61c144 100644 --- a/.github/workflows/nightly-build.yml +++ b/.github/workflows/nightly-build.yml @@ -226,7 +226,7 @@ - name: Release Nightly Version # Only run this step, if not called from another workflow. And a previous step is successful with releasedRequired=true id: release - if: ${{ ! inputs.skip_tagging_and_releases && success() && env.releaseRequired == 'true' }} + if: ${{ ! inputs.skip_tagging_and_releases && success() && env.releaseRequired == 'true' && !inputs.is_PR }} uses: softprops/action-gh-release@v2 with: prerelease: true