- Devs need a way to automate a Studio release creation
Technical decisions are to be made on how parameters should be passed. This description just explains the expected options and behavior.
REST API Endpoint
- Create an endpoint that triggers a Studio release on a given project
- Endpoint should take following parameters:
- project id
- branch name
- released version number
Release can only be done on master branch or on a feature branch, not a wip branch.
Release is always performed on HEAD of the branch.
When release is performed a commit is done and pushed automatically for released version
All parameters are mandatory.
Response should contain:
- bundle symbolic name
- version released
- Maven GAV
When trying to release an already existing release version, an error should be returned with:
"This version already exists in this project."
In Maven repo
Artifact for branches should be the branch name, stripped from the moving parts and implementation detail parts
- Artifact names should not contain a version number anymore
- Artifact names should not contain a mention of wip or feature as these are implementation details
- Artifact names should not contain the user's specific hash if possible to make things simpler / cleaner
"Given I access my studio maven repo
When Looking at the maven gav for a given branch
Then The maven artifact for my branch uses the following convention
[branch name minus feature/] for shared commits
[branch name minus wip/]-[username] for wip