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.6 id: cached-node_modules with: path: | ${{ github.workspace }}/mdn/content/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: Sync translated 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