name: Languages Sync on: push: branches: ['master'] paths: - 'packages/i18n/**' - '.github/workflows/languages-sync.yml' pull_request_target: branches: ['master'] paths: - 'packages/i18n/**' - '.github/workflows/languages-sync.yml' 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 - 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: Check Language Key if: github.ref != 'refs/heads/master' working-directory: ./packages/i18n run: pnpm run sync-languages:check env: TOLGEE_API_KEY: ${{ secrets.TOLGEE_API_KEY }} - name: Sync Languages if: github.ref == 'refs/heads/master' working-directory: ./packages/i18n run: pnpm run sync-languages env: TOLGEE_API_KEY: ${{ secrets.TOLGEE_API_KEY }}