aio-cli-plugin-cloudmanager icon indicating copy to clipboard operation
aio-cli-plugin-cloudmanager copied to clipboard

Update of CM pipeline settings doesn't validate branch/tag existence

Open jwadolowski opened this issue 4 years ago • 1 comments

Expected Behavior

User input (branch/tag/repositoryId) must be validated upon update of CM pipeline settings.

Actual Behavior

aio cloudmanager:pipeline:update ends successfully for not existing branches/tags.

Reproduction Scenario, Platform, and Version

$ aio -v
@adobe/aio-cli/8.1.0 darwin-x64 node-v14.17.6

Steps to Reproduce

$ aio cloudmanager:pipeline:update PIPELINEID -p PROGRAMID --branch=this-branch-does-not-exist
updating pipeline... updated pipeline ID <PIPELINEID>

$ aio cloudmanager:pipeline:update PIPELINEID -p PROGRAMID --tag=not-existing-tag
updating pipeline... updated pipeline ID <PIPELINEID>

Once above is set you can start the pipeline, but it's gonna fail immediately at validation stage with the following message:

Failed: Invalid pipeline: <PIPELINEID>. Reason=Branch=this-branch-does-not-exist not found in repository (Finished: September 22, 2021 11:14:23 AM GMT+2)

In contrast repository ID is being validated, so I assume that it may require some backend API changes:

$ aio cloudmanager:pipeline:update PIPELINEID -p PROGRAMID --repositoryId=123456
updating pipeline... failed
 ›   Error: [CloudManagerSDK:ERROR_UPDATE_PIPELINE] Cannot update pipeline: https://cloudmanager.adobe.io/api/program/PROGRAMID/pipeline/PIPELINEID (400 Bad Request) - Validation
 ›   Error(s): Referenced repository not found in application or is not ready for use: 123456
 ›   Code: ERROR_UPDATE_PIPELINE

jwadolowski avatar Sep 22 '21 22:09 jwadolowski

It could certainly make sense for this CLI command to accept a flag --validate-branch which gets the repositoryId (either from the current pipeline definition or the repositoryId flag), lists the branches, and validates that the branch is one of those. That wouldn't be possible for tags, however.

justinedelson avatar Sep 23 '21 11:09 justinedelson