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

List & Provision Services from the in-cluster installed operators (Dev Catalog) #2161

Closed
2 of 6 tasks
sbose78 opened this issue Sep 23, 2019 · 10 comments
Closed
2 of 6 tasks
Assignees
Labels
kind/epic An issue categorized as a high-level Epic. Needs to be scoped and broken down in 1+ stories/tasks lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. v2 Issue or PR that applies to the v2 of odo

Comments

@sbose78
Copy link
Member

sbose78 commented Sep 23, 2019

[kind/Enhancement]

Which functionality do you think we should update/improve?

odo catalog list services

Why is this needed?

Support in-cluster Operator Catalog as the primary way to look-up and provision services, as an alternative to Service Catalog.

It should behave as demonstrated here https://asciinema.org/a/261224

Challenges

  1. By default, none of the operators in the OLM Catalog are installed. odo catalog list services could potentially be empty - unless we silently install the operator if not installed before usage.
  2. Creating a service would entail creating a CR that would be managed by the OLM operator. There's no good way to know which is the primary CR associated with a Database operator for example.

Implementation Approaches & Existing Work

  • Appears no existing CLI tools exist
  • (from Evan, OLM lead)

Mostly this will be vendoring in OLM's apis. We are looking to place that in operator-framework/api, but for now they're in operator-framework/operator-lifecycle-manager. The dynamic forms in console are driven by the metadata available on the ClusterServiceVersion and the schemas of the CRDs owned by the operators.

  • (from Rob S, OLM PM)
    Some brainstorming...
  1. What type of service do you want to create?
  • api
  • database
  • ...
  1. What type of database?
    [...list of CR types from OLM with that category...]

[...grab descriptions from CSV...]
3. Enter required values
[...pull these from the schema with default values...]
4. Provide a name for your database
foobar
5. Wait for the service to deploy?
Yes
6. Creating the following resources:
[...match resource tab from Console...]

User Stories

@kadel
Copy link
Member

kadel commented Sep 24, 2019

What is the best way to list installed operators on the cluster?

@sbose78
Copy link
Member Author

sbose78 commented Sep 24, 2019

oc get csvs

@sspeiche sspeiche added the kind/epic An issue categorized as a high-level Epic. Needs to be scoped and broken down in 1+ stories/tasks label Sep 26, 2019
@sspeiche sspeiche added this to the backlog milestone Sep 26, 2019
@tmds
Copy link
Member

tmds commented Nov 6, 2019

Is odo service unusable until this gets resolved?

I've enabled the service catalog (following https://docs.openshift.com/container-platform/4.2/applications/service_brokers/installing-service-catalog.html).
There are no services:

> $ odo catalog list services
 ✗  no deployable services found

@kadel
Copy link
Member

kadel commented Nov 6, 2019

Is odo service unusable until this gets resolved?

I've enabled the service catalog (following https://docs.openshift.com/container-platform/4.2/applications/service_brokers/installing-service-catalog.html).
There are no services:

> $ odo catalog list services
 ✗  no deployable services found

Is odo service unusable until this gets resolved?
No, It should be useable, as long as you have a service catalog deployed on the cluster.

Can you try oc get clusterserviceclasses to validate that the ServiceCatalog is running on your cluster?

@tmds
Copy link
Member

tmds commented Nov 6, 2019

oc get clusterserviceclasses

$ oc get clusterserviceclasses
No resources found in default namespace.

@kadel kadel self-assigned this Nov 25, 2019
@kadel kadel assigned girishramnani and dharmit and unassigned kadel Nov 27, 2019
@kadel kadel added the estimated-size/XL (40-60) Rough sizing for Epics. About 3 sprints of work for a person label Nov 27, 2019
@girishramnani
Copy link
Contributor

girishramnani commented Dec 16, 2019

Broken this issue down into following issues in order -

@girishramnani
Copy link
Contributor

I feel there can be 2-3 more issues related to

  • parsing the validation spec to help the user
  • use the metadata provided in ClusterServiceVersion
  • confirming ansible and helm based operators also work

@sspeiche sspeiche modified the milestones: backlog, 1.2 Dec 17, 2019
@sspeiche sspeiche changed the title List & Provision Services from the in-cluster OperatorHub/Catalog List & Provision Services from the in-cluster installed operators (Dev Catalog) Jan 7, 2020
@kadel kadel added triage/needs-information Indicates an issue needs more information in order to work on it. and removed state/In Analysis labels Feb 14, 2020
@dharmit dharmit removed the triage/needs-information Indicates an issue needs more information in order to work on it. label Mar 11, 2020
@prietyc123
Copy link
Contributor

There is no point in keeping this issue for milestone 1.2, Hence moving it to milestone 1.3

@openshift-bot
Copy link

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 23, 2020
@girishramnani girishramnani removed their assignment Aug 5, 2020
@girishramnani girishramnani removed the estimated-size/XL (40-60) Rough sizing for Epics. About 3 sprints of work for a person label Aug 11, 2020
@girishramnani
Copy link
Contributor

We have a more updated Epic for this and hence removing this from the milestone in the interest of #2613

@girishramnani girishramnani removed this from the 2.0 milestone Aug 11, 2020
@rm3l rm3l added the v2 Issue or PR that applies to the v2 of odo label Jun 16, 2023
@rm3l rm3l added this to odo Project Jun 16, 2023
@rm3l rm3l moved this to Done ✅ in odo Project Jun 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/epic An issue categorized as a high-level Epic. Needs to be scoped and broken down in 1+ stories/tasks lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. v2 Issue or PR that applies to the v2 of odo
Projects
Archived in project
Development

No branches or pull requests