diff --git a/bundle/manifests/opendatahub-operator.clusterserviceversion.yaml b/bundle/manifests/opendatahub-operator.clusterserviceversion.yaml index 81b13c83f14..b7bdec6808b 100644 --- a/bundle/manifests/opendatahub-operator.clusterserviceversion.yaml +++ b/bundle/manifests/opendatahub-operator.clusterserviceversion.yaml @@ -1091,6 +1091,8 @@ spec: fieldPath: metadata.namespace - name: DEFAULT_MANIFESTS_PATH value: /opt/manifests + - name: ODH_PLATFORM_TYPE + value: OpenDataHub image: REPLACE_IMAGE:latest imagePullPolicy: Always livenessProbe: diff --git a/config/manager/manager.yaml b/config/manager/manager.yaml index 0aadbcc2e89..bff26ae5022 100644 --- a/config/manager/manager.yaml +++ b/config/manager/manager.yaml @@ -46,6 +46,8 @@ spec: fieldPath: metadata.namespace - name: DEFAULT_MANIFESTS_PATH value: /opt/manifests + - name: ODH_PLATFORM_TYPE + value: OpenDataHub args: - --leader-elect - --operator-name=opendatahub diff --git a/pkg/cluster/cluster_config.go b/pkg/cluster/cluster_config.go index 8a09e3450cc..22a3b6b574e 100644 --- a/pkg/cluster/cluster_config.go +++ b/pkg/cluster/cluster_config.go @@ -168,15 +168,21 @@ func detectManagedRHODS(ctx context.Context, cli client.Client) (Platform, error } func getPlatform(ctx context.Context, cli client.Client) (Platform, error) { - // First check if its addon installation to return 'ManagedRhods, nil' - if platform, err := detectManagedRHODS(ctx, cli); err != nil { - return Unknown, err - } else if platform == ManagedRhods { + switch os.Getenv("ODH_PLATFORM_TYPE") { + case "OpenDataHub", "": + return OpenDataHub, nil + case "ManagedRHOAI": return ManagedRhods, nil + case "SelfManagedRHOAI": + return SelfManagedRhods, nil + default: // fall back to detect platform if ODH_PLATFORM_TYPE env is not provided + if platform, err := detectManagedRHODS(ctx, cli); err != nil { + return Unknown, err + } else if platform == ManagedRhods { + return ManagedRhods, nil + } + return detectSelfManaged(ctx, cli) } - - // check and return whether ODH or self-managed platform - return detectSelfManaged(ctx, cli) } func getRelease(ctx context.Context, cli client.Client) (Release, error) { @@ -197,6 +203,7 @@ func getRelease(ctx context.Context, cli client.Client) (Release, error) { if os.Getenv("CI") == "true" { return initRelease, nil } + // Set Version // Get watchNamespace operatorNamespace, err := GetOperatorNamespace()