aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/sync-translated-content.yml63
1 files changed, 63 insertions, 0 deletions
diff --git a/.github/workflows/sync-translated-content.yml b/.github/workflows/sync-translated-content.yml
new file mode 100644
index 0000000000..4516c68c7c
--- /dev/null
+++ b/.github/workflows/sync-translated-content.yml
@@ -0,0 +1,63 @@
+name: Sync Translated Content
+
+on:
+ workflow_dispatch:
+ inputs:
+ notes:
+ description: "Notes"
+ required: false
+ default: ""
+ schedule:
+ # * is a special character in YAML so you have to quote this string
+ - cron: "0 */24 * * *"
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - uses: actions/checkout@v2
+ with:
+ repository: mdn/content
+ path: mdn/content
+
+ - name: Setup Node.js environment
+ uses: actions/setup-node@v2.1.4
+ with:
+ node-version: "12"
+
+ - name: Cache node_modules
+ uses: actions/cache@v2.1.4
+ id: cached-node_modules
+ with:
+ path: |
+ **/node_modules
+ key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
+
+ - name: Install all yarn packages
+ if: steps.cached-node_modules.outputs.cache-hit != 'true'
+ working-directory: ${{ github.workspace }}/mdn/content
+ run: |
+ yarn --frozen-lockfile
+
+ - name: Build changed content
+ env:
+ CONTENT_ROOT: ${{ github.workspace }}/mdn/content/files
+ CONTENT_TRANSLATED_ROOT: ${{ github.workspace }}/files
+ working-directory: ${{ github.workspace }}/mdn/content
+ run: |
+ yarn content sync-translated-content
+
+ - name: Commit changes
+ # git commit will fail if there are no changes but that's okay!
+ continue-on-error: true
+ run: |
+ cd $GITHUB_WORKSPACE
+ git remote add upstream "https://${GITHUB_ACTOR}:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git"
+ git config --local user.email "actions@users.noreply.github.com"
+ git config --local user.name "MDN"
+ git commit -a -m "[CRON] sync translated content"
+ git pull --rebase upstream main
+ git push upstream main