Skip to content

refactor: Simplify CI/CD pipeline to essentials #15

refactor: Simplify CI/CD pipeline to essentials

refactor: Simplify CI/CD pipeline to essentials #15

Workflow file for this run

name: CI/CD
on:
push:
branches:
- main
pull_request:
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
working-directory: ./backend
run: npm install
- name: Build TypeScript
working-directory: ./backend
run: npm run build
- name: Create .env file
working-directory: ./backend
run: |
echo "REDIS_CLUSTER_NODES=redis-node-1:6379,redis-node-2:6379,redis-node-3:6379,redis-node-4:6379,redis-node-5:6379,redis-node-6:6379" >> .env
echo "PORT=3000" >> .env
- name: Start services
run: docker-compose up --build -d
- name: Wait for startup
run: sleep 20
- name: Test health endpoint
run: curl -f http://localhost:3000/health
- name: Show logs
if: failure()
run: docker-compose logs
- name: Cleanup
if: always()
run: docker-compose down -v