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

first thoughts about Servicebox claim resource definition #1

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

aureamunoz
Copy link
Collaborator

No description provided.

namespace: my-namespace # optional (if claiming across namespaces)
status:
binding:
name: service-secret # copied from BackingService/my-svc
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using this approach implies that a system has populated a k8s secret and has updated the ClaimCRD. Which component/system will be responsible for that ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At this moment I think it would be the ServiceBox because it is reacting to the Claim CR received.

Comment on lines +8 to +9
apiVersion: backingsvc.com/v1alpha1
kind: BackingService
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are you proposing a new GVK / CRD ? How will be possible based on that to find a MySQL 8.0.30 backend or Postgresql 13?8 or ... ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure to follow, I just wanted to reference a generic backing service and gave that name, but if we reference a postgresql 13 it would be kind: Postgresqlor something like this

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the question that we should have here is: "Do we plan to pass within the ClaimCRD a kubernetes CRD or to have a way to declare something which can be matched next ?". The idea of the Claim is to express that we want to access as a service (sql, nosql, openid, ldap, ...) without any knowledge about how the platform is handling the service. So, the service has maybe been created using a CRD, no CRD (= k8s resources), is perhaps running externally but available at the address IP:port or hostname.dnsname:port, etc. This is why I dont think that we need the fields apiVersion and kind. WDYT ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, ok. I agree it is a good idea not depend on strict kubernetes resources, in that case we need to find an alternative way to describe the need.

kind: BackingService
name: my-svc #optional
labels: #optional
foo: bar
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Which labels do you plan to pass here ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Labels helping to discover the backend service, for example: app: database-postgresql

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that it is needed that we describe the use cases starting from the Microservice creation (= what folks call now a workload) till a Claim will be issued. Why: to be able to see the data needed, what the different systems will pass, ...

Example:

Microservice x.y.z --> use a CLI (dekorate, quarkus ext, ...)
CLI --> create an Application CRD
App CRD --> consumed by the Application Controller
Application Ctrl -> extract the claim section
Application Ctrl -> populate a Claim CRD
Claim CRD --> consumed by the ServiceBox

To be defined: Application CRD & Claim CRD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants