Closed daniel-va closed 3 months ago
One point that I'm not yet decided on is how to handle/generate version numbers.
The current live workflows use a three-part versioning system (i.e. X.X.X
), generated using the following method:
edge
, eX.X.X
), one for int (release-candidate
, rcX.X.X
) and prod (release
, vX.X.X
). These numbers don't have any direct relation to each other.The issue with different versions by release would be fixed in this PR, by only building the images once and then just adding new tags per release. However, since the PR replaces the existing workflows, it effectively "resets" the version's last number to 1
.
Personally, I would move to a two-part versioning system (i.e. X.X
), where the first number is always 1
, which should only change if the application is ever fully rewritten or replaced. The second number should be an incrementing number starting at 1
. If possible, I would only increment the second number on a prod release, instead of on each dev build, as it happens with the current system. This has the following advantages:
This feature has not been fully tested and should not be merged yet!
PR for #77.
build
workflow.The new
build
workflow defines the following automatic release process:edge
Docker images are built and pushed.edge
Docker images are tagged asrelease-candidate
.The rewritten
release
workflow defines the following manual release process:release-candidate
Docker images are tagged aslatest
.These workflows contain the following notable changes to their predecessors:
latest
instead ofrelease
.