-
Notifications
You must be signed in to change notification settings - Fork 0
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
Create k8s_service_info
library that replaces the SDI k8s-service
interface
#2
Comments
Thank you for reporting us your feedback! The internal ticket has been created: https://warthogs.atlassian.net/browse/KF-5304.
|
This library provides functionality for sharing Kubernetes Service information using the k8s-service relation interface. Fixes #2
This library provides functionality for sharing Kubernetes Service information using the k8s-service relation interface. This commit adds the library and unit tests. Fixes #2
A few notes that came up while reviewing this/the PR: The old schema cited above is correct in that thats how it is specified to SDI, but SDI nests the data a bit more in the relation. I think a more comparable v0 schema is this:
A few places in the original issue here say v0 is the original (SDI) schema and v1 is the new one proposed, but others say v1 is SDI and v2 is the new one. We should settle on one numbering scheme to avoid confusion |
I have change the description to correct this confusion. The current SDI version will be |
* feat: create k8s_service_info library This library provides functionality for sharing Kubernetes Service information using the k8s-service relation interface. This commit adds the library and unit tests. Fixes #2
Context
The current implementation of the
k8s-service
relation interface for sharing Kubernetes Services info (svc name and port) is based on SDI. As we are moving away from SDI, a new library for handling this relation interface must be created and replaced where it is convenient.The proposal for tackling this task is to keep version 1 of the interface and work on a v2 that's handled entirely by a charm library, that way we are not forced to migrate all charms that use the old implementation all at once.
Old schema
New schema
Backwards compatibility
Although the schema will change slightly, the format of the shared data will be exactly the same to avoid compatibility issues. To keep things compatible with v1, we could have a decorator that shares the data in the old schema if we notice that the requirer charm is using the old version, that way it's easier to migrate.
What needs to get done
Definition of Done
The library can be fetched and used in any provider/requirer charm.
The text was updated successfully, but these errors were encountered: