fix: add CI for better control of regressions during PRs

This commit is contained in:
Ralph Khreish
2025-04-03 14:33:37 +02:00
parent 9dc5e75760
commit b892d9743a
6 changed files with 349 additions and 1 deletions

52
.github/workflows/ci.yml vendored Normal file
View File

@@ -0,0 +1,52 @@
name: CI
on: [push, pull_request]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- name: Cache node_modules
uses: actions/cache@v4
with:
path: |
node_modules
*/*/node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install Dependencies
run: npm ci
timeout-minutes: 2
- name: Run Tests
run: npm run test:coverage
env:
NODE_ENV: test
CI: true
FORCE_COLOR: 1
timeout-minutes: 60
- name: Upload Test Results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-node
path: |
test-results
coverage
junit.xml
retention-days: 30

View File

@@ -14,9 +14,21 @@ jobs:
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- name: Cache node_modules
uses: actions/cache@v4
with:
path: |
node_modules
*/*/node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install Dependencies
run: npm install
run: npm ci
timeout-minutes: 2
- name: Create Release Pull Request or Publish to npm
uses: changesets/action@v1