mirror of
https://github.com/toeverything/AFFiNE.git
synced 2024-12-23 03:21:39 +03:00
feat(i18n): add auto update ci
This commit is contained in:
parent
e7ca1a7a25
commit
02be488271
84
.github/workflows/languages-download.yml
vendored
Normal file
84
.github/workflows/languages-download.yml
vendored
Normal file
@ -0,0 +1,84 @@
|
||||
name: Download Languages Resources
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 0 * * 5" # At 00:00(UTC) on Friday.
|
||||
workflow_dispatch:
|
||||
|
||||
# Cancels all previous workflow runs for pull requests that have not completed.
|
||||
# See https://docs.github.com/en/actions/using-jobs/using-concurrency
|
||||
concurrency:
|
||||
# The concurrency group contains the workflow name and the branch name for
|
||||
# pull requests or the commit hash for any other events.
|
||||
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
main:
|
||||
strategy:
|
||||
matrix:
|
||||
node-version: [18]
|
||||
os: [ubuntu-latest]
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Use pnpm
|
||||
uses: pnpm/action-setup@v2
|
||||
with:
|
||||
version: 7
|
||||
|
||||
- name: Use Node.js ${{ matrix.node-version }}
|
||||
# https://github.com/actions/setup-node
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'pnpm'
|
||||
|
||||
- name: Install node modules
|
||||
run: pnpm install
|
||||
|
||||
- name: Sync Languages
|
||||
if: github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/master'
|
||||
working-directory: ./libs/datasource/i18n
|
||||
run: pnpm run download-resources
|
||||
env:
|
||||
TOLGEE_API_KEY: ${{ secrets.TOLGEE_API_KEY }}
|
||||
|
||||
- name: Push Branch
|
||||
id: push
|
||||
run: |
|
||||
git add libs/datasource/i18n
|
||||
# Do not proceed if there are no file differences
|
||||
COMMIT=$(git rev-parse --verify origin/$TARGET_BRANCH || echo HEAD)
|
||||
FILES_CHANGED=$(git diff-index --name-only --cached $COMMIT | wc -l)
|
||||
if [[ "$FILES_CHANGED" = "0" ]]; then
|
||||
echo "No file changes detected."
|
||||
echo "::set-output name=skipPR::true"
|
||||
exit 0
|
||||
fi
|
||||
git config user.name 'github-actions[bot]'
|
||||
git config user.email 'github-actions[bot]@users.noreply.github.com'
|
||||
git commit --message 'feat(i18n): new translations'
|
||||
git remote set-url origin "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY"
|
||||
git push --force origin HEAD:$TARGET_BRANCH
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.github_token }}
|
||||
TARGET_BRANCH: bot/new-translations
|
||||
|
||||
- name: Get current date
|
||||
id: date
|
||||
run: echo "::set-output name=date::$(date +'%Y-%m-%d')"
|
||||
|
||||
# see https://github.com/repo-sync/pull-request
|
||||
- name: Create Pull Request
|
||||
if: steps.push.outputs.skipPR != 'true'
|
||||
uses: repo-sync/pull-request@v2
|
||||
with:
|
||||
source_branch: 'bot/new-translations' # If blank, default: triggered branch
|
||||
destination_branch: "develop"
|
||||
pr_title: Update i18n (${{ steps.date.outputs.date }}) # Title of pull request
|
||||
pr_label: 'data,bot' # Comma-separated list (no spaces)
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
Loading…
Reference in New Issue
Block a user