Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Leaf: Clarify the prerelease-flag #75

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 15 additions & 4 deletions tea-leaf/tea-leaf.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -16,12 +16,23 @@ a timestamp for a release is required.

## The Leaf Object

- __UUID__ unique for this object
- __Uuid__ unique for this object
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We've called this an identifier (which is of type UUID) in the OpenAPI Spec - we need to align in either direction.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree

- __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

Expand Down