Android-Password-Store/.github/workflows/sync_crowdin.yml

69 lines
2.4 KiB
YAML
Raw Normal View History

name: Sync localisations from Crowdin
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * 0'
jobs:
sync-crowdin:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: Accept all SDK licenses
shell: bash
run: printf 'y\ny\ny\ny\ny\ny\n' | $ANDROID_HOME/tools/bin/sdkmanager --licenses
- name: Get build-tools directory
id: build-tools-path
shell: bash
run: echo "dir=${ANDROID_HOME}/build-tools/34.0.0-rc3" >> "${GITHUB_OUTPUT}"
- name: Cache build-tools
uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3
with:
path: ${{ steps.build-tools-path.outputs.dir }}
key: ${{ runner.os }}-34.0.0-rc3
- name: Set up JDK
uses: actions/setup-java@5ffc13f4174014e2d4d4572b3d74c3fa61aeb2c2 # v3.11.0
2022-02-17 04:43:04 +00:00
with:
2022-05-25 12:29:04 +00:00
distribution: temurin
java-version: 18
- name: Download new translations from Crowdin
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629 # v2.4.2
2022-02-17 04:43:04 +00:00
with:
arguments: --no-configuration-cache crowdin
gradle-home-cache-cleanup: true
env:
CROWDIN_LOGIN: ${{ secrets.CROWDIN_LOGIN }}
CROWDIN_PROJECT_KEY: ${{ secrets.CROWDIN_PROJECT_KEY }}
- name: Check if PR is required
run: if [[ $(git status -s) != '' ]]; then echo "UPDATED=true" >> $GITHUB_ENV; fi
- name: Create Pull Request
id: cpr
uses: peter-evans/create-pull-request@284f54f989303d2699d373481a0cfa13ad5a6666 # v5.0.1
if: "env.UPDATED == 'true'"
with:
author: GitHub Actions <noreply@github.com>
base: develop
body: This is an automated pull request to sync localisations from Crowdin.
branch: bot/crowdin-sync
commit-message: "strings: sync with crowdin"
labels: A-localisation, S-automerge
title: Sync localisations from Crowdin
token: ${{ secrets.PSL_UPDATE_TOKEN }}
- name: Enable automerge for PR
if: "${{ steps.cpr.outputs.pull-request-operation == 'created' }}"
shell: bash
run: |
gh pr merge --squash --auto "${PR_URL}"
env:
GITHUB_TOKEN: ${{ secrets.PSL_UPDATE_TOKEN }}
PR_URL: ${{ steps.cpr.outputs.pull-request-url }}