diff --git a/README.md b/README.md index a132e9d163e..66614286780 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,6 @@ and configure these applications. - [Usage](#usage) - [Prerequisites](#prerequisites) - [Installation](#installation) - - [API links](#api-links) - [Dev Preview](#dev-preview) - [Developer Guide](#developer-guide) - [Pre-requisites](#pre-requisites) @@ -22,11 +21,13 @@ and configure these applications. - [Build Image](#build-image) - [Deployment](#deployment) - [Test with customized manifests](#test-with-customized-manifests) + - [Update API docs](#update-api-docs) - [Example DSCInitialization](#example-dscinitialization) - [Example DataScienceCluster](#example-datasciencecluster) - [Run functional Tests](#run-functional-tests) - [Run e2e Tests](#run-e2e-tests) - [API Overview](#api-overview) + - [Component Integration](#component-integration) - [Troubleshooting](#troubleshooting) - [Upgrade testing](#upgrade-testing) @@ -38,38 +39,41 @@ If `single model serving configuration` is used or if `Kserve` component is used - [Service Mesh operator](https://github.com/Maistra/istio-operator) - [Serverless operator](https://github.com/openshift-knative/serverless-operator) -Additionally it enhances user-experience by providing a single sign on experience. +Additionally installing `Authorino operator` & `Service Mesh operator` enhances user-experience by providing a single sign on experience. + ### Installation -The latest version of operator can be installed from the `community-operators` catalog on `OperatorHub`. It can also be build +- The latest version of operator can be installed from the `community-operators` catalog on `OperatorHub`. + + ![ODH operator in OperatorHub](docs/images/OperatorHub%20ODH%20Operator.png) + + Please note that the latest releases are made in the `Fast` channel. + +- It can also be build and installed from source manually, see the Developer guide for further instructions. -1. Subscribe to operator by creating following subscription - - ```console - cat < -e E2E_TEST_FLAGS="--skip-deleti Please refer to [api documentation](docs/api-overview.md) +### Component Integration + +Please refer to [components docs](components/README.md) + ### Troubleshooting Please refer to [troubleshooting documentation](docs/troubleshooting.md) diff --git a/components/README.md b/components/README.md index 962fb3d324d..851b0285e04 100644 --- a/components/README.md +++ b/components/README.md @@ -10,7 +10,7 @@ To ensure a component is integrated seamlessly in the operator, follow the steps ### Add Component to DataScienceCluster API spec DataScienceCluster CRD is responsible for defining the component fields and exposing them to end users. -Add your component to it's [api spec](https://github.com/opendatahub-io/opendatahub-operator/blob/main/apis/datasciencecluster/v1/datasciencecluster_types.go#L40): +Add your component to it's [api spec](../docs/api-overview.md#datascienceclusterspec): ```go type Components struct { @@ -30,15 +30,15 @@ can be found [here](https://github.com/opendatahub-io/opendatahub-operator/tree/ - Implement [interface](https://github.com/opendatahub-io/opendatahub-operator/blob/main/components/component.go#L15) methods according to your component ```go - type ComponentInterface interface { - ReconcileComponent(cli client.Client, owner metav1.Object, DSCISpec *dsci.DSCInitializationSpec) error - Cleanup(cli client.Client, DSCISpec *dsci.DSCInitializationSpec) error - GetComponentName() string - GetManagementState() operatorv1.ManagementState - SetImageParamsMap(imageMap map[string]string) map[string]string - UpdatePrometheusConfig(cli client.Client, enable bool, component string) error - WaitForDeploymentAvailable(ctx context.Context, r *rest.Config, c string, n string, i int, t int) error - } + type ComponentInterface interface { + ReconcileComponent(ctx context.Context, cli client.Client, resConf *rest.Config, owner metav1.Object, DSCISpec *dsciv1.DSCInitializationSpec, currentComponentStatus bool) error + Cleanup(cli client.Client, DSCISpec *dsciv1.DSCInitializationSpec) error + GetComponentName() string + GetManagementState() operatorv1.ManagementState + SetImageParamsMap(imageMap map[string]string) map[string]string + OverrideManifests(platform string) error + UpdatePrometheusConfig(cli client.Client, enable bool, component string) error +} ``` ### Add reconcile and Events diff --git a/crd-ref-docs.config.yaml b/crd-ref-docs.config.yaml index 17c4a148cda..b92d9923060 100644 --- a/crd-ref-docs.config.yaml +++ b/crd-ref-docs.config.yaml @@ -1,9 +1,9 @@ processor: # RE2 regular expressions describing types that should be excluded from the generated documentation. + ignoreGroupVersions: + - "features.opendatahub.io/v1" ignoreTypes: - - "(DataScienceCluster|DSCInitialization|FeatureTracker)List$" - # RE2 regular expressions describing type fields that should be excluded from the generated documentation. - + - "(DataScienceCluster|DSCInitialization)List$" render: # Version of Kubernetes to use when generating links to Kubernetes API documentation. kubernetesVersion: 1.22 diff --git a/docs/Dev-Preview.md b/docs/Dev-Preview.md index b817b5546f8..09cf1fdb572 100644 --- a/docs/Dev-Preview.md +++ b/docs/Dev-Preview.md @@ -93,14 +93,24 @@ spec: managementState: Managed kserve: managementState: Managed + serving: + ingressGateway: + certificate: + type: SelfSigned + managementState: Managed + name: knative-serving + kueue: + managementState: Removed modelmeshserving: + managementState: Managed + modelregistry: managementState: Removed ray: managementState: Removed - workbenches: - managementState: Managed trustyai: managementState: Managed + workbenches: + managementState: Managed EOF ``` diff --git a/docs/api-overview.md b/docs/api-overview.md index 6f88e060784..e2b0441cce3 100644 --- a/docs/api-overview.md +++ b/docs/api-overview.md @@ -3,7 +3,6 @@ ## Packages - [datasciencecluster.opendatahub.io/v1](#datascienceclusteropendatahubiov1) - [dscinitialization.opendatahub.io/v1](#dscinitializationopendatahubiov1) -- [features.opendatahub.io/v1](#featuresopendatahubiov1) ## datasciencecluster.opendatahub.io/v1 @@ -197,89 +196,3 @@ _Appears in:_ | `customCABundle` _string_ | A custom CA bundle that will be available for all components in the Data Science Cluster(DSC). This bundle will be stored in odh-trusted-ca-bundle ConfigMap .data.odh-ca-bundle.crt . | - -## features.opendatahub.io/v1 - -Package v1 contains API Schema definitions for the datasciencecluster v1 API group - -### Resource Types -- [FeatureTracker](#featuretracker) - - - - - -#### FeatureTracker - - - -FeatureTracker represents a cluster-scoped resource in the Data Science Cluster, specifically designed for monitoring and managing objects created via the internal Features API. This resource serves a crucial role in cross-namespace resource management, acting as an owner reference for various resources. The primary purpose of the FeatureTracker is to enable efficient garbage collection by Kubernetes. This is essential for ensuring that resources are automatically cleaned up and reclaimed when they are no longer required. - - - -| Field | Description | -| --- | --- | -| `apiVersion` _string_ | `features.opendatahub.io/v1` -| `kind` _string_ | `FeatureTracker` -| `kind` _string_ | Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | -| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | -| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | -| `spec` _[FeatureTrackerSpec](#featuretrackerspec)_ | | -| `status` _[FeatureTrackerStatus](#featuretrackerstatus)_ | | - - -#### FeatureTrackerSpec - - - -FeatureTrackerSpec defines the desired state of FeatureTracker. - -_Appears in:_ -- [FeatureTracker](#featuretracker) - -| Field | Description | -| --- | --- | -| `source` _[Source](#source)_ | | -| `appNamespace` _string_ | | - - -#### FeatureTrackerStatus - - - -FeatureTrackerStatus defines the observed state of FeatureTracker. - -_Appears in:_ -- [FeatureTracker](#featuretracker) - -| Field | Description | -| --- | --- | -| `conditions` _[Condition](#condition)_ | | - - -#### OwnerType - -_Underlying type:_ _string_ - - - -_Appears in:_ -- [Source](#source) - - - -#### Source - - - -Source describes the type of object that created the related Feature to this FeatureTracker. - -_Appears in:_ -- [FeatureTrackerSpec](#featuretrackerspec) - -| Field | Description | -| --- | --- | -| `type` _[OwnerType](#ownertype)_ | | -| `name` _string_ | | - - diff --git a/docs/images/OperatorHub ODH Operator.png b/docs/images/OperatorHub ODH Operator.png new file mode 100644 index 00000000000..cecf8db8f77 Binary files /dev/null and b/docs/images/OperatorHub ODH Operator.png differ