2020-07-07 18:30:58 +03:00
name : Build locales coverage
2020-06-30 19:28:19 +01:00
on :
push :
branches :
2020-07-01 12:05:21 +03:00
- "l10n_master"
2020-06-30 19:28:19 +01:00
jobs :
locales :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
with :
token : ${{ secrets.PUSH_TRANSLATIONS_COVERAGE_PAT }}
- name : Setup Node.js 12.x
uses : actions/setup-node@v1
with :
node-version : 12. x
- name : Create report file
run : |
npm run locales-coverage
FILE_CHANGED=$(git diff src/locales/percentages.json)
if [ ! -z "${FILE_CHANGED}" ]; then
git config --global user.name 'Kostas Bariotis'
git config --global user.email 'konmpar@gmail.com'
git add src/locales/percentages.json
git commit -am "Auto commit: Calculate translation coverage"
git push
fi
2020-12-19 15:52:50 +02:00
- name : Find pull request number
uses : jwalton/gh-find-current-pr@v1
id : findPullRequestNumber
with :
github-token : ${{ secrets.PUSH_TRANSLATIONS_COVERAGE_PAT }}
- name : Find Comment
uses : peter-evans/find-comment@v1
id : findComment
with :
token : ${{ secrets.PUSH_TRANSLATIONS_COVERAGE_PAT }}
issue-number : ${{ steps.findPullRequestNumber.outputs.pr }}
comment-author : "kbariotis"
body-includes : "Languages check"
- name : Construct comment body
id : getCommentBody
run : |
locales_above_threshold=$(cat src/locales/percentages.json | jq -r 'to_entries[] | select(.value > 85) | "|\(.key)|\(.value)|"')
locales_below_threshold=$(cat src/locales/percentages.json | jq -r 'to_entries[] | select(.value <= 85) | "|\(.key)|\(.value)|"')
header=$(echo "
## Languages check
Our translations for every languages should be at least **85%** to appear on Excalidraw. Help us translate them in [Crowdin](https://crowdin.com/project/excalidraw).
")
comment_body=$(echo "$header
### Languages over the threshold
|Locale|%|
|----|----|
$locales_above_threshold
### Languages below the threshold
|Locale|%|
|----|----|
$locales_below_threshold
")
comment_body="${comment_body//'%'/'%25'}"
comment_body="${comment_body//$'\n'/'%0A'}"
comment_body="${comment_body//$'\r'/'%0D'}"
echo ::set-output name=body::$comment_body
- name : Create comment
if : ${{ steps.findComment.outputs.comment-id == 0 }}
uses : peter-evans/create-or-update-comment@v1
with :
token : ${{ secrets.PUSH_TRANSLATIONS_COVERAGE_PAT }}
issue-number : ${{ steps.findPullRequestNumber.outputs.pr }}
body : ${{ steps.getCommentBody.outputs.body }}
- name : Update comment
if : ${{ steps.findComment.outputs.comment-id != 0 }}
uses : peter-evans/create-or-update-comment@v1
with :
edit-mode : "replace"
token : ${{ secrets.PUSH_TRANSLATIONS_COVERAGE_PAT }}
comment-id : ${{ steps.findComment.outputs.comment-id }}
body : ${{ steps.getCommentBody.outputs.body }}