Bump actions/checkout from 4.1.7 to 4.2.1 (#1557) #418
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will do a clean install of node dependencies and run tests across different versions of node | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions | |
name: typescript / main | |
on: | |
push: | |
branches: [main] | |
jobs: | |
precheck: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 | |
- name: Enable corepack to fix https://github.com/actions/setup-node/pull/901 | |
run: corepack enable yarn | |
- name: Use Node.js LTS (20.x) | |
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b | |
with: | |
node-version: 20.x | |
cache: 'yarn' | |
- name: Install project dependencies | |
run: corepack yarn install --immutable | |
- name: Run exercism/typescript ci precheck (checks config, lint code, and runs tests) for all exercises | |
run: corepack yarn ci:check | |
ci: | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
node-version: [20.x, 22.x] | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 | |
- name: Enable corepack to fix https://github.com/actions/setup-node/pull/901 | |
run: corepack enable yarn | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'yarn' | |
- name: Install project dependencies | |
run: corepack yarn install --immutable | |
- name: Run exercism/typescript ci (checks config, lint code, and runs tests) for all exercises | |
run: corepack yarn ci | |
impersonate: | |
# This job tries to run tests for the 'hello-world' exercise, but | |
# simulating what would happen if a student runs the tests standalone. | |
# We do this by removing all project files in the root. | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 | |
- name: Enable corepack to fix https://github.com/actions/setup-node/pull/901 | |
run: corepack enable yarn | |
- name: Use Node.js 20.x | |
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b | |
with: | |
node-version: 20.x | |
cache: 'yarn' | |
- name: Remove root project files | |
run: rm -f package.json yarn.lock .yarnrc.yml | |
- name: Move solution file so that tests pass | |
working-directory: exercises/practice/hello-world | |
run: | | |
rm -f hello-world.ts | |
cp ./.meta/proof.ci.ts hello-world.ts | |
- name: Install project dependencies | |
working-directory: exercises/practice/hello-world | |
run: corepack yarn install --no-immutable | |
- name: Run tests | |
working-directory: exercises/practice/hello-world | |
run: corepack yarn test |