Skip to content

The Holy Grail

The Holy Grail #335

Workflow file for this run

name: 🛠️ Build Backend
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]
jobs:
start:
name: 🏁 Initial Setup
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- name: 🚀 Starting Job
run: |
echo "Beginning to build ${{ github.repository }}"
build_backend:
name: 🏗️ Build Backend
runs-on: ubuntu-latest
needs: start
steps:
- name: 📥 Checkout "${{ github.repository }}"
uses: actions/checkout@v3
- name: 📦 Set up Node (stable)
uses: actions/setup-node@v3
with:
node-version: 20.16
- name: 📥 Install dependencies
run: |
cd backend && npm ci
- name: ▶️ Run `nest build`
run: |
cd backend && npm run build
validate_api_spec:
name: 🧪 Validate API Spec
runs-on: ubuntu-latest
needs: build_backend
steps:
- name: 📥 Checkout "${{ github.repository }}"
uses: actions/checkout@v3
- name: 🧰 Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: 🧪 Generate API client
run: |
java -jar tools/openapi-generator-cli.jar generate -i backend/openapi/api.yaml -g typescript-axios -o frontend/api --additional-properties supportsES6=true --additional-properties skipFormModel=false
end:
name: 🏁 The end
runs-on: ubuntu-latest
needs: [build_backend, validate_api_spec]
steps:
- name: 🏁 Ending
id: init
run: |
echo "${{ github.repository }} has been built"