Overview
The circleci run release update command returns a 404 "Not Found" error despite circleci run release plan succeeding. This happens when the <deploy-name> argument in the update command doesn't match the name used in the plan command.
failed to call releases API: the response from PUT /task-subcommand-release/v1/release was 404 (Not Found
The releases API stores each deployment plan by its <deploy-name>. When release plan creates a deployment with a custom name like <deploy-name>, all subsequent release update calls must reference that exact name. Without it, release will use defaults to looking for a plan named default which doesn't exist.
Solution
The <deploy-name> argument must match between release plan and release update commands. It is a common issue when creating a plan with a custom <deploy-name> (e.g.,<deploy-prd>) but then calling update without specifying that name Include the <deploy-name> argument in every circleci run release update command, matching the name used in circleci run release plan <deploy-name>.
Incorrect configuration:
# Plan creates a release named "deploy-prd"
- run: circleci run release plan deploy-prd --environment-name prd --component-name my-app --target-version ${CIRCLE_TAG}
# Update searches for "default" instead of "deploy-prd"
- run: circleci run release update --status runningCorrect configuration:
# Plan creates a release named "deploy-prd"
- run: circleci run release plan deploy-prd --environment-name prd --component-name my-app --target-version ${CIRCLE_TAG}
# Update references the same name "deploy-prd"
- run: circleci run release update deploy-prd --status running
- run: circleci run release update deploy-prd --status SUCCESS
- run: circleci run release update deploy-prd --status FAILED
Comments
Article is closed for comments.