-
Notifications
You must be signed in to change notification settings - Fork 6
Versioning & Deployment
Timo Bögner edited this page Jul 15, 2021
·
6 revisions
Versioning is automated with help from GitHub Actions, semantic-release and the Git-flow branching Model.
According to Git-flow we have the following permanent branches with special roles:
-
develop
: Reflects the current development status. Feature branches are created from this and merged back to it, when complete. -
release
: Reflects the current testing status. When a stable state is reached ondevelop
branch, it can be merged torelease
. This will result in creating a release candidate. -
main
: Reflects the current productive status. When a release candidate is well tested, it can be merged (fromrelease
) tomain
. This will result in creating a productive release. Furthermore hot fix branches can be created from the main branch, when critical bugs have to be fixed. After merging them back tomain
they should be also merged back torelease
anddevelop
.
The services / deployment units are bundled as docker images and uploaded to a public docker hub repository with name inoeg. This publishing process is triggered by merging / pushing commits to the special branches mentioned above.
Deployment is automated with help from GitHub Actions, Maven, Docker and Watchtower.