Open
Description
Context / Motivation
ocm (+ cnudie
) package offers a rather lowlevel binding for (de-)serialising OCM-Component-Descriptors, which merely covers basic syntactical checks. This may lead to invalid OCM-Component-Descriptors being created, either from Concourse-Pipeline-Template (using either component-descriptor trait, or (new) github-actions (defined in this repository)). This can lead to follow-up errors "downstream", fixing of which is time-consuming. We should therefore improve (and enforce) validation to catch errors prior to publishing of OCM-Component-Descriptors.
Implementation Proposal
Checks
- duplicate labels - labelnames must be unique per list (may merge if values are identical)
- duplicate artefacts - artefact-IDs must be unique per list (may merge if values are identical)
-
creationTime
timestamp format must adhere toRFC 3339
(if present)
integrate validation into
- ocm package (as a re-usable API / CLI-Tool)
- Concourse Pipeline Template
- GitHub-Action(s)