cnabio / cnab-spec

Cloud Native Application Bundle Specification
https://cnab.io
Other
956 stars 99 forks source link

Proposal: Enable versioned schema validation #346

Closed vdice closed 4 years ago

vdice commented 4 years ago

Goal

CNAB Implementations have a need to validate against specific versions of CNAB schemata

Proposed Requirements

The CNAB Spec authority (cnabio/cnab-spec) should:

Implementations should be able to fetch the version(s) of schemata they implement and:

Proposed Implementations

Proposed implementation for cnabio/cnab-spec to achieve the requirement(s) above:

The first option will most likely be preferred as it enables more modes of artifact accessibility and isn't as limited by tools/tech, but I wanted to list the second option for funsies.

CNAB Implementation use

CNAB implementations may then achieve one or both of the stated goals above by consuming the schema artifacts and validating their code with the JSON Schema validation tool(s) of their choosing.

Use case: the main golang library, https://github.com/cnabio/cnab-go, could:

Ref https://github.com/cnabio/cnab-go/issues/194

vdice commented 4 years ago

I'm planning on proceeding with the first option listed above (Push to blob store, etc.) as a solution to host versioned/tagged schemata from this repo.

vdice commented 4 years ago

Implemented in #350