Refactor: Split Crowdin Action into Upload and Download Workflows (#1815)

This commit is contained in:
James Rich 2025-05-03 13:35:28 -05:00 committed by GitHub
parent 9648d0af77
commit 0bb584445b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 33 additions and 10 deletions

View file

@ -1,8 +1,8 @@
name: Crowdin Action
name: Crowdin Download Translations Action
on:
push:
branches: [ master ]
schedule: # Every Sunday at midnight
- cron: '0 0 * * 0'
workflow_dispatch: # Allow manual triggering
jobs:
@ -13,12 +13,12 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: Synchronize with Crowdin
- name: Download translations with Crowdin
uses: crowdin/github-action@v2
with:
base_url: 'https://meshtastic.crowdin.com/api/v2'
config: 'config/crowdin/crowdin.yml'
upload_sources: true
upload_sources: false
upload_translations: false
download_translations: true
localization_branch_name: l10n_crowdin_translations
@ -30,11 +30,6 @@ jobs:
pull_request_labels: 'l10n'
crowdin_branch_name: 'master'
env:
# A classic GitHub Personal Access Token with the 'repo' scope selected (the user should have write access to the repository).
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# A numeric ID, found at https://crowdin.com/project/<projectName>/tools/api
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
# Visit https://crowdin.com/settings#api-key to create this token
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}

28
.github/workflows/crowdin-upload.yml vendored Normal file
View file

@ -0,0 +1,28 @@
name: Crowdin Upload Sources Action
on:
push: # Watch source strings.xml for changes on master
paths: [ 'app/src/main/res/values/strings.xml' ]
branches: [ master ]
workflow_dispatch: # Allow manual triggering
jobs:
synchronize-with-crowdin:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Upload sources with Crowdin
uses: crowdin/github-action@v2
with:
base_url: 'https://meshtastic.crowdin.com/api/v2'
config: 'config/crowdin/crowdin.yml'
upload_sources: true
upload_translations: false
download_translations: false
crowdin_branch_name: 'master'
env:
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}