Skip to content

[FEATURE] KymaEnvironment Schema Validation #126

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

Open
4 tasks
sdischer-sap opened this issue Apr 3, 2025 · 0 comments
Open
4 tasks

[FEATURE] KymaEnvironment Schema Validation #126

sdischer-sap opened this issue Apr 3, 2025 · 0 comments
Labels
priority/medium Feature is broken, workaround available

Comments

@sdischer-sap
Copy link
Member

sdischer-sap commented Apr 3, 2025

Is your feature request related to a problem?

We recently see more problems (e.g. #104) with the fact that the KymaEnvironment parameters schemaless. This together with a recent change in the Provisioning API leads to a potential continous update loop due to a continous drift detection of ignored fields in the Kyma side. This is particularily bad, since the Kyma side will eventually fail the updates and bring the instance into a failure state after too many update requests.

Describe the solution you'd like

A potential solution to this might be adding some dynamic runtime validation of schema based on the createSchema and updateSchema fields of the API (see https://api.sap.com/api/APIProvisioningService/path/getAvailableEnvironments). We can use those to filter out attributes that are only relevant for updates and return an error if there are attributes entirely unknown to the schema.
This would hopefully solve those continous update issues currently see.

Potential alternatives

Apart from making those semantic checks it makes sense to add a circuit breaker. This will be dealt with in this issue:
#164

Acceptance criteria:

  • Controller returns error in case of schema contains unknown attributes (according to create- and updateschema)
  • Controller filters out attributes that are only part of the createschema to send a payload valid according to the updateschema
  • stretch/thought: utilize this logic in the drift detection step
  • implement as intializer function to easily be reusable by other components

Additional context

@sdischer-sap sdischer-sap added requires-concept Not specific enough yet to be worked on priority/medium Feature is broken, workaround available labels Apr 3, 2025
@sdischer-sap sdischer-sap removed the requires-concept Not specific enough yet to be worked on label May 7, 2025
@GenosseOtt GenosseOtt changed the title [FEATURE] KymaEnvironment Schema Validation [FEATURE] KymaEnvironment Schema Validation May 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority/medium Feature is broken, workaround available
Projects
None yet
Development

No branches or pull requests

1 participant