Skip to content

Create cd.yml

Create cd.yml #2

Workflow file for this run

name: CI workflow
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
jobs:
backend:
name: Build & Test Backend
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Java
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: '21'
- name: Build backend with Maven
working-directory: backend
run: mvn clean package
- name: Run backend tests
working-directory: backend
run: mvn test
frontend:
name: Build & Lint Frontend
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Install frontend dependencies
working-directory: frontend
run: npm install
- name: Lint frontend
working-directory: frontend
run: npm run lint
- name: Build frontend
working-directory: frontend
run: npm run build
docker:
name: Docker Build Check
runs-on: ubuntu-latest
needs: [backend,frontend]
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Build Docker images
run: docker compose build