...
Understanding the above, ONAP is maintaining a manifest of "Released Artifacts" outside the build process and outside of any binary artifacts. However, the manifest is still in source control. A specific version of this manifest will be blessed by TSC and used to make the "Named Release" (see definition of "Named Release" below).
Nexus
ONAP is using has 3 types of Nexus repos for artifacts:
- Snapshot repo: used for artifacts from review branch and master that have not yet been verified by CSIT. After the committer submits a patch for review, the artifacts are built and pushed to the Snapshot repo, and after +2 and merge they are built and pushed again (this time from master). It is expected to have multiple snapshots for a single repo per day. All snapshot artifacts have same version number. CSIT testing is triggered after successful snapshot artifact builds both for review and masterthis should no longer be needed since there should no longer be cross-project SNAPSHOT dependencies and therefore there should be no reason to make SNAPSHOT artifacts available via Nexus.
- Staging repo: used for snapshot artifacts artifacts built from master and staged for further verification - those that have passed CSIT and are should be valid candidates for Release. The Staging artifacts are used primarily by the Team for their own testing and for E2E Release testing. The Staging artifacts are not meant for public consumption. Once a day, a new clean build is automatically performed (?). All Staging artifacts have same version number.
- Release repo: this is the place where the project Team (or Linux Foundation Releng Team) stores the artifacts that are deemed stabled for being consumed by the other project teams. Each team decides when to release. It is not expected to get a new release every day. No TSC approval is required for getting a new release artifact.
...