Skip to content

Commit

Permalink
fix: do not force check if servicemesh is set to managed in DSCI (red…
Browse files Browse the repository at this point in the history
…-hat-data-services#154)

* fix: do not force check if servicemesh is set to managed in DSCI

Signed-off-by: Wen Zhou <[email protected]>

* update: add supported value for serverless and servicemesh

- currently removed and unmanaged are the same logic

Signed-off-by: Wen Zhou <[email protected]>

* update: do not remove resources if it has label

Signed-off-by: Wen Zhou <[email protected]>

---------

Signed-off-by: Wen Zhou <[email protected]>
  • Loading branch information
zdtsw committed Dec 7, 2023
1 parent e58ec9a commit 3a672d4
Show file tree
Hide file tree
Showing 9 changed files with 14 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@ spec:
default: Managed
enum:
- Managed
- Unmanaged
- Removed
pattern: ^(Managed|Unmanaged|Force|Removed)$
type: string
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,10 @@ spec:
type: string
type: object
managementState:
default: Managed
default: Removed
enum:
- Managed
- Unmanaged
- Removed
pattern: ^(Managed|Unmanaged|Force|Removed)$
type: string
Expand Down
2 changes: 1 addition & 1 deletion components/kserve/kserve.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ func (k *Kserve) Cleanup(_ client.Client, instance *dsciv1.DSCInitializationSpec
func (k *Kserve) configureServerless(instance *dsciv1.DSCInitializationSpec) error {
if k.Serving.ManagementState == operatorv1.Managed {
if instance.ServiceMesh.ManagementState != operatorv1.Managed {
return fmt.Errorf("serviceMesh is not configured as Managaed in DSCI instance but required by KServe serving")
fmt.Println("ServiceMesh is not configured as Managed in DSCI instance")
}

serverlessInitializer := feature.NewFeaturesInitializer(instance, k.configureServerlessFeatures)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -266,6 +266,7 @@ spec:
default: Managed
enum:
- Managed
- Unmanaged
- Removed
pattern: ^(Managed|Unmanaged|Force|Removed)$
type: string
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,9 +116,10 @@ spec:
type: string
type: object
managementState:
default: Managed
default: Removed
enum:
- Managed
- Unmanaged
- Removed
pattern: ^(Managed|Unmanaged|Force|Removed)$
type: string
Expand Down
2 changes: 1 addition & 1 deletion infrastructure/v1/serverless_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import (
// ServingSpec specifies the configuration for the KNative Serving components and their
// bindings with the Service Mesh.
type ServingSpec struct {
// +kubebuilder:validation:Enum=Managed;Removed
// +kubebuilder:validation:Enum=Managed;Unmanaged;Removed
// +kubebuilder:default=Managed
ManagementState operatorv1.ManagementState `json:"managementState,omitempty"`
// Name specifies the name of the KNativeServing resource that is going to be
Expand Down
4 changes: 2 additions & 2 deletions infrastructure/v1/servicemesh_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import operatorv1 "github.com/openshift/api/operator/v1"

// ServiceMeshSpec configures Service Mesh.
type ServiceMeshSpec struct {
// +kubebuilder:validation:Enum=Managed;Removed
// +kubebuilder:default=Managed
// +kubebuilder:validation:Enum=Managed;Unmanaged;Removed
// +kubebuilder:default=Removed
ManagementState operatorv1.ManagementState `json:"managementState,omitempty"`
// ControlPlane holds configuration of Service Mesh used by Opendatahub.
ControlPlane ControlPlaneSpec `json:"controlPlane,omitempty"`
Expand Down
4 changes: 3 additions & 1 deletion pkg/deploy/deploy.go
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,9 @@ func manageResource(ctx context.Context, cli client.Client, obj *unstructured.Un
}

existingOwnerReferences := obj.GetOwnerReferences()
if existingOwnerReferences == nil {
selector := "app.opendatahub.io/" + componentName
// only removed the resource with our label applied, not the same name resource maually created by user
if existingOwnerReferences == nil && resourceLabels[selector] == "true" {
return cli.Delete(ctx, found)
} else if len(existingOwnerReferences) > 0 {
for _, owner := range existingOwnerReferences {
Expand Down
1 change: 1 addition & 0 deletions pkg/upgrade/upgrade.go
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ func CreateDefaultDSCI(cli client.Client, platform deploy.Platform, appNamespace
fmt.Printf("DSCInitialization resource already exists. It will not be updated with default DSCI.")
return nil
case len(instances.Items) == 0:
fmt.Printf("create default DSCI CR.")
err := cli.Create(context.TODO(), defaultDsci)
if err != nil {
return err
Expand Down

0 comments on commit 3a672d4

Please sign in to comment.