Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support multiple versions of a given stack/sample in a given registry #735

Closed
elsony opened this issue Jan 18, 2022 · 3 comments
Closed
Assignees
Labels
area/registry Devfile registry for stacks and infrastructure kind/epic A high level requirement that can/should be split into smaller issues

Comments

@elsony
Copy link
Contributor

elsony commented Jan 18, 2022

Which area this feature is related to?
/area registry

Which functionality do you think we should add?

In order to provide better parent adoption, we need to start supporting multiple versions of devfile to be stored in a given registry so that the user can refer to a specific version of a parent devfile.

Why is this needed? Is your feature request related to a problem?
As a new version of devfile specification, e.g. devfile 2.2, gets introduced, stack providers may want to provide different versions of a stack to provide support based on different devfile specifications. This is important since different tools/stacks will move up to a new devfile specification support at a different pace. It will be helpful for transitioning to a newer version of the specification without causing breakage to existing tools.

Detailed description:

Describe the solution you'd like

More investigation is required to provide multiple versions of the same devfile in a registry. The area of consideration should include:

  1. Structure the source repository on how a stack can provide different versions of the same stack/devfile
  2. How the registry REST API, Go library allows clients to filter the specific version(s) of the devfile, e.g. only devfile 2.1 and 2.2, when querying the list of devfile the registry
  3. Any potential new metadata needed on the index.json
  4. How it affects the registry build
  5. What infrastructure/API does tools need to support multiple devfile versions
  6. How do we represent different versions in the devfile registry viewer
  7. Stretch: take into consideration supporting devfiles of the same stack that uses different base images when designing this feature (see Discussion on switching to use universal developer image in devfile samples #674 for details)

Describe alternatives you've considered

Use different registries to store devfiles using different devfile specification versions. This approach means we have to maintain multiple registries at the same time and the user will need to know different URLs for the registry access as well as the registry viewer.

Additional context

@elsony elsony added the kind/epic A high level requirement that can/should be split into smaller issues label Jan 18, 2022
@openshift-ci openshift-ci bot added the area/registry Devfile registry for stacks and infrastructure label Jan 18, 2022
@yangcao77
Copy link
Contributor

yangcao77 commented Jan 26, 2022

proposal on index and stack/samples repository change: https://docs.google.com/document/d/1_eXbAV1eKetKKu_FHGRw6kUUiUhcp7j1gB0uUrG0WF8/edit?usp=sharing

@yangcao77
Copy link
Contributor

yangcao77 commented Feb 9, 2022

@yangcao77
Copy link
Contributor

closing this issue, as the implementation is done.
for registry viewer change need to be done, see #811
for docs change need to be done, see #810
for enhancement on supporting particular stack versions from outside repos, see #788

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/registry Devfile registry for stacks and infrastructure kind/epic A high level requirement that can/should be split into smaller issues
Projects
None yet
Development

No branches or pull requests

2 participants