Send back, cancel, recover or retire a release
Stop or correct a release at any stage, and record how an active release was recovered from a bad change.
Before you begin
Releases move forward through their gates, but you can step back or stop. Each of these steps needs a reason, which is kept on the release and shown as the last reason.
| Step | From | To | Who |
|---|---|---|---|
| Send back | Reviewed or Staged | Draft | Independent approver |
| Cancel | Draft, Reviewed, Staged, Approved | Cancelled | Release manager |
| Recover | Active | Recovered or Failed | Operator |
| Retire | Active or Recovered | Retired | Configuration owner |
An Active release cannot be cancelled. Use Recover or Retire.
Send back to draft
- An approver opens a reviewed or staged release and presses Send back.
- Enter the reason: 'Say why it goes back to draft.' is shown if you leave it empty.
- Confirm.
The release returns to Draft. The person who staged it and the approvers are cleared, and any approvals already recorded are deleted. The history is kept. The operator edits the packages or the plan and submits again; the new submission gets a new artifact hash and needs a fresh rehearsal and approval.
Cancel
A release manager presses Cancel and gives the reason ('Say why the release is cancelled.'). Nothing further is offered. The release stays on record.
Recover an active release
If an active release causes a problem, the operator records how it was recovered. Platform does not run a down-migration or roll back the code; it records the outcome.
- Open the active release and press Recover.
- Choose the Outcome:
- Forward fix: another release for the same environment fixes it. Enter the Fixing release id, the 32-character internal id of that release (not the
REL-number). A release of another environment or a cancelled one is refused: 'Name the fixing release for the same environment.' - Restored from backup: enter the Passed restore drill id, the internal id of a drill in state Passed. A failed drill is refused: 'A restore is evidenced by a passed restore of that backup.'
- Failed - not recovered: records that recovery did not succeed.
- Forward fix: another release for the same environment fixes it. Enter the Fixing release id, the 32-character internal id of that release (not the
- Enter the Reason and confirm.
Forward fix and restore give the state Recovered; the third gives Failed.
To find the internal id, open the fixing release or the drill; the id is part of the address of its page.
Retire
A configuration owner presses Retire on an active or recovered release and gives the reason ('Say why the release is retired.'). If it was the environment's active release, the environment then has no active release until the next activation.
Worked example
REL-0002 is active on STAGING and has a defect. The operator runs a restore drill on the newest backup, presses Run the scheduler now under Job runs and sees the drill Passed. The operator opens REL-0002, chooses Recover, outcome Restored from backup, pastes the drill's id and enters 'Restored after payroll defect'. The release is Recovered, with the drill linked. The configuration owner then retires REL-0002.
Good to know
- Where a release is recovered by a forward fix, the fixing release goes through the whole path again: Prepare and submit a release.
- A reason is needed every time; the server refuses an empty one.
- The audit trail records each step with who, when and a correlation id: Roles, audit trail and reports.