From aaab9b51242307c42eb387f19cb93da33b488162 Mon Sep 17 00:00:00 2001 From: DaKheera47 Date: Sun, 25 Jan 2026 13:29:19 +0000 Subject: [PATCH] add CI --- .github/workflows/ci.yml | 71 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..e58d0c3 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,71 @@ +name: CI + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + lint: + name: Linting (Biome) + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Setup Biome + uses: biomejs/setup-biome@v2 + with: + version: 2.3.12 + - name: Run Biome + run: biome ci . + + test-orchestrator: + name: Orchestrator Tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'npm' + cache-dependency-path: orchestrator/package-lock.json + - name: Install dependencies + run: npm ci + working-directory: orchestrator + - name: Run Vitest + run: npm run test:run + working-directory: orchestrator + + build: + name: Build Verification + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'npm' + cache-dependency-path: | + orchestrator/package-lock.json + extractors/gradcracker/package-lock.json + extractors/ukvisajobs/package-lock.json + + - name: Build Orchestrator + run: | + npm ci + npm run build + working-directory: orchestrator + + - name: Build gradcracker extractor + run: | + npm ci + npm run build + working-directory: extractors/gradcracker + + - name: Build ukvisajobs extractor + run: | + npm ci + npm run build + working-directory: extractors/ukvisajobs