Release Pipeline
Release Pipeline
Validate, prepare, document, commit, tag, and publish a versioned release without post-push finalization.
custy run releaseCategory
Quick Command
custy run release [OPTIONS]Overviewâ
Release is the complete public publication profile. It includes repository, commit, tag, and remote validation before it applies version state, generates release documentation, creates Git history, and pushes to the resolved remotes.
custy --dry-run run release
custy run releaseExact Phase Flow
Release Profile
Exact Release Step Order
Release expands nested validation profiles before the preparation and mutation stages.
| 01 â ensure_git_repo_step | Require a Git repository. |
|---|---|
| 02 â ensure_staged_changes_step | Check commit staging readiness. |
| 03 â ensure_commit_validation_provider_step | Resolve built-in, Commitizen, or Git-policy message validation. |
| 04 â ensure_commit_hook_policy_step | Resolve native hooks or safe direct pre-commit execution. |
| 05 â ensure_commit_message_file_step | Validate the configured commit-message file setting. |
| 06 â ensure_commit_message_file_exists_step | Require the commit-message file. |
| 07 â ensure_version_file_step | Validate the configured version file. |
| 08 â ensure_tag_message_file_step | Validate the configured tag-message file setting. |
| 09 â ensure_tag_message_file_exists_step | Require the tag-message file. |
| 10 â ensure_remote_exists_step | Require resolved Git remotes. |
| 11 â prepare_version_step | Resolve the release version and tag context. |
| 12 â workflow_init_step | Initialize branch workflow state. |
| 13 â prepare_tag_message_step | Prepare the tag message for the resolved version. |
| 14 â generate_artifacts_step | Preserve reviewed messages and generate only missing or empty artifacts. |
| 15 â edit_files_step | Open release files for review and editing. |
| 16 â validate_edited_step | Validate the edited artifacts. |
| 17 â apply_version_step | Apply the resolved version through the configured update path. |
| 18 â generate_changelog_step | Run conditional changelog generation. |
| 19 â backup_commit_message_files_step | Back up the commit-message file. |
| 20 â backup_tag_message_files_step | Back up the tag-message file. |
| 21 â cleanup_backup_step | Apply backup retention cleanup. |
| 22 â stage_step | Stage the resolved release files. |
| 23 â commit_step | Run the resolved hook plan and create the release commit. |
| 24 â tag_step | Create the local release tag. |
| 25 â push_step | Push HEAD and the eligible release tag to resolved remotes. |
Before You Run
Before You Begin
- Start from reviewed Git stateRequired
Confirm branch, status, staged files, existing tags, and remotes.
- Validate project configurationRequired
Check version strategy, paths, templates, changelog rules, and remote policy.
- Review message filesRequired
Ensure commit and tag messages exist and satisfy the configured convention.
- Preview with dry-runRequired
Read every planned file, Git, and remote action before normal execution.
- Plan recoveryRequired
Know how you will inspect and reconcile a partial commit, tag, or push.
Release or Full?
Release ends after push. Full contains the same Release stages and then invokes experimental branch workflow finalization. Prefer Release unless that post-publication transition is deliberately required and understood.