You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.4 KiB
55 lines
1.4 KiB
name: Translation job |
|
|
|
on: |
|
push: |
|
paths: |
|
- 'web/i18n/strings.json' |
|
- 'web/**/*.tsx' |
|
- 'web/**/*.js' |
|
- 'crowdin.yml' |
|
- '.github/workflows/translations.yml' |
|
- 'web/i18next-parser.config.mjs' |
|
|
|
concurrency: |
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} |
|
cancel-in-progress: true |
|
|
|
jobs: |
|
generate-translations: |
|
defaults: |
|
run: |
|
working-directory: ./web |
|
|
|
runs-on: ubuntu-latest |
|
|
|
steps: |
|
- uses: actions/checkout@v4 |
|
|
|
- name: Install dependencies |
|
if: ${{ github.actor != 'renovate[bot]' && github.actor != 'renovate' }} |
|
run: npm install |
|
|
|
- name: Generate translation files |
|
run: npm run translate |
|
|
|
- name: Commit changes |
|
uses: EndBug/add-and-commit@v9 |
|
with: |
|
author_name: Owncast |
|
author_email: owncast@owncast.online |
|
message: 'Commit updated translations' |
|
add: 'web/i18n/**' |
|
env: |
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
|
|
|
- name: Crowdin action |
|
uses: crowdin/github-action@v1 |
|
with: |
|
upload_sources: true |
|
download_translations: true |
|
localization_branch_name: translations |
|
config: crowdin.yml |
|
env: |
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
|
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} |
|
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
|
|
|