Deployment configuration, integration tests, and version manifest for the CMIP7 Assessment Fast Track evaluation pipeline built on Climate REF.
| Directory | Purpose |
|---|---|
helm/ |
Helm chart for Kubernetes deployment |
docker/ |
Docker Compose for local development and testing |
tests/ |
Cross-provider integration tests |
scripts/ |
Smoke tests and deployment helpers |
versions.toml |
Version manifest pinning all component versions |
The AFT deployment brings together independently versioned packages:
| Package | Repository | Description |
|---|---|---|
climate-ref-core |
Climate-REF/climate-ref | Core library with base classes and interfaces |
climate-ref |
Climate-REF/climate-ref | Main application, CLI, database, solver |
climate-ref-celery |
Climate-REF/climate-ref | Celery executor for distributed execution |
climate-ref-esmvaltool |
Climate-REF/climate-ref-esmvaltool | ESMValTool diagnostic provider |
climate-ref-pmp |
Climate-REF/climate-ref-pmp | PCMDI Metrics Package diagnostic provider |
climate-ref-ilamb |
Climate-REF/climate-ref-ilamb | ILAMB diagnostic provider |
This repository uses Calendar Versioning with the format YYYY.MM
(e.g., 2026.02). Each release represents a tested, deployable combination of all components.
The versions.toml file pins the exact version ranges for each component in a given release.
# Start the full stack
docker compose -f docker/docker-compose.yaml up -d
# Run smoke tests
bash scripts/smoke-test.sh# Install the chart
helm install ref ./helm -f helm/local-test-values.yaml
# Or from the OCI registry
helm install ref oci://ghcr.io/climate-ref/charts/ref --version 0.9.1# Install test dependencies
uv sync --all-extras
# Run integration tests (requires providers to be set up)
uv run pytest tests/ -v
# Run slow integration tests (full end-to-end)
uv run pytest tests/ -v --slow| Workflow | Trigger | What It Does |
|---|---|---|
ci.yml |
Push, PR | Lint, install pinned versions, run integration tests |
nightly.yml |
Scheduled (daily) | Test against latest versions of all components |
release.yml |
Tag push | Publish Helm chart, create GitHub release |