CI/CD Overview
Ever Gauzy uses multiple CI/CD pipelines for building, testing, and deploying across all platforms.
CI/CD Platformsβ
| Platform | Purpose |
|---|---|
| GitHub Actions | Desktop apps, releases, Docker images |
| CircleCI | API 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β
| Target | CI Platform | Output |
|---|---|---|
| API (NestJS) | CircleCI | Docker image |
| Webapp (Angular) | CircleCI | Docker image / static |
| Desktop Timer | GitHub Actions | .exe, .dmg, .AppImage |
| Desktop Server | GitHub Actions | .exe, .dmg, .AppImage |
| Browser Extension | GitHub 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
Related Pagesβ
- GitHub Actions β desktop and release workflows
- CircleCI β API and webapp pipelines
- Self-Hosted Runners (Windows) β provisioning Windows build machines