Skip to content

Automation for providing a OpenAPI compatible devfile spec for the devfile registry #1146

Open
@michael-valdron

Description

@michael-valdron

Which area this feature is related to?

/area ci
/area api
/area registry

Which functionality do you think we should add?

Why is this needed? Is your feature request related to a problem?

In order to reference the devfile specification as a schema to use under the RESTful OpenAPI specification for the devfile registry, OpenAPI 3 compatibility for the devfile specification is needed.

Detailed description:

The OpenAPI 3 specification for the REST API being added as part of #972 benefits by providing type and endpoint definition source generation as well as REST API documentation #1145. To extend these benefits such as extending generated docs and allow type generation to clients which do not use Go such as the registry viewer #957, we need an OpenAPI compatible devfile specification for the RESTful OpenAPI specification to reference.

Describe the solution you'd like

Due to this being a specific need of the devfile registry, we can solve this by using CI automation which captures the version of the devfile specification used by the devfile registry and provides a converted copy to the registry-support repository which can be referenced by the RESTful OpenAPI specification.

Describe alternatives you've considered

An alternative would be to generate the devfile specification with OpenAPI 3 compatibility from the API source. This would require additional work to be done to change the way the devfile specification is currently being generated along with any necessary changes to the devfile library or parser.

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/apiEnhancement or issue related to the api/devfile specificationarea/ciarea/registryDevfile registry for stacks and infrastructurehelp wantedExtra attention is needed

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions