From 756a7f77fe5ffd7bd2ff7349358ec36004a5beb6 Mon Sep 17 00:00:00 2001 From: Mama Naomi Date: Wed, 24 Jan 2024 07:22:00 -0800 Subject: [PATCH] feat(tools): run all curriculum tests on i18n pr (#53339) --- .github/workflows/curriculum-i18n.yml | 70 +++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 .github/workflows/curriculum-i18n.yml diff --git a/.github/workflows/curriculum-i18n.yml b/.github/workflows/curriculum-i18n.yml new file mode 100644 index 00000000000..7a97b5ec7f6 --- /dev/null +++ b/.github/workflows/curriculum-i18n.yml @@ -0,0 +1,70 @@ +name: CI - Node.js +env: + NODE_OPTIONS: '--max_old_space_size=6144' + +on: + # Run on push events, but only for the below branches + push: + branches: + - 'i18n-sync-curriculum' + workflow_dispatch: + +permissions: + contents: read + +jobs: + test-curriculum: + name: Test Curriculum + runs-on: ubuntu-22.04 + strategy: + fail-fast: false + matrix: + node-version: [20.x] + # Exclude the languages that we currently run in the full CI suite. + locale: + [ + 'chinese', + 'espanol', + 'ukrainian', + 'japanese', + 'german', + 'arabic', + 'swahili' + ] + steps: + - name: Checkout Source Files + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3 + + - name: Setup pnpm + uses: pnpm/action-setup@v2 + with: + version: 8 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # v3 + with: + node-version: ${{ matrix.node-version }} + cache: pnpm + + - name: Set Environment variables + run: | + cp sample.env .env + cat .env + + - name: Install node_modules + run: pnpm install + + # DONT REMOVE THIS STEP. + # TODO: Refactor and use re-usable workflow and shared artifacts + - name: Build Client in ${{ matrix.locale }} + env: + CURRICULUM_LOCALE: ${{ matrix.locale }} + CLIENT_LOCALE: ${{ matrix.locale }} + run: | + pnpm run build + + - name: Run Tests + env: + CURRICULUM_LOCALE: ${{ matrix.locale }} + CLIENT_LOCALE: ${{ matrix.locale }} + run: pnpm test:curriculum