mirror of
https://github.com/grafana/grafana.git
synced 2024-12-01 13:09:22 -06:00
97c79f2c34
* I18n: Set description of Crowdin PR using GH Actions * pin action sha * Apply suggestions from code review Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com> --------- Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
68 lines
2.6 KiB
YAML
68 lines
2.6 KiB
YAML
# When Crowdin creates a pull request from the crowdin-service-branch branch,
|
|
# run `yarn i18n:extract` and commit the changed grafana.json files back into the PR
|
|
# to reformat crowdin's changes to prevent conflicts with our CI checks.
|
|
|
|
name: Fix Crowdin I18n files
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- 'public/locales/*/grafana.json'
|
|
branches:
|
|
- main # Only run on pull requests *target* main (will be merged into main)
|
|
|
|
jobs:
|
|
fix-files:
|
|
# Only run on pull requests *from* the crowdin-service-branch branch
|
|
if: github.head_ref == 'crowdin-service-branch'
|
|
|
|
name: Fix files
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
permissions:
|
|
contents: write # needed to commit changes back into the PR
|
|
pull-requests: write # needed to update PR description
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
ref: ${{ github.head_ref }}
|
|
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 20.9.0
|
|
cache: 'yarn'
|
|
|
|
- name: Install dependencies
|
|
run: yarn install
|
|
|
|
- name: Extract I18n files
|
|
run: yarn i18n:extract
|
|
|
|
- name: Commit changes
|
|
uses: stefanzweifel/git-auto-commit-action@8756aa072ef5b4a080af5dc8fef36c5d586e521d # v5.0.0
|
|
with:
|
|
commit_message: "Github Action: Auto-fix i18n files"
|
|
file_pattern: public/locales/*/grafana.json
|
|
|
|
- name: Update PR description
|
|
uses: devindford/Append_PR_Comment@32dd2619cd96ac8da9907c416c992fe265233ca8 # v1.1.3
|
|
if: ${{ ! contains(github.event.pull_request.body, 'Steps for merging') }}
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
body-update-action: prefix
|
|
body-template: |
|
|
:robot: Automatic sync of translations from Crowdin.
|
|
|
|
Steps for merging:
|
|
1. Wait for the "Github Action: Auto-fix i18n files" commit that may be required for CI to pass.
|
|
2. A quick sanity check of the changes and approve. Things to look out for:
|
|
- No changes to the English strings. The source of truth is already in the main branch, NOT Crowdin.
|
|
- Translations maybe be removed if the English phrase was removed, but there should not be many of these
|
|
- Anything else that looks 'funky'. Ask if you're not sure.
|
|
3. Approve & (Auto-)merge. :tada:
|
|
|
|
If there's a conflict, close the pull request and **delete the branch**. Crowdin will recreate the pull request eventually.
|
|
Remember, the longer this pull request is open, the more likely it is that it'll get conflicts.
|