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

Introduce a roadmap for Lifecycle-Manager API versions #1715

Open
2 tasks
Tomasz-Smelcerz-SAP opened this issue Jul 25, 2024 · 0 comments
Open
2 tasks

Introduce a roadmap for Lifecycle-Manager API versions #1715

Tomasz-Smelcerz-SAP opened this issue Jul 25, 2024 · 0 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@Tomasz-Smelcerz-SAP
Copy link
Member

Description

We need a plan for future API releases to manage our API in a proper way: ensuring backwards-compatibility, smooth API migration etc.
The map must include all our Kinds (Kymas, ModuleTemplates, Manifests, etc) - or, perhaps, we need a separate "path" for every Kind in the map.
The goal is to have a plan for when we introduce certain API feature (like a new attribute) and when we plan to deprecate it or remove it. We need a similar plan for the API versions.

Reasons

Because we introduce new features and deprecate/remove the old ones, a careful plan for introducing/executing these changes on the API level is necessary.

This is important because we're dealing with multiple attributes from multiple features, spanning multiple Kinds. Sometimes having mutual dependencies. Ensuring the correct lifecycle, without breaking backward-compatibility and giving users enough time to migrate, requires usage of multiple API versions. Then we have to manage the lifecycle of these versions correctly.

In principle, if we consider just a single attribute, we should be able to tell "when" (in which API version) this attribute is:

  • introduced
  • deprecated
  • removed from the API

For the API versions, we must be able to tell when:

  • a version is released (probably linked to LM release)
  • a version is deprecated
  • a version is no-longer-served

The "roadmap" allows us to plan ahead and find out when we should release a new API version, when we should deprecate it and when we should remove it from environments (no-longer-served). And of course the plan tells what is included in (removed from) ever planned API version.

Acceptance Criteria

  • Come up with idea for the map (Mural? something on Github?)
  • Try to create the initial map using our current API versions.

Feature Testing

No response

Testing approach

No response

Attachments

No response

@Tomasz-Smelcerz-SAP Tomasz-Smelcerz-SAP added the kind/feature Categorizes issue or PR as related to a new feature. label Jul 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

No branches or pull requests

1 participant