Skip to content

Commit af6d419

Browse files
authored
Merge pull request #126 from oej/update-doc
Updating the Collection, adding the new Release object
2 parents dc7e478 + 64cd936 commit af6d419

File tree

1 file changed

+40
-22
lines changed

1 file changed

+40
-22
lines changed

tea-collection/tea-collection.md

Lines changed: 40 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,21 @@
1-
# The TEA Collection object (TCO)
1+
# TEA release and collections
2+
3+
## The TEA release object (TRO)
4+
5+
The TEA Component Release object is a list of releases (versions) of a component
6+
with a release identifier (string), release timestamp and a lifecycle
7+
enumeration for the release. Each release includes a UUID of a
8+
TEA Collection object (TCO).
9+
10+
* UUID: Release UUID
11+
* Version: Version (string)
12+
* Date: Timestamp of release (for sorting releases)
13+
* Prerelease: A flag indicating pre-release (or beta) status. May be disabled
14+
after creation of release object, but can't be enabled after creation of
15+
an object.
16+
* Lifecycle: An identifier indicating lifecycle status of a release
17+
18+
## The TEA Collection object (TCO)
219

320
For each product and version there is a Tea Collection object, which is a list
421
of available artifacts for this specific version. The TEA Index is a list of
@@ -17,7 +34,10 @@ on dynamic artifact types such as LCE or VEX. If the product
1734
is modified, that is a new product version and that should generate
1835
a new collection object with a new UUID and updated metadata.
1936

20-
## Dynamic or static Collection objects
37+
The API allows for retrieving the latest version of the collection,
38+
or a specific version.
39+
40+
### Dynamic or static Collection objects
2141

2242
The TCO is produced by the TEA software platform. There are two ways
2343
to implement this:
@@ -26,24 +46,23 @@ to implement this:
2646
dynamically.
2747
* __Static__: The TCO is built at publication time as a static
2848
object by the publisher. This object can be digitally signed at
29-
publication time.
49+
publication time and version controlled.
3050

31-
## Collection object
51+
### Collection object
3252

3353
The TEA Collection object has the following parts
3454

3555
* Preamble
36-
* UUID of the TEA collection object (TCO)
37-
* Product name
38-
* Product version
56+
* UUID of the TEA collection release object (TCO). Note that this
57+
is the same UUID as the release object for this version. When updating
58+
a collection, the version is changed.
3959
* Product Release date (timestamp)
40-
* Author of the collection object
41-
* Name
42-
* Email
43-
* Organisation
60+
* Collection version release date (timestamp)
61+
* _Version_ of this collection object. Starting with 1.
4462
* Reason for update/release of TCO
4563
* ENUM reason
46-
* clear text
64+
See below
65+
* clear text description of change
4766
* "New product release"
4867
* "Corrected dependency in SBOM that was faulty"
4968
* "Added missing In-Toto build attestation"
@@ -72,16 +91,15 @@ The artifact object has the following parts
7291
* Size in bytes
7392
* SHA384 checksum
7493

75-
## The reason for TCO update enum
94+
### The reason for TCO update enum
7695

7796
| ENUM | Explanation |
7897
|-------------|--------------------------------|
79-
| VEXUPDATE | Updated the VEX artefact(s) |
80-
| SBOMUPDATE | Updated the SBOM artefact(s) |
81-
| OTHERUPDATE | Updated another artefact |
82-
| LCECHANGE | Updated Life cycle enumeration |
83-
84-
* NEWVERSION - A new version of the product
85-
* ADDITION - Adding an artifact
86-
* REMOVE - Removing an artifact
87-
* UPDATE - Update of artifacts (typos, faults)
98+
| INITIAL_RELEASE | Initial release of the collection |
99+
| VEX_UPDATED | Updated the VEX artifact(s) |
100+
| ARTIFACT_UPDATED | Updated the artifact(s) other than VEX |
101+
| ARTIFACT_REMOVED | Removal of artifact |
102+
| ARTIFACT_ADDED | Addition of an artifact |
103+
104+
Updates of VEX (CSAF) files may be handled in a different way by a TEA client,
105+
producing different alerts than other changes of a collection.

0 commit comments

Comments
 (0)