CI/CD Pipeline

Continuous integration and deployment powered by CircleCI.

Overview

The pipeline automates testing, building, and deployment across multiple platforms. It ensures code quality, runs comprehensive tests, and deploys documentation.

Workflows

Main CI Workflow

Triggered on pushes to main branch.

  • Code Quality: Linting, pre-commit hooks, CodeQL analysis
  • Python Tests: Multiple versions (3.9-3.12)
  • Build Linux CUDA: Build and test with CUDA support
  • Build Linux CPU: CPU-only build and test
  • Build Windows: Build with OpenCV
  • Code Coverage: Generate and upload reports
  • Benchmark: Run performance benchmarks on macOS
  • Docker Build: Build and push CPU/CUDA images
  • Security Scan: Scan images for vulnerabilities

Nightly Workflow

Runs daily at 2 AM UTC. Includes all jobs from main CI for comprehensive testing.

Supported Platforms

Key Features

Configuration

The pipeline is configured in .circleci/config.yml:

Getting Started

  1. Ensure your branch is based on main
  2. Push changes to trigger the CI pipeline
  3. Monitor the CircleCI dashboard for build status
  4. Address any failing checks before merging

View Pipeline Status →