From a3e56d7fed4e73c697540bbaa9ba37c231a0f694 Mon Sep 17 00:00:00 2001 From: Ryan Enns Date: Sat, 21 Mar 2026 07:40:56 -0400 Subject: [PATCH] ci --- .github/workflows/ci.yml | 69 +++++++++++++++++++++++++++++++++++++ load-balancer/tsconfig.json | 6 ++-- 2 files changed, 72 insertions(+), 3 deletions(-) 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..c8fd6d8 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,69 @@ +name: CI + +on: + push: + branches: + - main + pull_request: + +jobs: + build-format-test: + runs-on: ubuntu-latest + + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version: 24 + cache: npm + cache-dependency-path: | + package-lock.json + packages/shared/package-lock.json + chat-server/package-lock.json + load-balancer/package-lock.json + chat-client/package-lock.json + _test-harness/package-lock.json + + - name: Install root dependencies + run: npm ci + + - name: Install shared dependencies + run: npm ci + working-directory: packages/shared + + - name: Install chat-server dependencies + run: npm ci + working-directory: chat-server + + - name: Install load-balancer dependencies + run: npm ci + working-directory: load-balancer + + - name: Install chat-client dependencies + run: npm ci + working-directory: chat-client + + - name: Install test harness dependencies + run: npm ci + working-directory: _test-harness + + - name: Run Prettier fix + run: npx --prefix chat-server prettier --write . + + - name: Build shared package + run: npm run build + working-directory: packages/shared + + - name: Build chat-server + run: npm run build + working-directory: chat-server + + - name: Build load-balancer + run: npm run build + working-directory: load-balancer + + - name: Run Vitest + run: npm test diff --git a/load-balancer/tsconfig.json b/load-balancer/tsconfig.json index 7f46c98..e46499d 100644 --- a/load-balancer/tsconfig.json +++ b/load-balancer/tsconfig.json @@ -1,9 +1,9 @@ { "extends": "../tsconfig.json", "compilerOptions": { - "allowImportingTsExtensions": true, + "rewriteRelativeImportExtensions": true, "outDir": "dist" }, - "include": ["**/*.ts"], - "exclude": ["node_modules", "dist"] + "include": ["index.ts", "terminal-ui.ts", "src/**/*.ts"], + "exclude": ["node_modules", "dist", "tests"] }