Below are the use cases you will be dealign with when you call the CD API of SOAJS:
...
Case1: Calling soajs CD required with the following params:
key, cd_auth, name, version, type
branch
commit
image_tag (optional)
Check all the env where this item is deployed from this branch and
if cd strategy is auto, rebuild and add notification
if image tag is sent change it
if cd strategy is notify, add notification
Add a ledger record with a complete report about what happened.
...
Case2: Calling soajs CD required with the following params:
key, cd_auth, name, version, type
branch
commit
env_list []
image_tag (optional)
Check all the env from the env_list if this item is deployed from this branch and
if cd strategy is auto, rebuild(get last commit) and add notification
if image tag is sent change it
if cd strategy is notify, add notification
if deployed from another branch in provided env do nothing
Add a ledger record with a complete report about what happened.
...
Case3: Calling soajs CD required with the following params:
key, cd_auth, name, version, type
tag
env_list []
image_tag (optional)
Check all the env from the env_list if this item is deployed from a tag and
if cd strategy is auto, rebuild(change to the provide repository tag) and add notification
if image tag is sent change it
if cd strategy is notify, add notification
if deployed not from tag in provided env do nothing
Add a ledger record with a complete report about what happened.
...
Case4: Calling soajs CD required with the following params:
key, cd_auth, name, version, type
env_list []
image_tag
image_name
image_prefix
Check all the env from the env_list if this item is deployed from this image
if cd strategy is auto, rebuild(change to the provide image tag) and add notification
if cd strategy is notify, add notification
if deployed not from this image do nothing
Add a ledger record with a complete report about what happened.
...