CI/CD

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

Edit this page

Copyright Β© 2023-Present Ever Co. LTD.Docs by Sourcey