Skip to main content

CI/CD Overview

Ever Gauzy uses multiple CI/CD pipelines for building, testing, and deploying across all platforms.

CI/CD Platforms​

PlatformPurpose
GitHub ActionsDesktop apps, releases, Docker images
CircleCIAPI and webapp builds, testing

Pipeline Architecture​

Code Push / PR
β”‚
β”œβ”€β”€ GitHub Actions
β”‚ β”œβ”€β”€ Build Desktop Apps (Win, Mac, Linux)
β”‚ β”œβ”€β”€ Build Docker Images
β”‚ β”œβ”€β”€ Publish to GitHub Releases
β”‚ └── Push to Container Registry
β”‚
└── CircleCI
β”œβ”€β”€ Lint & Type Check
β”œβ”€β”€ Build API & Webapp
β”œβ”€β”€ Run Tests
└── Deploy to Staging/Production

Build Targets​

TargetCI PlatformOutput
API (NestJS)CircleCIDocker image
Webapp (Angular)CircleCIDocker image / static
Desktop TimerGitHub Actions.exe, .dmg, .AppImage
Desktop ServerGitHub Actions.exe, .dmg, .AppImage
Browser ExtensionGitHub Actions.zip

NX Integration​

All builds use NX for task orchestration:

# Build only affected projects
npx nx affected --target=build

# Build specific project
npx nx build api

# Build with remote caching
npx nx build api --skip-nx-cache=false

NX Cloud​

Remote caching accelerates CI builds:

# Enable NX Cloud
NX_NO_CLOUD=false
NX_CLOUD_ACCESS_TOKEN=your-token