diff --git a/tea-leaf/tea-leaf.md b/tea-leaf/tea-leaf.md index 1a76eca..555721a 100644 --- a/tea-leaf/tea-leaf.md +++ b/tea-leaf/tea-leaf.md @@ -3,7 +3,7 @@ _Work in progress_ The TEA LEAF is the object that indicates a product version. The API should be -very agnostic to how a "version" is indicated - semver, name, hash or anything else. +very agnostic as to how a "version" is indicated - semver, vers, name, hash or anything else. ## Major and minor versions @@ -16,12 +16,23 @@ a timestamp for a release is required. ## The Leaf Object -- __UUID__ unique for this object +- __Uuid__ unique for this object - __Product name__: A text field - __Product version__: A text field, no required syntax - __Release date__: A unix timestamp -- __Prerelease__: A flag indicating a pre-release (beta, rc) -- __TCO_UUID__: A reference to the TEA Collection objet for this release +- __Pre-Release__: A boolean flag indicating a pre-release (beta, rc) +- __Tco_uuid__: A reference to the TEA Collection objet for this release + +## Handling the Pre-Release flag + +The Pre-Release flag is used to indicate that this is not a final release. For a given Leaf with a UUID, the flag +can be set to indicate a "test", "beta", "alpha" or similar non-deployed release. It can only be set when +creating the LEAF. The TEA implementation may allow it to be unset (False) once. This is to support +situations where a object is promoted as is after testing to production version. The flag can not +be set after initial creation and publication of the leaf. + +If the final version is different from the pre-release (bugs fixed, code changed, different binary) +a new leaf with a new UUID and version needs to be created. ## References