Overview of Release Candidate Workflows

What Is a Release Candidate?

A release candidate (RC) is a build intended for testing before a final release. RCs allow us to validate compatibility across the E3SM analysis stack and to ensure that tools and environments function correctly on supported HPC platforms.

RC packages are published to special Conda labels (like e3sm_diags_dev or e3sm_unified_dev) to keep them separate from stable releases.


Overview of the Process

There are two major workflows:

1. Creating RCs for Dependency Packages

These are individual tools like e3sm_diags, zppy, or mpas_analysis that are used within the E3SM-Unified environment.

Go to: Creating RCs for Dependency Packages


2. Creating an RC for E3SM-Unified

This involves assembling a full test environment based on specific versions of all dependencies — including RCs.

Go to: Creating an E3SM-Unified RC


3. Troubleshooting Build Failures

Solving Conda environments during builds can fail for complex or subtle reasons. This section provides detailed strategies for debugging, including use of conda_first_failure.py.

Go to: Troubleshooting Conda Build Failures


Each page includes step-by-step examples, commands, and best practices tailored to the E3SM-Unified release workflow.