From 29cadbe87eef233e40da1b649ec9122edc9a5001 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 13 Apr 2026 19:34:10 +0530 Subject: [PATCH 01/45] [minor] Add RHOAI installation support for Ai service --- .../116-ibm-rhoai/Chart.yaml | 11 ++ instance-applications/116-ibm-rhoai/README.md | 3 + .../01-rhoai-serverless-subscription.yaml | 31 +++++ .../02-rhoai-servicemesh-operator-sa.yaml | 23 ++++ .../03-rhoai-authorino-operator.yaml | 13 ++ .../04-rhoai-operator-subscription.yaml | 31 +++++ .../templates/05-rhoai-namespace.yaml | 7 ++ .../templates/06-rhoai-dsc-init.yaml | 37 ++++++ .../07-rhoai-data-science-cluster.yaml | 31 +++++ .../templates/08-rhoai-istio-auth.yaml | 29 +++++ .../templates/09-rhoai-networkpolicy.yaml | 18 +++ .../116-ibm-rhoai/values.yaml | 67 ++++++++++ .../templates/031-ibm-rhoai-app.yaml | 115 ++++++++++++++++++ .../ibm-aiservice-instance-root/values.yaml | 58 +++++++++ 14 files changed, 474 insertions(+) create mode 100644 instance-applications/116-ibm-rhoai/Chart.yaml create mode 100644 instance-applications/116-ibm-rhoai/README.md create mode 100644 instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml create mode 100644 instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml create mode 100644 instance-applications/116-ibm-rhoai/values.yaml create mode 100644 root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml diff --git a/instance-applications/116-ibm-rhoai/Chart.yaml b/instance-applications/116-ibm-rhoai/Chart.yaml new file mode 100644 index 000000000..006105617 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/Chart.yaml @@ -0,0 +1,11 @@ +apiVersion: v2 +name: ibm-rhoai +description: IBM RHOAI (Red Hat OpenShift AI) +type: application +version: 1.0.0 + +dependencies: +- name: junitreporter + version: 1.0.0 + repository: "file://../../sub-charts/junitreporter/" + condition: junitreporter.devops_mongo_uri != "" diff --git a/instance-applications/116-ibm-rhoai/README.md b/instance-applications/116-ibm-rhoai/README.md new file mode 100644 index 000000000..006435495 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/README.md @@ -0,0 +1,3 @@ +IBM RHOAI (Red Hat OpenShift AI) +=============================================================================== +Deploy and configure Red Hat OpenShift AI with configurable version diff --git a/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml b/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml new file mode 100644 index 000000000..08780ebf8 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml @@ -0,0 +1,31 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.serverless_namespace}} + annotations: + argocd.argoproj.io/sync-wave: "117" + +--- +apiVersion: operators.coreos.com/v1 +kind: OperatorGroup +metadata: + name: operatorgroup + namespace: {{ .Values.serverless_namespace}} + annotations: + argocd.argoproj.io/sync-wave: "117" + +--- +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: {{ .Values.serverless_operator_name}} + namespace: {{ .Values.serverless_namespace}} + annotations: + argocd.argoproj.io/sync-wave: "118" +spec: + channel: stable + installPlanApproval: Automatic + name: {{ .Values.serverless_operator_name}} + source: {{ .Values.serverless_operator_source}} + sourceNamespace: {{ .Values.serverless_operator_sourceNamespace}} diff --git a/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml b/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml new file mode 100644 index 000000000..381580940 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml @@ -0,0 +1,23 @@ +--- +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: servicemeshoperator + namespace: openshift-operators + annotations: + argocd.argoproj.io/sync-wave: "118" +spec: + channel: stable + installPlanApproval: Automatic + name: servicemeshoperator + source: redhat-operators + sourceNamespace: openshift-marketplace + +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + name: istio-operator + namespace: openshift-operators + annotations: + argocd.argoproj.io/sync-wave: "119" diff --git a/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml b/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml new file mode 100644 index 000000000..862ee7344 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml @@ -0,0 +1,13 @@ +--- +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: authorino-operator + namespace: openshift-operators + annotations: + argocd.argoproj.io/sync-wave: "121" +spec: + channel: stable + name: authorino-operator + source: community-operators + sourceNamespace: openshift-marketplace diff --git a/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml b/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml new file mode 100644 index 000000000..b4ccb06af --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml @@ -0,0 +1,31 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.rhoai_namespace }} + annotations: + argocd.argoproj.io/sync-wave: "125" +--- +apiVersion: operators.coreos.com/v1 +kind: OperatorGroup +metadata: + name: {{ .Values.rhoai_OperatorGroup_name}} + namespace: {{ .Values.rhoai_namespace}} + annotations: + argocd.argoproj.io/sync-wave: "126" + +--- +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: {{ .Values.rhoai_name}} + namespace: {{ .Values.rhoai_namespace}} + annotations: + argocd.argoproj.io/sync-wave: "127" +spec: + channel: {{ .Values.rhoai_channel}} + installPlanApproval: {{ .Values.rhoai_installPlanApproval}} + name: {{ .Values.rhoai_name}} + source: {{ .Values.rhoai_source}} + sourceNamespace: {{ .Values.rhoai_sourceNamespace}} + startingCSV: {{ .Values.rhoai_operator_version }} diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml new file mode 100644 index 000000000..366793f96 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -0,0 +1,7 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: "{{ .Values.aiservice_namespace }}" + annotations: + argocd.argoproj.io/sync-wave: "128" diff --git a/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml b/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml new file mode 100644 index 000000000..8e61d4993 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml @@ -0,0 +1,37 @@ +--- +apiVersion: dscinitialization.opendatahub.io/v1 +kind: DSCInitialization +metadata: + annotations: + argocd.argoproj.io/sync-wave: "130" + argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true + finalizers: + - dscinitialization.opendatahub.io/finalizer + labels: + app.kubernetes.io/created-by: rhods-operator + app.kubernetes.io/instance: default + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: dscinitialization + app.kubernetes.io/part-of: rhods-operator + name: default-dsci +spec: + applicationsNamespace: "{{ .Values.rhoai_applications_namespace }}" + monitoring: + managementState: Managed + namespace: "{{ .Values.rhoai_monitoring_namespace }}" + serviceMesh: + auth: + audiences: + - 'https://kubernetes.default.svc' + controlPlane: + metricsCollection: Istio + name: data-science-smcp + namespace: istio-system +{{- if eq .Values.aiservice_rhoai_model_deployment_type "raw" }} + managementState: Removed +{{- else }} + managementState: Managed +{{- end }} + trustedCABundle: + customCABundle: '' + managementState: Managed diff --git a/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml b/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml new file mode 100644 index 000000000..426c20bd8 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml @@ -0,0 +1,31 @@ +--- +kind: DataScienceCluster +apiVersion: datasciencecluster.opendatahub.io/v1 +metadata: + annotations: + argocd.argoproj.io/sync-wave: "131" + argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true + labels: + app.kubernetes.io/created-by: rhods-operator + app.kubernetes.io/instance: default + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: datasciencecluster + app.kubernetes.io/part-of: rhods-operator + name: default-dsc +spec: + components: + datasciencepipelines: + managementState: Removed + kserve: + managementState: Managed + serving: + name: knative-serving + ingressGateway: + certificate: + type: SelfSigned +{{- if eq .Values.aiservice_rhoai_model_deployment_type "raw" }} + managementState: Removed + defaultDeploymentMode: RawDeployment +{{- else }} + managementState: Managed +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml b/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml new file mode 100644 index 000000000..a2a8a0a33 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml @@ -0,0 +1,29 @@ +--- +apiVersion: security.istio.io/v1beta1 +kind: PeerAuthentication +metadata: + name: default + namespace: {{ .Values.rhoai_applications_namespace }} + annotations: + argocd.argoproj.io/sync-wave: "132" + argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true +spec: + mtls: + mode: PERMISSIVE +--- +apiVersion: networking.istio.io/v1beta1 +kind: DestinationRule +metadata: + name: ds-pipeline-instance + namespace: {{ .Values.rhoai_applications_namespace }} + annotations: + argocd.argoproj.io/sync-wave: "133" + argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true +spec: + host: ds-pipeline-instance.{{ .Values.rhoai_applications_namespace }}.svc.cluster.local + trafficPolicy: + portLevelSettings: + - port: + number: 8888 + tls: + mode: ISTIO_MUTUAL diff --git a/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml b/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml new file mode 100644 index 000000000..2f2cfd35b --- /dev/null +++ b/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml @@ -0,0 +1,18 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: NetworkPolicy +metadata: + annotations: + argocd.argoproj.io/sync-wave: "135" + argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true + name: allow-rhods-model-controller + namespace: {{ .Values.rhoai_applications_namespace }} +spec: + podSelector: + matchLabels: + control-plane: odh-model-controller + ingress: + - from: + - namespaceSelector: {} + policyTypes: + - Ingress diff --git a/instance-applications/116-ibm-rhoai/values.yaml b/instance-applications/116-ibm-rhoai/values.yaml new file mode 100644 index 000000000..3bc6bd384 --- /dev/null +++ b/instance-applications/116-ibm-rhoai/values.yaml @@ -0,0 +1,67 @@ +--- +openshift_namespace: "openshift-operators" +rhoai_pipeline_channel: "latest" +rhoai_pipeline_installplan: "Automatic" +rhoai_namespace: "redhat-ods-operator" +rhoai_applications_namespace: "redhat-ods-applications" +rhoai_monitoring_namespace: "redhat-ods-monitoring" +service_mesh_namespace: "openshift-operators" +service_mesh_channel: "stable" +service_mesh_catalog_source: "redhat-operators" +service_mesh_sourceNamespace: "openshift-marketplace" +serverless_channel: "stable" +authorino_catalog_source: "community-operators" +rhoai_channel: "stable" +rhoai_catalog_source: "redhat-operators" +rhoai_operator_version: "rhods-operator.v2.19.0" + +#RHOAI_Pipeline_operator +rhoai_pipeline_name: "openshift-pipelines-operator" +rhoai_pipeline_namespace: "openshift-operators" +rhoai_pipeline_operatorName: "openshift-pipelines-operator-rh" +rhoai_pipeline_source: "redhat-operators" +rhoai_pipeline_sourceNamespace: "openshift-marketplace" + +#Serverless Operator +serverless_namespace: "openshift-serverless" +serverless_operator_name: "serverless-operator" +serverless_operator_source: "redhat-operators" +serverless_operator_sourceNamespace: "openshift-marketplace" + +#RHOAI Operator +rhoai_OperatorGroup_name: "redhat-ods-operator-group" +rhoai_name: "rhods-operator" +rhoai_installPlanApproval: "Manual" +rhoai_source: "redhat-operators" +rhoai_sourceNamespace: "openshift-marketplace" + +namespace: "openshift-operators" +channel: "latest" +operatorName: "openshift-pipelines-operator-rh" +source: "redhat-operators" +sourceNamespace: "openshift-marketplace" + +aiservice_namespace: "mas_sremat_aiservice" +pull_secret_name: "ibm_entitlement" + +# Storage vars +mas_aiservice_storage_provider: "aws" +mas_aiservice_storage_accesskey: "aiservice_storage_accesskey" +mas_aiservice_storage_secretkey: "aiservice_storage_secretkey" +mas_aiservice_storage_host: "mas_aiservice_storage_host" +mas_aiservice_storage_port: "mas_aiservice_storage_port" +mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" +mas_aiservice_storage_region: "mas_aiservice_storage_region" + +# MariaDB +mas_aiservice_db_host: "mas_aiservice_db_host" +mas_aiservice_db_port: "mas_aiservice_db_port" +mas_aiservice_db_user: "mas_aiservice_db_user" +mas_aiservice_db_database: "mas_aiservice_db_database" + +mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" +mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" +mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" + +mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" +primary_storage_class: "defaultStorageClasses" diff --git a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml new file mode 100644 index 000000000..e554b1116 --- /dev/null +++ b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml @@ -0,0 +1,115 @@ +{{- if not (empty .Values.ibm_rhoai) }} +--- +# IBM Maximo RHOAI (Red Hat OpenShift AI) +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: rhoai.{{ .Values.cluster.id }}.{{ .Values.instance.id }} + namespace: {{ .Values.argo.namespace }} + labels: + environment: '{{ .Values.account.id }}' + region: '{{ .Values.region.id }}' + cluster: '{{ .Values.cluster.id }}' + instance: '{{ .Values.instance.id }}' + annotations: + argocd.argoproj.io/sync-wave: "031" + healthCheckTimeout: "1800" + {{- if and .Values.notifications .Values.notifications.slack_channel_id }} + notifications.argoproj.io/subscribe.on-sync-failed.workspace1: {{ .Values.notifications.slack_channel_id }} + notifications.argoproj.io/subscribe.on-sync-succeeded.workspace1: {{ .Values.notifications.slack_channel_id }} + {{- end }} + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: "{{ .Values.argo.projects.apps }}" + destination: + server: {{ .Values.cluster.url }} + namespace: "{{ .Values.ibm_rhoai.openshift_namespace }}" + source: + repoURL: "{{ .Values.source.repo_url }}" + path: instance-applications/116-ibm-rhoai + targetRevision: "{{ .Values.source.revision }}" + plugin: + name: {{ .Values.avp.name }} + env: + - name: {{ .Values.avp.values_varname }} + value: | + openshift_namespace: "{{ .Values.ibm_rhoai.openshift_namespace }}" + rhoai_pipeline_name: "{{ .Values.ibm_rhoai.rhoai_pipeline_name }}" + rhoai_pipeline_namespace: "{{ .Values.ibm_rhoai.rhoai_pipeline_namespace }}" + rhoai_pipeline_operatorName: "{{ .Values.ibm_rhoai.rhoai_pipeline_operatorName }}" + rhoai_pipeline_source: "{{ .Values.ibm_rhoai.rhoai_pipeline_source }}" + rhoai_pipeline_sourceNamespace: "{{ .Values.ibm_rhoai.rhoai_pipeline_sourceNamespace }}" + serverless_namespace: "{{ .Values.ibm_rhoai.serverless_namespace }}" + serverless_operator_name: "{{ .Values.ibm_rhoai.serverless_operator_name }}" + serverless_operator_source: "{{ .Values.ibm_rhoai.serverless_operator_source }}" + serverless_operator_sourceNamespace: "{{ .Values.ibm_rhoai.serverless_operator_sourceNamespace }}" + rhoai_OperatorGroup_name: "{{ .Values.ibm_rhoai.rhoai_OperatorGroup_name }}" + rhoai_name: "{{ .Values.ibm_rhoai.rhoai_name }}" + rhoai_channel: "{{ .Values.ibm_rhoai.rhoai_channel }}" + rhoai_namespace: "{{ .Values.ibm_rhoai.rhoai_namespace }}" + rhoai_applications_namespace: "{{ .Values.ibm_rhoai.rhoai_applications_namespace }}" + rhoai_monitoring_namespace: "{{ .Values.ibm_rhoai.rhoai_monitoring_namespace }}" + rhoai_installPlanApproval: "{{ .Values.ibm_rhoai.rhoai_installPlanApproval }}" + rhoai_source: "{{ .Values.ibm_rhoai.rhoai_source }}" + rhoai_sourceNamespace: "{{ .Values.ibm_rhoai.rhoai_sourceNamespace }}" + + rhoai_pipeline_channel: "{{ .Values.ibm_rhoai.rhoai_pipeline_channel }}" + rhoai_pipeline_installplan: "{{ .Values.ibm_rhoai.rhoai_pipeline_installplan }}" + service_mesh_namespace: "{{ .Values.ibm_rhoai.service_mesh_namespace }}" + service_mesh_channel: "{{ .Values.ibm_rhoai.service_mesh_channel }}" + service_mesh_catalog_source: "{{ .Values.ibm_rhoai.service_mesh_catalog_source }}" + serverless_channel: "{{ .Values.ibm_rhoai.serverless_channel }}" + authorino_catalog_source: "{{ .Values.ibm_rhoai.authorino_catalog_source }}" + rhoai_catalog_source: "{{ .Values.ibm_rhoai.rhoai_catalog_source }}" + rhoai_operator_version: "{{ .Values.ibm_rhoai.rhoai_operator_version }}" + aiservice_namespace: "{{ .Values.ibm_rhoai.aiservice_namespace }}" + pull_secret_name: "{{ .Values.ibm_rhoai.pull_secret_name }}" + mas_aiservice_storage_provider: "{{ .Values.ibm_rhoai.mas_aiservice_storage_provider }}" + mas_aiservice_storage_accesskey: "{{ .Values.ibm_rhoai.mas_aiservice_storage_accesskey }}" + mas_aiservice_storage_secretkey: "{{ .Values.ibm_rhoai.mas_aiservice_storage_secretkey }}" + mas_aiservice_storage_host: "{{ .Values.ibm_rhoai.mas_aiservice_storage_host }}" + mas_aiservice_storage_port: "{{ .Values.ibm_rhoai.mas_aiservice_storage_port }}" + mas_aiservice_storage_ssl: "{{ .Values.ibm_rhoai.mas_aiservice_storage_ssl }}" + mas_aiservice_storage_region: "{{ .Values.ibm_rhoai.mas_aiservice_storage_region }}" + mas_aiservice_db_host: "{{ .Values.ibm_rhoai.mas_aiservice_db_host }}" + mas_aiservice_db_port: "{{ .Values.ibm_rhoai.mas_aiservice_db_port }}" + mas_aiservice_db_user: "{{ .Values.ibm_rhoai.mas_aiservice_db_user }}" + mas_aiservice_db_database: "{{ .Values.ibm_rhoai.mas_aiservice_db_database }}" + mas_aiservice_db_secret_key: "{{ .Values.ibm_rhoai.mas_aiservice_db_secret_key }}" + mas_aiservice_db_secret_name: "{{ .Values.ibm_rhoai.mas_aiservice_db_secret_name }}" + mas_aiservice_db_secret_value: "{{ .Values.ibm_rhoai.mas_aiservice_db_secret_value }}" + mas_aiservice_storage_pipelines_bucket: "{{ .Values.ibm_rhoai.mas_aiservice_storage_pipelines_bucket }}" + primary_storage_class: "{{ .Values.ibm_rhoai.primary_storage_class }}" + aiservice_rhoai_model_deployment_type: "{{ .Values.aiservice_rhoai_model_deployment_type }}" + {{- if .Values.custom_labels }} + custom_labels: {{ .Values.custom_labels | toYaml | nindent 14 }} + {{- end }} + junitreporter: + reporter_name: "ibm-rhoai-{{ .Values.instance.id }}" + cluster_id: "{{ .Values.cluster.id }}" + devops_mongo_uri: "{{ .Values.devops.mongo_uri }}" + devops_build_number: "{{ .Values.devops.build_number }}" + gitops_version: "{{ .Values.source.revision }}" + - name: ARGOCD_APP_NAME + value: rhoai + {{- if not (empty .Values.avp.secret) }} + - name: AVP_SECRET + value: {{ .Values.avp.secret }} + {{- end }} + syncPolicy: + automated: + {{- if .Values.auto_delete }} + prune: true + {{- end }} + selfHeal: true + retry: + limit: 20 + syncOptions: + - CreateNamespace=true +{{- if .Values.custom_labels }} + managedNamespaceMetadata: + labels: +{{ .Values.custom_labels | toYaml | indent 8 }} +{{- end }} +{{- end }} diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index d693b55df..c95495056 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -121,6 +121,64 @@ ibm_odh: mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" primary_storage_class: "nfs-client" +ibm_rhoai: + openshift_namespace: "openshift-operators" + rhoai_pipeline_channel: "latest" + rhoai_pipeline_installplan: "Automatic" + rhoai_namespace: "redhat-ods-operator" + rhoai_applications_namespace: "redhat-ods-applications" + rhoai_monitoring_namespace: "redhat-ods-monitoring" + service_mesh_namespace: "openshift-operators" + service_mesh_channel: "stable" + service_mesh_catalog_source: "redhat-operators" + serverless_channel: "stable" + authorino_catalog_source: "community-operators" + rhoai_channel: "stable" + rhoai_catalog_source: "redhat-operators" + rhoai_operator_version: "rhods-operator.v2.19.0" + #RHOAI_Pipeline_operator + rhoai_pipeline_name: "openshift-pipelines-operator" + rhoai_pipeline_namespace: "openshift-operators" + rhoai_pipeline_operatorName: "openshift-pipelines-operator-rh" + rhoai_pipeline_source: "redhat-operators" + rhoai_pipeline_sourceNamespace: "openshift-marketplace" + + #Serverless Operator + serverless_namespace: "openshift-serverless" + serverless_operator_name: "serverless-operator" + serverless_operator_source: "redhat-operators" + serverless_operator_sourceNamespace: "openshift-marketplace" + + #RHOAI Operator + rhoai_OperatorGroup_name: "redhat-ods-operator-group" + rhoai_name: "rhods-operator" + rhoai_installPlanApproval: "Manual" + rhoai_source: "redhat-operators" + rhoai_sourceNamespace: "openshift-marketplace" + + aiservice_namespace: "mas_sremat_aiservice" + pull_secret_name: "ibm_entitlement" + mas_aiservice_storage_provider: "minio" + mas_aiservice_storage_accesskey: "" + mas_aiservice_storage_secretkey: "" + mas_aiservice_storage_host: "mas_aiservice_storage_host" + mas_aiservice_storage_port: "mas_aiservice_storage_port" + mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" + mas_aiservice_storage_region: "mas_aiservice_storage_region" + + # MariaDB + mas_aiservice_db_host: "mas_aiservice_db_host" + mas_aiservice_db_port: "mas_aiservice_db_port" + mas_aiservice_db_user: "mas_aiservice_db_user" + mas_aiservice_db_database: "mas_aiservice_db_database" + + mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" + mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" + mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" + + mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" + primary_storage_class: "nfs-client" + ibm_kmodel: aiservice_instance_id: "aiservice_instance_id" From a387ea8de3da1f93bb04043806f2dbdbe082e8ae Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Thu, 16 Apr 2026 11:42:58 +0530 Subject: [PATCH 02/45] [patch] update version and remove MariaDB --- instance-applications/116-ibm-rhoai/values.yaml | 13 +------------ .../templates/031-ibm-rhoai-app.yaml | 7 ------- .../ibm-aiservice-instance-root/values.yaml | 13 +------------ 3 files changed, 2 insertions(+), 31 deletions(-) diff --git a/instance-applications/116-ibm-rhoai/values.yaml b/instance-applications/116-ibm-rhoai/values.yaml index 3bc6bd384..0fe2339be 100644 --- a/instance-applications/116-ibm-rhoai/values.yaml +++ b/instance-applications/116-ibm-rhoai/values.yaml @@ -13,7 +13,7 @@ serverless_channel: "stable" authorino_catalog_source: "community-operators" rhoai_channel: "stable" rhoai_catalog_source: "redhat-operators" -rhoai_operator_version: "rhods-operator.v2.19.0" +rhoai_operator_version: "rhods-operator.v2.25.3" #RHOAI_Pipeline_operator rhoai_pipeline_name: "openshift-pipelines-operator" @@ -52,16 +52,5 @@ mas_aiservice_storage_host: "mas_aiservice_storage_host" mas_aiservice_storage_port: "mas_aiservice_storage_port" mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" mas_aiservice_storage_region: "mas_aiservice_storage_region" - -# MariaDB -mas_aiservice_db_host: "mas_aiservice_db_host" -mas_aiservice_db_port: "mas_aiservice_db_port" -mas_aiservice_db_user: "mas_aiservice_db_user" -mas_aiservice_db_database: "mas_aiservice_db_database" - -mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" -mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" -mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" - mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" primary_storage_class: "defaultStorageClasses" diff --git a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml index e554b1116..766155076 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml @@ -72,13 +72,6 @@ spec: mas_aiservice_storage_port: "{{ .Values.ibm_rhoai.mas_aiservice_storage_port }}" mas_aiservice_storage_ssl: "{{ .Values.ibm_rhoai.mas_aiservice_storage_ssl }}" mas_aiservice_storage_region: "{{ .Values.ibm_rhoai.mas_aiservice_storage_region }}" - mas_aiservice_db_host: "{{ .Values.ibm_rhoai.mas_aiservice_db_host }}" - mas_aiservice_db_port: "{{ .Values.ibm_rhoai.mas_aiservice_db_port }}" - mas_aiservice_db_user: "{{ .Values.ibm_rhoai.mas_aiservice_db_user }}" - mas_aiservice_db_database: "{{ .Values.ibm_rhoai.mas_aiservice_db_database }}" - mas_aiservice_db_secret_key: "{{ .Values.ibm_rhoai.mas_aiservice_db_secret_key }}" - mas_aiservice_db_secret_name: "{{ .Values.ibm_rhoai.mas_aiservice_db_secret_name }}" - mas_aiservice_db_secret_value: "{{ .Values.ibm_rhoai.mas_aiservice_db_secret_value }}" mas_aiservice_storage_pipelines_bucket: "{{ .Values.ibm_rhoai.mas_aiservice_storage_pipelines_bucket }}" primary_storage_class: "{{ .Values.ibm_rhoai.primary_storage_class }}" aiservice_rhoai_model_deployment_type: "{{ .Values.aiservice_rhoai_model_deployment_type }}" diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index c95495056..91529bdac 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -135,7 +135,7 @@ ibm_rhoai: authorino_catalog_source: "community-operators" rhoai_channel: "stable" rhoai_catalog_source: "redhat-operators" - rhoai_operator_version: "rhods-operator.v2.19.0" + rhoai_operator_version: "rhods-operator.v2.25.3" #RHOAI_Pipeline_operator rhoai_pipeline_name: "openshift-pipelines-operator" rhoai_pipeline_namespace: "openshift-operators" @@ -165,17 +165,6 @@ ibm_rhoai: mas_aiservice_storage_port: "mas_aiservice_storage_port" mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" mas_aiservice_storage_region: "mas_aiservice_storage_region" - - # MariaDB - mas_aiservice_db_host: "mas_aiservice_db_host" - mas_aiservice_db_port: "mas_aiservice_db_port" - mas_aiservice_db_user: "mas_aiservice_db_user" - mas_aiservice_db_database: "mas_aiservice_db_database" - - mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" - mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" - mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" - mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" primary_storage_class: "nfs-client" From 3b89d10463d672cd8096004c61494a882355b623 Mon Sep 17 00:00:00 2001 From: KAROL CZARNECKI Date: Thu, 16 Apr 2026 14:11:34 +0100 Subject: [PATCH 03/45] [patch] disable odh part --- .../ibm-aiservice-instance-root/values.yaml | 84 +++++++++---------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 91529bdac..746c8d5b4 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,48 +65,48 @@ ibm_minio: ibm_odh: - openshift_namespace: "openshift-operators" - odh_pipeline_channel: "latest" - odh_pipeline_installplan: "Automatic" - service_mesh_namespace: "openshift-serverless" - service_mesh_channel: "stable" - service_mesh_catalog_source: "redhat-operators" - serverless_channel: "stable" - authorino_catalog_source: "community-operators" - odh_channel: "fast" - odh_catalog_source: "community-operators" - odh_operator_version: "opendatahub-operator.v2.11.1" - #Odh_Pipeline_operator - odh_pipeline_name: "openshift-pipelines-operator" - odh_pipeline_namespace: "openshift-operators" - odh_pipeline_operatorName: "openshift-pipelines-operator-rh" - odh_pipeline_source: "redhat_operators" - odh_pipeline_sourceNamespace: "openshift_marketplace" - - #Serverless Operator - serverless_namespace: "openshift-serverless" - serverless_operator_name: "serverless-operator" - serverless_operator_source: "redhat-operators" - serverless_operator_sourceNamespace: "openshift-marketplace" - - #opendatahub Operator - opendatahub_OperatorGroup_name: "opendatahub-operator-group" - opendatahub_name: "opendatahub-operator" - opendatahub_namespace: "opendatahub" - opendatahub_installPlanApproval: "Manual" - opendatahub_channel: "fast" - opendatahub_source: "community-operators" - opendatahub__sourceNamespace: "openshift-marketplace" - - aiservice_namespace: "mas_sremat_aiservice" - pull_secret_name: "ibm_entitlement" - mas_aiservice_storage_provider: "minio" - mas_aiservice_storage_accesskey: "" - mas_aiservice_storage_secretkey: "" - mas_aiservice_storage_host: "mas_aiservice_storage_host" - mas_aiservice_storage_port: "mas_aiservice_storage_port" - mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" - mas_aiservice_storage_region: "mas_aiservice_storage_region" + # openshift_namespace: "openshift-operators" + # odh_pipeline_channel: "latest" + # odh_pipeline_installplan: "Automatic" + # service_mesh_namespace: "openshift-serverless" + # service_mesh_channel: "stable" + # service_mesh_catalog_source: "redhat-operators" + # serverless_channel: "stable" + # authorino_catalog_source: "community-operators" + # odh_channel: "fast" + # odh_catalog_source: "community-operators" + # odh_operator_version: "opendatahub-operator.v2.11.1" + # #Odh_Pipeline_operator + # odh_pipeline_name: "openshift-pipelines-operator" + # odh_pipeline_namespace: "openshift-operators" + # odh_pipeline_operatorName: "openshift-pipelines-operator-rh" + # odh_pipeline_source: "redhat_operators" + # odh_pipeline_sourceNamespace: "openshift_marketplace" + + # #Serverless Operator + # serverless_namespace: "openshift-serverless" + # serverless_operator_name: "serverless-operator" + # serverless_operator_source: "redhat-operators" + # serverless_operator_sourceNamespace: "openshift-marketplace" + + # #opendatahub Operator + # opendatahub_OperatorGroup_name: "opendatahub-operator-group" + # opendatahub_name: "opendatahub-operator" + # opendatahub_namespace: "opendatahub" + # opendatahub_installPlanApproval: "Manual" + # opendatahub_channel: "fast" + # opendatahub_source: "community-operators" + # opendatahub__sourceNamespace: "openshift-marketplace" + + # aiservice_namespace: "mas_sremat_aiservice" + # pull_secret_name: "ibm_entitlement" + # mas_aiservice_storage_provider: "minio" + # mas_aiservice_storage_accesskey: "" + # mas_aiservice_storage_secretkey: "" + # mas_aiservice_storage_host: "mas_aiservice_storage_host" + # mas_aiservice_storage_port: "mas_aiservice_storage_port" + # mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" + # mas_aiservice_storage_region: "mas_aiservice_storage_region" # MariaDB mas_aiservice_db_host: "mas_aiservice_db_host" From 03f3a7132bbcbdafca5db864ae5b1dfca8a20b2f Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Thu, 16 Apr 2026 19:10:18 +0530 Subject: [PATCH 04/45] [patch] update rhoai version --- instance-applications/116-ibm-rhoai/values.yaml | 2 +- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/instance-applications/116-ibm-rhoai/values.yaml b/instance-applications/116-ibm-rhoai/values.yaml index 0fe2339be..c295091b3 100644 --- a/instance-applications/116-ibm-rhoai/values.yaml +++ b/instance-applications/116-ibm-rhoai/values.yaml @@ -13,7 +13,7 @@ serverless_channel: "stable" authorino_catalog_source: "community-operators" rhoai_channel: "stable" rhoai_catalog_source: "redhat-operators" -rhoai_operator_version: "rhods-operator.v2.25.3" +rhoai_operator_version: "rhods-operator.2.25.4" #RHOAI_Pipeline_operator rhoai_pipeline_name: "openshift-pipelines-operator" diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 746c8d5b4..8caa7c6c0 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -135,7 +135,7 @@ ibm_rhoai: authorino_catalog_source: "community-operators" rhoai_channel: "stable" rhoai_catalog_source: "redhat-operators" - rhoai_operator_version: "rhods-operator.v2.25.3" + rhoai_operator_version: "rhods-operator.2.25.4" #RHOAI_Pipeline_operator rhoai_pipeline_name: "openshift-pipelines-operator" rhoai_pipeline_namespace: "openshift-operators" From ce56e0d423a5975651ced2663adedebed986b346 Mon Sep 17 00:00:00 2001 From: KAROL CZARNECKI Date: Thu, 16 Apr 2026 16:58:47 +0100 Subject: [PATCH 05/45] [patch] update logic condition for odh --- .../ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml | 1 + root-applications/ibm-aiservice-instance-root/values.yaml | 1 + 2 files changed, 2 insertions(+) diff --git a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml index 53dc597b1..93ca8bd2e 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml @@ -1,4 +1,5 @@ {{- if not (empty .Values.ibm_odh) }} +{{- if and (not (empty .Values.ibm_odh)) (eq .Values.ibm_odh.install "true") }} --- # IBM Maximo ODH apiVersion: argoproj.io/v1alpha1 diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 8caa7c6c0..52c32dba5 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,6 +65,7 @@ ibm_minio: ibm_odh: + install: "true" # openshift_namespace: "openshift-operators" # odh_pipeline_channel: "latest" # odh_pipeline_installplan: "Automatic" From d75b4a29d3964c82451f7fa4511a4ec707286c2f Mon Sep 17 00:00:00 2001 From: KAROL CZARNECKI Date: Thu, 16 Apr 2026 17:04:49 +0100 Subject: [PATCH 06/45] [patch] fix wrong syntax --- .../ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml index 93ca8bd2e..87f63ca33 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml @@ -1,4 +1,3 @@ -{{- if not (empty .Values.ibm_odh) }} {{- if and (not (empty .Values.ibm_odh)) (eq .Values.ibm_odh.install "true") }} --- # IBM Maximo ODH From d88930687d00857f6550af9f3861d7a40d16603b Mon Sep 17 00:00:00 2001 From: KAROL CZARNECKI Date: Thu, 16 Apr 2026 17:07:22 +0100 Subject: [PATCH 07/45] [patch] update odh logic --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 52c32dba5..8b5ba8b5e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" # openshift_namespace: "openshift-operators" # odh_pipeline_channel: "latest" # odh_pipeline_installplan: "Automatic" From a0a980784afd269266b4f0ea6cb7d278879e7538 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 17 Apr 2026 01:11:09 +0530 Subject: [PATCH 08/45] [patch] make install plan to automatic --- instance-applications/116-ibm-rhoai/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instance-applications/116-ibm-rhoai/values.yaml b/instance-applications/116-ibm-rhoai/values.yaml index c295091b3..b4847209b 100644 --- a/instance-applications/116-ibm-rhoai/values.yaml +++ b/instance-applications/116-ibm-rhoai/values.yaml @@ -31,7 +31,7 @@ serverless_operator_sourceNamespace: "openshift-marketplace" #RHOAI Operator rhoai_OperatorGroup_name: "redhat-ods-operator-group" rhoai_name: "rhods-operator" -rhoai_installPlanApproval: "Manual" +rhoai_installPlanApproval: "Automatic" rhoai_source: "redhat-operators" rhoai_sourceNamespace: "openshift-marketplace" From 0b91d240616046fffefa1e4fc7b79f1e7bc65c2b Mon Sep 17 00:00:00 2001 From: KAROL CZARNECKI Date: Fri, 17 Apr 2026 09:02:23 +0100 Subject: [PATCH 09/45] [patch] update approval to Automatic for rhoai --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 8b5ba8b5e..97005e334 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -153,7 +153,7 @@ ibm_rhoai: #RHOAI Operator rhoai_OperatorGroup_name: "redhat-ods-operator-group" rhoai_name: "rhods-operator" - rhoai_installPlanApproval: "Manual" + rhoai_installPlanApproval: "Automatic" rhoai_source: "redhat-operators" rhoai_sourceNamespace: "openshift-marketplace" From 67ff895364e50ecc96d34d69921264241c65bef0 Mon Sep 17 00:00:00 2001 From: KAROL CZARNECKI Date: Fri, 17 Apr 2026 10:05:31 +0100 Subject: [PATCH 10/45] [patch] added one missing value --- .../ibm-aiservice-instance-root/values.yaml | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 97005e334..29b5b4c55 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -110,17 +110,17 @@ ibm_odh: # mas_aiservice_storage_region: "mas_aiservice_storage_region" # MariaDB - mas_aiservice_db_host: "mas_aiservice_db_host" - mas_aiservice_db_port: "mas_aiservice_db_port" - mas_aiservice_db_user: "mas_aiservice_db_user" - mas_aiservice_db_database: "mas_aiservice_db_database" + # mas_aiservice_db_host: "mas_aiservice_db_host" + # mas_aiservice_db_port: "mas_aiservice_db_port" + # mas_aiservice_db_user: "mas_aiservice_db_user" + # mas_aiservice_db_database: "mas_aiservice_db_database" - mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" - mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" - mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" + # mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" + # mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" + # mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" - mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" - primary_storage_class: "nfs-client" + # mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" + # primary_storage_class: "nfs-client" ibm_rhoai: openshift_namespace: "openshift-operators" @@ -143,6 +143,7 @@ ibm_rhoai: rhoai_pipeline_operatorName: "openshift-pipelines-operator-rh" rhoai_pipeline_source: "redhat-operators" rhoai_pipeline_sourceNamespace: "openshift-marketplace" + openshiftai_installPlanApproval: "Automatic" #Serverless Operator serverless_namespace: "openshift-serverless" From 29135902c34bf9ca34848c250279226f8b60042f Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 17 Apr 2026 16:47:24 +0530 Subject: [PATCH 11/45] [patch] fix namespace issue --- instance-applications/116-ibm-rhoai/values.yaml | 2 +- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/instance-applications/116-ibm-rhoai/values.yaml b/instance-applications/116-ibm-rhoai/values.yaml index b4847209b..4ad8c9d0d 100644 --- a/instance-applications/116-ibm-rhoai/values.yaml +++ b/instance-applications/116-ibm-rhoai/values.yaml @@ -41,7 +41,7 @@ operatorName: "openshift-pipelines-operator-rh" source: "redhat-operators" sourceNamespace: "openshift-marketplace" -aiservice_namespace: "mas_sremat_aiservice" +aiservice_namespace: "mas-sremat-aiservice" pull_secret_name: "ibm_entitlement" # Storage vars diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 29b5b4c55..dc10e387c 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -158,7 +158,7 @@ ibm_rhoai: rhoai_source: "redhat-operators" rhoai_sourceNamespace: "openshift-marketplace" - aiservice_namespace: "mas_sremat_aiservice" + aiservice_namespace: "mas-sremat-aiservice" pull_secret_name: "ibm_entitlement" mas_aiservice_storage_provider: "minio" mas_aiservice_storage_accesskey: "" From 2522c76b64706a1407dde0e17d013d8d8ae56139 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 17 Apr 2026 18:07:44 +0530 Subject: [PATCH 12/45] [patch] fix sync issue --- instance-applications/116-ibm-rhoai/values.yaml | 3 +++ .../templates/099-aiservice-instance-appset.yaml | 7 ++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/instance-applications/116-ibm-rhoai/values.yaml b/instance-applications/116-ibm-rhoai/values.yaml index 4ad8c9d0d..2d8d1c325 100644 --- a/instance-applications/116-ibm-rhoai/values.yaml +++ b/instance-applications/116-ibm-rhoai/values.yaml @@ -44,6 +44,9 @@ sourceNamespace: "openshift-marketplace" aiservice_namespace: "mas-sremat-aiservice" pull_secret_name: "ibm_entitlement" +# RHOAI deployment mode: "raw" or "serverless" +aiservice_rhoai_model_deployment_type: "raw" + # Storage vars mas_aiservice_storage_provider: "aws" mas_aiservice_storage_accesskey: "aiservice_storage_accesskey" diff --git a/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml b/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml index 34832b9d8..e9c9602fc 100644 --- a/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml +++ b/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml @@ -33,7 +33,12 @@ spec: repoURL: "{{ .Values.generator.repo_url }}" revision: "{{ .Values.generator.revision }}" files: - - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-mas-odh-install.yaml" + - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-mas-odh-install.yaml" + - git: + repoURL: "{{ .Values.generator.repo_url }}" + revision: "{{ .Values.generator.revision }}" + files: + - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-mas-rhoai-install.yaml" - git: repoURL: "{{ .Values.generator.repo_url }}" revision: "{{ .Values.generator.revision }}" From 7edacfaec4eaf74304182fa5b87b91f463b23f77 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Tue, 21 Apr 2026 15:49:06 +0530 Subject: [PATCH 13/45] [patch] add install param to switch odh/rhoai --- .../templates/031-ibm-rhoai-app.yaml | 2 +- .../ibm-aiservice-instance-root/values.yaml | 87 ++++++++++--------- 2 files changed, 45 insertions(+), 44 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml index 766155076..1c5316026 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml @@ -1,4 +1,4 @@ -{{- if not (empty .Values.ibm_rhoai) }} +{{- if and (not (empty .Values.ibm_rhoai)) (eq .Values.ibm_rhoai.install "true") }} --- # IBM Maximo RHOAI (Red Hat OpenShift AI) apiVersion: argoproj.io/v1alpha1 diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index dc10e387c..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,49 +65,49 @@ ibm_minio: ibm_odh: - install: "false" - # openshift_namespace: "openshift-operators" - # odh_pipeline_channel: "latest" - # odh_pipeline_installplan: "Automatic" - # service_mesh_namespace: "openshift-serverless" - # service_mesh_channel: "stable" - # service_mesh_catalog_source: "redhat-operators" - # serverless_channel: "stable" - # authorino_catalog_source: "community-operators" - # odh_channel: "fast" - # odh_catalog_source: "community-operators" - # odh_operator_version: "opendatahub-operator.v2.11.1" - # #Odh_Pipeline_operator - # odh_pipeline_name: "openshift-pipelines-operator" - # odh_pipeline_namespace: "openshift-operators" - # odh_pipeline_operatorName: "openshift-pipelines-operator-rh" - # odh_pipeline_source: "redhat_operators" - # odh_pipeline_sourceNamespace: "openshift_marketplace" - - # #Serverless Operator - # serverless_namespace: "openshift-serverless" - # serverless_operator_name: "serverless-operator" - # serverless_operator_source: "redhat-operators" - # serverless_operator_sourceNamespace: "openshift-marketplace" - - # #opendatahub Operator - # opendatahub_OperatorGroup_name: "opendatahub-operator-group" - # opendatahub_name: "opendatahub-operator" - # opendatahub_namespace: "opendatahub" - # opendatahub_installPlanApproval: "Manual" - # opendatahub_channel: "fast" - # opendatahub_source: "community-operators" - # opendatahub__sourceNamespace: "openshift-marketplace" - - # aiservice_namespace: "mas_sremat_aiservice" - # pull_secret_name: "ibm_entitlement" - # mas_aiservice_storage_provider: "minio" - # mas_aiservice_storage_accesskey: "" - # mas_aiservice_storage_secretkey: "" - # mas_aiservice_storage_host: "mas_aiservice_storage_host" - # mas_aiservice_storage_port: "mas_aiservice_storage_port" - # mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" - # mas_aiservice_storage_region: "mas_aiservice_storage_region" + install: "true" + openshift_namespace: "openshift-operators" + odh_pipeline_channel: "latest" + odh_pipeline_installplan: "Automatic" + service_mesh_namespace: "openshift-serverless" + service_mesh_channel: "stable" + service_mesh_catalog_source: "redhat-operators" + serverless_channel: "stable" + authorino_catalog_source: "community-operators" + odh_channel: "fast" + odh_catalog_source: "community-operators" + odh_operator_version: "opendatahub-operator.v2.11.1" + #Odh_Pipeline_operator + odh_pipeline_name: "openshift-pipelines-operator" + odh_pipeline_namespace: "openshift-operators" + odh_pipeline_operatorName: "openshift-pipelines-operator-rh" + odh_pipeline_source: "redhat_operators" + odh_pipeline_sourceNamespace: "openshift_marketplace" + + #Serverless Operator + serverless_namespace: "openshift-serverless" + serverless_operator_name: "serverless-operator" + serverless_operator_source: "redhat-operators" + serverless_operator_sourceNamespace: "openshift-marketplace" + + #opendatahub Operator + opendatahub_OperatorGroup_name: "opendatahub-operator-group" + opendatahub_name: "opendatahub-operator" + opendatahub_namespace: "opendatahub" + opendatahub_installPlanApproval: "Manual" + opendatahub_channel: "fast" + opendatahub_source: "community-operators" + opendatahub__sourceNamespace: "openshift-marketplace" + + aiservice_namespace: "mas_sremat_aiservice" + pull_secret_name: "ibm_entitlement" + mas_aiservice_storage_provider: "minio" + mas_aiservice_storage_accesskey: "" + mas_aiservice_storage_secretkey: "" + mas_aiservice_storage_host: "mas_aiservice_storage_host" + mas_aiservice_storage_port: "mas_aiservice_storage_port" + mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" + mas_aiservice_storage_region: "mas_aiservice_storage_region" # MariaDB # mas_aiservice_db_host: "mas_aiservice_db_host" @@ -123,6 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: + install: "false" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 42de326889532400d8b4fed8a2e5548823fd069c Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Tue, 21 Apr 2026 19:00:11 +0530 Subject: [PATCH 14/45] [patch] Configure SLS through Gitops --- .../templates/099-aiservice-instance-appset.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml b/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml index e9c9602fc..6d37580a9 100644 --- a/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml +++ b/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml @@ -29,6 +29,11 @@ spec: revision: "{{ .Values.generator.revision }}" files: - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-aiservice-instance-base.yaml" + - git: + repoURL: "{{ .Values.generator.repo_url }}" + revision: "{{ .Values.generator.revision }}" + files: + - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-sls.yaml" - git: repoURL: "{{ .Values.generator.repo_url }}" revision: "{{ .Values.generator.revision }}" From 84bb6fa09d1ab3c91b24a4fe020af9d3f798ff22 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Tue, 21 Apr 2026 19:27:43 +0530 Subject: [PATCH 15/45] [patch] Add SLS template to ibm-aiservice-instance-root --- .../templates/100-ibm-sls-app.yaml | 103 ++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml diff --git a/root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml new file mode 100644 index 000000000..0b4f14552 --- /dev/null +++ b/root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml @@ -0,0 +1,103 @@ +{{- /* + Conditions: + - Skip 100-ibm-sls entirely + - Create 100-ibm-sls-app only if: + ibm_sls is defined (not empty) + AND ibm_sls.icn is NOT defined +*/ -}} + +{{- if and (not (empty .Values.ibm_sls)) (empty .Values.ibm_sls.ibm_customer_number) }} +--- +# IBM Maximo Operator Catalog +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: sls.{{ .Values.cluster.id }}.{{ .Values.instance.id }} + namespace: {{ .Values.argo.namespace }} + labels: + environment: '{{ .Values.account.id }}' + region: '{{ .Values.region.id }}' + cluster: '{{ .Values.cluster.id }}' + instance: '{{ .Values.instance.id }}' + annotations: + argocd.argoproj.io/sync-wave: "100" + {{- if and .Values.notifications .Values.notifications.slack_channel_id }} + notifications.argoproj.io/subscribe.on-sync-failed.workspace1: {{ .Values.notifications.slack_channel_id }} + notifications.argoproj.io/subscribe.on-sync-succeeded.workspace1: {{ .Values.notifications.slack_channel_id }} + {{- end }} + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + ignoreDifferences: + - group: '*' + kind: ServiceAccount + jsonPointers: + - /imagePullSecrets + project: "{{ .Values.argo.projects.apps }}" + destination: + server: {{ .Values.cluster.url }} + namespace: "mas-{{ .Values.instance.id }}-sls" + source: + repoURL: "{{ .Values.source.repo_url }}" + path: instance-applications/100-ibm-sls + targetRevision: "{{ .Values.source.revision }}" + plugin: + name: {{ .Values.avp.name }} + env: + - name: {{ .Values.avp.values_varname }} + value: | + account_id: "{{ .Values.account.id }}" + region_id: "{{ .Values.region.id }}" + cluster_id: "{{ .Values.cluster.id }}" + instance_id: "{{ .Values.instance.id }}" + cli_image_repo: {{ .Values.cli_image_repo }} + argo_namespace: "{{ .Values.argo.namespace }}" + sm_aws_access_key_id: "{{ .Values.sm.aws_access_key_id }}" + sm_aws_secret_access_key: "{{ .Values.sm.aws_secret_access_key }}" + run_sync_hooks: {{.Values.ibm_sls.run_sync_hooks }} + sls_channel: "{{ .Values.ibm_sls.sls_channel }}" + ibm_entitlement_key: "{{ .Values.ibm_sls.ibm_entitlement_key }}" + sls_mongo_secret_name: "{{ .Values.ibm_sls.sls_mongo_secret_name }}" + sls_mongo_username: "{{ .Values.ibm_sls.sls_mongo_username }}" + sls_mongo_password: "{{ .Values.ibm_sls.sls_mongo_password }}" + sls_entitlement_file: "{{ .Values.ibm_sls.sls_entitlement_file }}" + icr_cp_open: "{{ .Values.ibm_sls.icr_cp_open }}" + sls_install_plan: "{{ .Values.ibm_sls.sls_install_plan }}" + mongo_spec: {{ .Values.ibm_sls.mongo_spec | toYaml | nindent 14}} + {{- if .Values.custom_labels }} + custom_labels: {{ .Values.custom_labels | toYaml | nindent 14 }} + {{- end }} + junitreporter: + reporter_name: "ibm-sls-{{ .Values.instance.id }}" + cluster_id: "{{ .Values.cluster.id }}" + instance_id: "{{ .Values.instance.id }}" + devops_mongo_uri: "{{ .Values.devops.mongo_uri }}" + devops_build_number: "{{ .Values.devops.build_number }}" + gitops_version: "{{ .Values.source.revision }}" + cli_image_repo: {{ .Values.cli_image_repo }} + {{- if .Values.ibm_sls.internal_certificate_authority }} + internal_certificate_authority: "{{ .Values.ibm_sls.internal_certificate_authority }}" + {{- end }} + - name: ARGOCD_APP_NAME + value: slsapp + {{- if not (empty .Values.avp.secret) }} + - name: AVP_SECRET + value: {{ .Values.avp.secret }} + {{- end }} + syncPolicy: + automated: + {{- if .Values.auto_delete }} + prune: true + {{- end }} + selfHeal: true + retry: + limit: 20 + syncOptions: + - CreateNamespace=true + - RespectIgnoreDifferences=true +{{- if .Values.custom_labels }} + managedNamespaceMetadata: + labels: +{{ .Values.custom_labels | toYaml | indent 8 }} +{{- end }} +{{- end }} From 7656adb2144b9d7edef6140d34eda6e9ca904c95 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 22 Apr 2026 11:29:13 +0530 Subject: [PATCH 16/45] Revert "[patch] Add SLS template to ibm-aiservice-instance-root" This reverts commit 84bb6fa09d1ab3c91b24a4fe020af9d3f798ff22. --- .../templates/100-ibm-sls-app.yaml | 103 ------------------ 1 file changed, 103 deletions(-) delete mode 100644 root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml diff --git a/root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml deleted file mode 100644 index 0b4f14552..000000000 --- a/root-applications/ibm-aiservice-instance-root/templates/100-ibm-sls-app.yaml +++ /dev/null @@ -1,103 +0,0 @@ -{{- /* - Conditions: - - Skip 100-ibm-sls entirely - - Create 100-ibm-sls-app only if: - ibm_sls is defined (not empty) - AND ibm_sls.icn is NOT defined -*/ -}} - -{{- if and (not (empty .Values.ibm_sls)) (empty .Values.ibm_sls.ibm_customer_number) }} ---- -# IBM Maximo Operator Catalog -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: sls.{{ .Values.cluster.id }}.{{ .Values.instance.id }} - namespace: {{ .Values.argo.namespace }} - labels: - environment: '{{ .Values.account.id }}' - region: '{{ .Values.region.id }}' - cluster: '{{ .Values.cluster.id }}' - instance: '{{ .Values.instance.id }}' - annotations: - argocd.argoproj.io/sync-wave: "100" - {{- if and .Values.notifications .Values.notifications.slack_channel_id }} - notifications.argoproj.io/subscribe.on-sync-failed.workspace1: {{ .Values.notifications.slack_channel_id }} - notifications.argoproj.io/subscribe.on-sync-succeeded.workspace1: {{ .Values.notifications.slack_channel_id }} - {{- end }} - finalizers: - - resources-finalizer.argocd.argoproj.io -spec: - ignoreDifferences: - - group: '*' - kind: ServiceAccount - jsonPointers: - - /imagePullSecrets - project: "{{ .Values.argo.projects.apps }}" - destination: - server: {{ .Values.cluster.url }} - namespace: "mas-{{ .Values.instance.id }}-sls" - source: - repoURL: "{{ .Values.source.repo_url }}" - path: instance-applications/100-ibm-sls - targetRevision: "{{ .Values.source.revision }}" - plugin: - name: {{ .Values.avp.name }} - env: - - name: {{ .Values.avp.values_varname }} - value: | - account_id: "{{ .Values.account.id }}" - region_id: "{{ .Values.region.id }}" - cluster_id: "{{ .Values.cluster.id }}" - instance_id: "{{ .Values.instance.id }}" - cli_image_repo: {{ .Values.cli_image_repo }} - argo_namespace: "{{ .Values.argo.namespace }}" - sm_aws_access_key_id: "{{ .Values.sm.aws_access_key_id }}" - sm_aws_secret_access_key: "{{ .Values.sm.aws_secret_access_key }}" - run_sync_hooks: {{.Values.ibm_sls.run_sync_hooks }} - sls_channel: "{{ .Values.ibm_sls.sls_channel }}" - ibm_entitlement_key: "{{ .Values.ibm_sls.ibm_entitlement_key }}" - sls_mongo_secret_name: "{{ .Values.ibm_sls.sls_mongo_secret_name }}" - sls_mongo_username: "{{ .Values.ibm_sls.sls_mongo_username }}" - sls_mongo_password: "{{ .Values.ibm_sls.sls_mongo_password }}" - sls_entitlement_file: "{{ .Values.ibm_sls.sls_entitlement_file }}" - icr_cp_open: "{{ .Values.ibm_sls.icr_cp_open }}" - sls_install_plan: "{{ .Values.ibm_sls.sls_install_plan }}" - mongo_spec: {{ .Values.ibm_sls.mongo_spec | toYaml | nindent 14}} - {{- if .Values.custom_labels }} - custom_labels: {{ .Values.custom_labels | toYaml | nindent 14 }} - {{- end }} - junitreporter: - reporter_name: "ibm-sls-{{ .Values.instance.id }}" - cluster_id: "{{ .Values.cluster.id }}" - instance_id: "{{ .Values.instance.id }}" - devops_mongo_uri: "{{ .Values.devops.mongo_uri }}" - devops_build_number: "{{ .Values.devops.build_number }}" - gitops_version: "{{ .Values.source.revision }}" - cli_image_repo: {{ .Values.cli_image_repo }} - {{- if .Values.ibm_sls.internal_certificate_authority }} - internal_certificate_authority: "{{ .Values.ibm_sls.internal_certificate_authority }}" - {{- end }} - - name: ARGOCD_APP_NAME - value: slsapp - {{- if not (empty .Values.avp.secret) }} - - name: AVP_SECRET - value: {{ .Values.avp.secret }} - {{- end }} - syncPolicy: - automated: - {{- if .Values.auto_delete }} - prune: true - {{- end }} - selfHeal: true - retry: - limit: 20 - syncOptions: - - CreateNamespace=true - - RespectIgnoreDifferences=true -{{- if .Values.custom_labels }} - managedNamespaceMetadata: - labels: -{{ .Values.custom_labels | toYaml | indent 8 }} -{{- end }} -{{- end }} From 187b4c03fee647da99c0817898f956acfc96cb89 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 22 Apr 2026 11:29:17 +0530 Subject: [PATCH 17/45] Revert "[patch] Configure SLS through Gitops" This reverts commit 42de326889532400d8b4fed8a2e5548823fd069c. --- .../templates/099-aiservice-instance-appset.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml b/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml index 6d37580a9..e9c9602fc 100644 --- a/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml +++ b/root-applications/ibm-mas-cluster-root/templates/099-aiservice-instance-appset.yaml @@ -29,11 +29,6 @@ spec: revision: "{{ .Values.generator.revision }}" files: - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-aiservice-instance-base.yaml" - - git: - repoURL: "{{ .Values.generator.repo_url }}" - revision: "{{ .Values.generator.revision }}" - files: - - path: "{{ .Values.account.id }}/{{ .Values.cluster.id }}/*/ibm-sls.yaml" - git: repoURL: "{{ .Values.generator.repo_url }}" revision: "{{ .Values.generator.revision }}" From baed88bd05fc392115bce7e1808e2012a07be126 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 22 Apr 2026 17:55:49 +0530 Subject: [PATCH 18/45] [patch] migrate to rhoai --- root-applications/ibm-aiservice-instance-root/values.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..199ba00d2 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "false" + install: "true" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 64280c6917abc293fc3c4dd6adf8641e43aac2ac Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 24 Apr 2026 15:59:41 +0530 Subject: [PATCH 19/45] [patch] install odh --- root-applications/ibm-aiservice-instance-root/values.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 199ba00d2..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "true" + install: "false" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From c789ef4b50bcc9ed362a51d992e868e3ff8df5ba Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 24 Apr 2026 18:46:13 +0530 Subject: [PATCH 20/45] [patch] odh unin --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..79110ae9e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From 031a2fadabff9970d9b2c5cbb4ada4eadcaf4e6f Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 12:36:32 +0530 Subject: [PATCH 21/45] [patch] revent ArgoCD from deleting namespace --- .../112-ibm-odh/templates/05-odh-namespace.yaml | 4 +++- .../116-ibm-rhoai/templates/05-rhoai-namespace.yaml | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml index 35334ab82..da424e7b9 100644 --- a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml +++ b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml @@ -5,4 +5,6 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" - + # Prevent ArgoCD from deleting this namespace during ODH uninstall + # This namespace is shared with RHOAI and must persist during migration + argocd.argoproj.io/sync-options: Prune=false,Delete=false diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml index 366793f96..9c4a6e250 100644 --- a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -5,3 +5,6 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" + # Prevent ArgoCD from deleting this namespace during RHOAI uninstall + # This namespace is shared with ODH and must persist during migration + argocd.argoproj.io/sync-options: Prune=false,Delete=false From aebb35900850e6ac274345d2ae4bc875dcce7292 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 12:57:11 +0530 Subject: [PATCH 22/45] [patch] test changes --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 79110ae9e..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From c76f92df8af4ae46c5e4b40effc2c577c0f16805 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 13:15:03 +0530 Subject: [PATCH 23/45] [patch] remove odh --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..79110ae9e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From 6fa640d12103f01f40b11fbbbaedbdc05d277ea7 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 13:22:53 +0530 Subject: [PATCH 24/45] [patch] install rhoai --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 79110ae9e..199ba00d2 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "false" + install: "true" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From d7d9086ca343ddd9061292fba07f670d06fcbb0c Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 17:43:52 +0530 Subject: [PATCH 25/45] Revert "[patch] revent ArgoCD from deleting namespace" This reverts commit 031a2fadabff9970d9b2c5cbb4ada4eadcaf4e6f. --- .../112-ibm-odh/templates/05-odh-namespace.yaml | 4 +--- .../116-ibm-rhoai/templates/05-rhoai-namespace.yaml | 3 --- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml index da424e7b9..35334ab82 100644 --- a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml +++ b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml @@ -5,6 +5,4 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" - # Prevent ArgoCD from deleting this namespace during ODH uninstall - # This namespace is shared with RHOAI and must persist during migration - argocd.argoproj.io/sync-options: Prune=false,Delete=false + diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml index 9c4a6e250..366793f96 100644 --- a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -5,6 +5,3 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" - # Prevent ArgoCD from deleting this namespace during RHOAI uninstall - # This namespace is shared with ODH and must persist during migration - argocd.argoproj.io/sync-options: Prune=false,Delete=false From b67570a8a52eb493463f404fea858a9dd68c27a1 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 17:55:53 +0530 Subject: [PATCH 26/45] [patch] AIS+ODH --- root-applications/ibm-aiservice-instance-root/values.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 199ba00d2..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "true" + install: "false" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 82da29260f287bf63c35bda1a676d6a05646dd16 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 18:03:33 +0530 Subject: [PATCH 27/45] [patch] fix lint issue --- .../112-ibm-odh/templates/05-odh-namespace.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml index 35334ab82..366793f96 100644 --- a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml +++ b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml @@ -5,4 +5,3 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" - From bfe8bd9cdbaf51a73c0abc4b51a777fd6d6c440e Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 18:50:59 +0530 Subject: [PATCH 28/45] Update values.yaml --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..79110ae9e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From d1faf1be27f4c3710cbdf7c74d8c2fa2c2bd80d4 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 19:22:37 +0530 Subject: [PATCH 29/45] Revert "Update values.yaml" This reverts commit bfe8bd9cdbaf51a73c0abc4b51a777fd6d6c440e. --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 79110ae9e..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From a301deea0353a235d239ba5842ba16c5bc25aa46 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 27 Apr 2026 19:58:16 +0530 Subject: [PATCH 30/45] [patch] re-apply changes --- .../112-ibm-odh/templates/05-odh-namespace.yaml | 3 +++ .../116-ibm-rhoai/templates/05-rhoai-namespace.yaml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml index 366793f96..da424e7b9 100644 --- a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml +++ b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml @@ -5,3 +5,6 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" + # Prevent ArgoCD from deleting this namespace during ODH uninstall + # This namespace is shared with RHOAI and must persist during migration + argocd.argoproj.io/sync-options: Prune=false,Delete=false diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml index 366793f96..9c4a6e250 100644 --- a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -5,3 +5,6 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" + # Prevent ArgoCD from deleting this namespace during RHOAI uninstall + # This namespace is shared with ODH and must persist during migration + argocd.argoproj.io/sync-options: Prune=false,Delete=false From f98496f3e71e7546023f24589bae1409aa1109c5 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Tue, 28 Apr 2026 12:53:37 +0530 Subject: [PATCH 31/45] [patch] remove odh --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..79110ae9e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From 3d14877e95424d7b463a040a2305f1a3da661248 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Tue, 28 Apr 2026 13:34:54 +0530 Subject: [PATCH 32/45] [patch] install rhoai --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 79110ae9e..199ba00d2 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "false" + install: "true" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 85c689b9fb7a6b8db110849480a9a63986fe12cb Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 29 Apr 2026 16:10:16 +0530 Subject: [PATCH 33/45] AIS 9.1 with ODH --- .../112-ibm-odh/templates/05-odh-namespace.yaml | 3 --- .../116-ibm-rhoai/templates/05-rhoai-namespace.yaml | 3 --- root-applications/ibm-aiservice-instance-root/values.yaml | 4 ++-- 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml index da424e7b9..366793f96 100644 --- a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml +++ b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml @@ -5,6 +5,3 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" - # Prevent ArgoCD from deleting this namespace during ODH uninstall - # This namespace is shared with RHOAI and must persist during migration - argocd.argoproj.io/sync-options: Prune=false,Delete=false diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml index 9c4a6e250..366793f96 100644 --- a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -5,6 +5,3 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" - # Prevent ArgoCD from deleting this namespace during RHOAI uninstall - # This namespace is shared with ODH and must persist during migration - argocd.argoproj.io/sync-options: Prune=false,Delete=false diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 199ba00d2..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "true" + install: "false" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 2e8386ae6e8a7e3a43f1dc87dcdbc72fcd66eac7 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 29 Apr 2026 18:06:23 +0530 Subject: [PATCH 34/45] add change --- .../112-ibm-odh/templates/05-odh-namespace.yaml | 3 +++ .../116-ibm-rhoai/templates/05-rhoai-namespace.yaml | 3 +++ 2 files changed, 6 insertions(+) diff --git a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml index 366793f96..da424e7b9 100644 --- a/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml +++ b/instance-applications/112-ibm-odh/templates/05-odh-namespace.yaml @@ -5,3 +5,6 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" + # Prevent ArgoCD from deleting this namespace during ODH uninstall + # This namespace is shared with RHOAI and must persist during migration + argocd.argoproj.io/sync-options: Prune=false,Delete=false diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml index 366793f96..9c4a6e250 100644 --- a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -5,3 +5,6 @@ metadata: name: "{{ .Values.aiservice_namespace }}" annotations: argocd.argoproj.io/sync-wave: "128" + # Prevent ArgoCD from deleting this namespace during RHOAI uninstall + # This namespace is shared with ODH and must persist during migration + argocd.argoproj.io/sync-options: Prune=false,Delete=false From e0fc696d5be4104b6874240480cad5dbba5963b4 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 29 Apr 2026 18:10:09 +0530 Subject: [PATCH 35/45] remove odh --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..79110ae9e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From b26e52f2cb60566bc4916dc89efa9b676b083f99 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 29 Apr 2026 18:38:24 +0530 Subject: [PATCH 36/45] install rhoai --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 79110ae9e..199ba00d2 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "false" + install: "true" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 8ffad9b4a365d28d5df803c201004b747af897a6 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 1 May 2026 10:29:14 +0530 Subject: [PATCH 37/45] [patch] Fix manual CSV deletion issue --- .../templates/01-odh-serverless-subscription.yaml | 6 ++++++ .../templates/02-odh-servicemesh-operator-sa.yaml | 3 +++ .../112-ibm-odh/templates/03-odh-authorino-operator.yaml | 3 +++ root-applications/ibm-aiservice-instance-root/values.yaml | 4 ++-- 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/instance-applications/112-ibm-odh/templates/01-odh-serverless-subscription.yaml b/instance-applications/112-ibm-odh/templates/01-odh-serverless-subscription.yaml index fabbdccf7..fd5b80aca 100644 --- a/instance-applications/112-ibm-odh/templates/01-odh-serverless-subscription.yaml +++ b/instance-applications/112-ibm-odh/templates/01-odh-serverless-subscription.yaml @@ -5,6 +5,9 @@ metadata: name: {{ .Values.serverless_namespace}} annotations: argocd.argoproj.io/sync-wave: "117" + # Prevent ArgoCD from deleting this namespace during ODH to RHOAI migration + # This namespace is shared between ODH and RHOAI + argocd.argoproj.io/sync-options: Prune=false,Delete=false --- apiVersion: operators.coreos.com/v1 @@ -23,6 +26,9 @@ metadata: namespace: {{ .Values.serverless_namespace}} annotations: argocd.argoproj.io/sync-wave: "118" + # Prevent ArgoCD from deleting this subscription during ODH to RHOAI migration + # This subscription is shared between ODH and RHOAI + argocd.argoproj.io/sync-options: Prune=false,Delete=false spec: channel: stable installPlanApproval: Automatic diff --git a/instance-applications/112-ibm-odh/templates/02-odh-servicemesh-operator-sa.yaml b/instance-applications/112-ibm-odh/templates/02-odh-servicemesh-operator-sa.yaml index 5d84a8cfc..cabcd0bd0 100644 --- a/instance-applications/112-ibm-odh/templates/02-odh-servicemesh-operator-sa.yaml +++ b/instance-applications/112-ibm-odh/templates/02-odh-servicemesh-operator-sa.yaml @@ -6,6 +6,9 @@ metadata: namespace: openshift-operators annotations: argocd.argoproj.io/sync-wave: "118" + # Prevent ArgoCD from deleting this subscription during ODH to RHOAI migration + # This subscription is shared between ODH and RHOAI + argocd.argoproj.io/sync-options: Prune=false,Delete=false spec: channel: stable installPlanApproval: Automatic diff --git a/instance-applications/112-ibm-odh/templates/03-odh-authorino-operator.yaml b/instance-applications/112-ibm-odh/templates/03-odh-authorino-operator.yaml index 49c2e8280..ff431e6a6 100644 --- a/instance-applications/112-ibm-odh/templates/03-odh-authorino-operator.yaml +++ b/instance-applications/112-ibm-odh/templates/03-odh-authorino-operator.yaml @@ -6,6 +6,9 @@ metadata: namespace: openshift-operators annotations: argocd.argoproj.io/sync-wave: "121" + # Prevent ArgoCD from deleting this subscription during ODH to RHOAI migration + # This subscription is shared between ODH and RHOAI + argocd.argoproj.io/sync-options: Prune=false,Delete=false spec: channel: stable name: authorino-operator diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 199ba00d2..3322864c7 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "true" + install: "false" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 84b1a884a5560dd6ac4d632c5b14d8b0cd234250 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 1 May 2026 11:55:36 +0530 Subject: [PATCH 38/45] remove odh --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 3322864c7..79110ae9e 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + install: "false" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" From 243a051923f6d715bcf0effb9eb48a68e5c6fb31 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 1 May 2026 12:11:18 +0530 Subject: [PATCH 39/45] install rhoai --- root-applications/ibm-aiservice-instance-root/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 79110ae9e..199ba00d2 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "false" + install: "true" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 7eb9f3ff0206ca3a9543d4cd8e6306466279c6d3 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 8 May 2026 16:38:28 +0530 Subject: [PATCH 40/45] [patch] add readme for migration --- instance-applications/112-ibm-odh/README.md | 6 + instance-applications/116-ibm-rhoai/README.md | 109 ++++++++++++++++++ .../ibm-aiservice-instance-root/README.md | 1 + .../ibm-aiservice-instance-root/values.yaml | 4 +- 4 files changed, 118 insertions(+), 2 deletions(-) diff --git a/instance-applications/112-ibm-odh/README.md b/instance-applications/112-ibm-odh/README.md index 1f2faa46d..a36d0bdd2 100644 --- a/instance-applications/112-ibm-odh/README.md +++ b/instance-applications/112-ibm-odh/README.md @@ -4,6 +4,11 @@ Deploy and configure ODH with configurable version +## Migration to RHOAI + +**Note**: OpenDataHub (ODH) is being replaced by Red Hat OpenShift AI (RHOAI). To migrate to RHOAI, see the [RHOAI Migration Guide](../116-ibm-rhoai/README.md#migration-from-odh-to-rhoai). + +Shared resources (aiservice namespace, ServiceMesh, Authorino, Serverless operators, and NetworkPolicies) have ArgoCD protection annotations that prevent deletion during ODH uninstallation, ensuring a safe migration path to RHOAI. ## Resources Created @@ -25,6 +30,7 @@ This chart accepts the following configuration values in the ArgoCD Application ```yaml ibm_odh: + install: string # Set to "true" to enable ODH installation openshift_namespace: string odh_pipeline_channel: string odh_pipeline_installplan: string diff --git a/instance-applications/116-ibm-rhoai/README.md b/instance-applications/116-ibm-rhoai/README.md index 006435495..c51f8c751 100644 --- a/instance-applications/116-ibm-rhoai/README.md +++ b/instance-applications/116-ibm-rhoai/README.md @@ -1,3 +1,112 @@ IBM RHOAI (Red Hat OpenShift AI) =============================================================================== Deploy and configure Red Hat OpenShift AI with configurable version + + + +## Migration from ODH to RHOAI + +To migrate from OpenDataHub (ODH) to Red Hat OpenShift AI (RHOAI): + +1. **Disable ODH**: Set `ibm_odh.install: "false"` in your configuration +2. **Sync with Prune**: Sync the ODH application in ArgoCD with the prune option enabled +3. **Wait for Uninstallation**: Wait for ODH resources to be removed (shared resources like namespaces, operators, and NetworkPolicies are protected and will not be deleted) +4. **Enable RHOAI**: Set `ibm_rhoai.install: "true"` in your configuration +5. **Sync RHOAI**: Sync the RHOAI application in ArgoCD + +**Note**: The migration is safe because shared resources (aiservice namespace, ServiceMesh, Authorino, Serverless operators, and NetworkPolicies) have ArgoCD protection annotations (`Prune=false,Delete=false`) that prevent deletion during ODH uninstallation. RHOAI will reuse these existing resources. + +## Resources Created + +| Resource Type | Resource Name | Namespace | Condition | Installed By | +|--------------|---------------|-----------|-----------|--------------| +| `Namespace` | RHOAI and serverless namespaces | RHOAI-related namespaces | Always | `application_admin_role` | +| `OperatorGroup` | RHOAI operator groups | RHOAI-related namespaces | Always | `application_admin_role` | +| `Subscription` | RHOAI/operator subscriptions | RHOAI-related namespaces | Always | `application_admin_role` | +| `ServiceAccount` | RHOAI service mesh service account | RHOAI-related namespaces | Always | `application_admin_role` | +| `DSCInitialization` | RHOAI DSC initialization CR | RHOAI namespace | Always | `application_admin_role` | +| `DataScienceCluster` | RHOAI data science cluster CR | RHOAI namespace | Always | `application_admin_role` | +| `PeerAuthentication` | Istio peer authentication for RHOAI | RHOAI namespace | Always | `application_admin_role` | +| `DestinationRule` | Istio destination rule for RHOAI | RHOAI namespace | Always | `application_admin_role` | +| `NetworkPolicy` | RHOAI network policy | RHOAI namespace | Always | `application_admin_role` | + +## Configuration + +This chart accepts the following configuration values in the ArgoCD Application values: + +```yaml +ibm_rhoai: + install: string # Set to "true" to enable RHOAI installation + openshift_namespace: string + rhoai_pipeline_name: string + rhoai_pipeline_namespace: string + rhoai_pipeline_operatorName: string + rhoai_pipeline_source: string + rhoai_pipeline_sourceNamespace: string + serverless_namespace: string + serverless_operator_name: string + serverless_operator_source: string + serverless_operator_sourceNamespace: string + rhoai_OperatorGroup_name: string + rhoai_name: string + rhoai_channel: string + rhoai_namespace: string + rhoai_applications_namespace: string + rhoai_monitoring_namespace: string + rhoai_installPlanApproval: string + rhoai_source: string + rhoai_sourceNamespace: string + rhoai_pipeline_channel: string + rhoai_pipeline_installplan: string + service_mesh_namespace: string + service_mesh_channel: string + service_mesh_catalog_source: string + serverless_channel: string + authorino_catalog_source: string + rhoai_catalog_source: string + rhoai_operator_version: string + + aiservice_namespace: string + pull_secret_name: string (secret reference) + + mas_aiservice_storage_provider: string + mas_aiservice_storage_accesskey: string (secret reference) + mas_aiservice_storage_secretkey: string (secret reference) + mas_aiservice_storage_host: string + mas_aiservice_storage_port: string + mas_aiservice_storage_ssl: string + mas_aiservice_storage_region: string + mas_aiservice_storage_pipelines_bucket: string + primary_storage_class: string + aiservice_rhoai_model_deployment_type: string +``` + +**Note**: Values marked with "(secret reference)" should use the format `` to reference secrets stored in the Secrets Vault. + +## Base Instance Values + +This chart inherits common instance configuration values. The most frequently used base values are: + +```yaml +account: + id: string # Account identifier + name: string # Account name + +region: + id: string # Region identifier + name: string # Region name + +cluster: + id: string # Cluster identifier + name: string # Cluster name + +instance: + id: string # MAS instance identifier + +sm: # Secrets Manager configuration + aws_secret_region: string + aws_access_key_id: string (secret reference) + aws_secret_access_key: string (secret reference) +``` + +For complete documentation of all base instance values including optional fields like `custom_labels`, `argocluster_instance`, `application_admin_service_account`, `mas_wipe_mongo_data`, `allow_list`, `additional_vpn`, `application_configuration`, `use_postdelete_hooks`, `additional_resources`, `extensions`, `enhanced_dr`, and `cli_image_repo`, see the [Instance Base Values Reference](../../docs/reference/instance-base-values.md). diff --git a/root-applications/ibm-aiservice-instance-root/README.md b/root-applications/ibm-aiservice-instance-root/README.md index 89550f38e..361ed4849 100644 --- a/root-applications/ibm-aiservice-instance-root/README.md +++ b/root-applications/ibm-aiservice-instance-root/README.md @@ -35,6 +35,7 @@ The following table lists all ArgoCD applications defined in the templates folde | Template File | Application Name | Cluster Admin Role | Application Admin Role | Both Roles | |--------------|------------------|-------------------|----------------------|------------| | [`030-ibm-odh-app.yaml`](templates/030-ibm-odh-app.yaml) | odh | | | ✓ | +| [`031-ibm-rhoai-app.yaml`](templates/031-ibm-rhoai-app.yaml) | rhoai | | | ✓ | | [`040-ibm-aiservice-app.yaml`](templates/040-ibm-aiservice-app.yaml) | aiservice | | | ✓ | | [`070-aiservice-tenant-appset.yaml`](templates/070-aiservice-tenant-appset.yaml) | ai-tenant-appset (ApplicationSet) | | | ✓ | diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 2cb856626..28bc7c44f 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "false" + install: "true" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -123,7 +123,7 @@ ibm_odh: # primary_storage_class: "nfs-client" ibm_rhoai: - install: "true" + install: "false" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From 5ec949e613fd3208188f033fec2d4dd4ded94dea Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 11 May 2026 11:04:19 +0530 Subject: [PATCH 41/45] [patch] Removed commented part --- .../ibm-aiservice-instance-root/values.yaml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 28bc7c44f..0aafacdef 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -109,19 +109,6 @@ ibm_odh: mas_aiservice_storage_ssl: "mas_aiservice_storage_ssl" mas_aiservice_storage_region: "mas_aiservice_storage_region" - # MariaDB - # mas_aiservice_db_host: "mas_aiservice_db_host" - # mas_aiservice_db_port: "mas_aiservice_db_port" - # mas_aiservice_db_user: "mas_aiservice_db_user" - # mas_aiservice_db_database: "mas_aiservice_db_database" - - # mas_aiservice_db_secret_key: "mas_aiservice_db_secret_key" - # mas_aiservice_db_secret_name: "mas_aiservice_db_secret_name" - # mas_aiservice_db_secret_value: "mas_aiservice_db_secret_value" - - # mas_aiservice_storage_pipelines_bucket: "mas_aiservice_storage_pipelines_bucket" - # primary_storage_class: "nfs-client" - ibm_rhoai: install: "false" openshift_namespace: "openshift-operators" From 69ee87c8375dae6568f21d8e25fad75484d3862b Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Mon, 11 May 2026 14:53:06 +0530 Subject: [PATCH 42/45] [patch] Added role-based conditions to RHOAI --- .../templates/01-rhoai-serverless-subscription.yaml | 2 ++ .../templates/02-rhoai-servicemesh-operator-sa.yaml | 3 +++ .../116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml | 2 ++ .../templates/04-rhoai-operator-subscription.yaml | 2 ++ .../116-ibm-rhoai/templates/05-rhoai-namespace.yaml | 3 +++ .../116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml | 2 ++ .../116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml | 2 ++ .../116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml | 2 ++ .../116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml | 3 +++ 9 files changed, 21 insertions(+) diff --git a/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml b/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml index 08780ebf8..387de9a04 100644 --- a/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml +++ b/instance-applications/116-ibm-rhoai/templates/01-rhoai-serverless-subscription.yaml @@ -1,3 +1,4 @@ +{{- if .Values.cluster_admin_role }} --- apiVersion: v1 kind: Namespace @@ -29,3 +30,4 @@ spec: name: {{ .Values.serverless_operator_name}} source: {{ .Values.serverless_operator_source}} sourceNamespace: {{ .Values.serverless_operator_sourceNamespace}} +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml b/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml index 381580940..eb924915a 100644 --- a/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml +++ b/instance-applications/116-ibm-rhoai/templates/02-rhoai-servicemesh-operator-sa.yaml @@ -1,3 +1,4 @@ +{{- if .Values.cluster_admin_role }} --- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription @@ -21,3 +22,5 @@ metadata: namespace: openshift-operators annotations: argocd.argoproj.io/sync-wave: "119" + +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml b/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml index 862ee7344..85bd7cdbd 100644 --- a/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml +++ b/instance-applications/116-ibm-rhoai/templates/03-rhoai-authorino-operator.yaml @@ -1,3 +1,4 @@ +{{- if .Values.cluster_admin_role }} --- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription @@ -11,3 +12,4 @@ spec: name: authorino-operator source: community-operators sourceNamespace: openshift-marketplace +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml b/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml index b4ccb06af..d3c3a1e53 100644 --- a/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml +++ b/instance-applications/116-ibm-rhoai/templates/04-rhoai-operator-subscription.yaml @@ -1,3 +1,4 @@ +{{- if .Values.cluster_admin_role }} --- apiVersion: v1 kind: Namespace @@ -29,3 +30,4 @@ spec: source: {{ .Values.rhoai_source}} sourceNamespace: {{ .Values.rhoai_sourceNamespace}} startingCSV: {{ .Values.rhoai_operator_version }} +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml index 9c4a6e250..8ed2e5dae 100644 --- a/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml +++ b/instance-applications/116-ibm-rhoai/templates/05-rhoai-namespace.yaml @@ -1,3 +1,4 @@ +{{- if .Values.cluster_admin_role }} --- apiVersion: v1 kind: Namespace @@ -8,3 +9,5 @@ metadata: # Prevent ArgoCD from deleting this namespace during RHOAI uninstall # This namespace is shared with ODH and must persist during migration argocd.argoproj.io/sync-options: Prune=false,Delete=false + +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml b/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml index 8e61d4993..96e825953 100644 --- a/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml +++ b/instance-applications/116-ibm-rhoai/templates/06-rhoai-dsc-init.yaml @@ -1,3 +1,4 @@ +{{- if .Values.application_admin_role }} --- apiVersion: dscinitialization.opendatahub.io/v1 kind: DSCInitialization @@ -35,3 +36,4 @@ spec: trustedCABundle: customCABundle: '' managementState: Managed +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml b/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml index 426c20bd8..9b0782cbc 100644 --- a/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml +++ b/instance-applications/116-ibm-rhoai/templates/07-rhoai-data-science-cluster.yaml @@ -1,3 +1,4 @@ +{{- if .Values.application_admin_role }} --- kind: DataScienceCluster apiVersion: datasciencecluster.opendatahub.io/v1 @@ -29,3 +30,4 @@ spec: {{- else }} managementState: Managed {{- end }} +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml b/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml index a2a8a0a33..b2460a09b 100644 --- a/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml +++ b/instance-applications/116-ibm-rhoai/templates/08-rhoai-istio-auth.yaml @@ -1,3 +1,4 @@ +{{- if .Values.application_admin_role }} --- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication @@ -27,3 +28,4 @@ spec: number: 8888 tls: mode: ISTIO_MUTUAL +{{- end }} diff --git a/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml b/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml index 2f2cfd35b..b191e97bc 100644 --- a/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml +++ b/instance-applications/116-ibm-rhoai/templates/09-rhoai-networkpolicy.yaml @@ -1,3 +1,4 @@ +{{- if .Values.application_admin_role }} --- apiVersion: networking.k8s.io/v1 kind: NetworkPolicy @@ -16,3 +17,5 @@ spec: - namespaceSelector: {} policyTypes: - Ingress + +{{- end }} From 65f8df0bb96c2ed8fa4976ef4f60d1bca68d04e8 Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Wed, 13 May 2026 22:31:57 +0530 Subject: [PATCH 43/45] [patch] Used action var --- .../ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml | 2 +- .../templates/031-ibm-rhoai-app.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml index 7c44bc495..0f7020beb 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml @@ -1,4 +1,4 @@ -{{- if and (not (empty .Values.ibm_odh)) (eq .Values.ibm_odh.install "true") }} +{{- if and (not (empty .Values.ibm_odh)) (eq .Values.odh.action "install") }} --- # IBM Maximo ODH apiVersion: argoproj.io/v1alpha1 diff --git a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml index 1c5316026..3e37eedd2 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml @@ -1,4 +1,4 @@ -{{- if and (not (empty .Values.ibm_rhoai)) (eq .Values.ibm_rhoai.install "true") }} +{{- if and (not (empty .Values.ibm_rhoai)) (eq .Values.rhoai.action "install") }} --- # IBM Maximo RHOAI (Red Hat OpenShift AI) apiVersion: argoproj.io/v1alpha1 From c79673d60e22950a081c3eef3f3f9a9bedf31b4a Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Thu, 14 May 2026 14:52:09 +0530 Subject: [PATCH 44/45] [patch] update odh/rhoai to action based var --- .../templates/030-ibm-odh-app.yaml | 2 +- .../templates/031-ibm-rhoai-app.yaml | 2 +- root-applications/ibm-aiservice-instance-root/values.yaml | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml index 0f7020beb..c7ddcffda 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/030-ibm-odh-app.yaml @@ -1,4 +1,4 @@ -{{- if and (not (empty .Values.ibm_odh)) (eq .Values.odh.action "install") }} +{{- if and (not (empty .Values.ibm_odh)) (eq .Values.ibm_odh.action "install") }} --- # IBM Maximo ODH apiVersion: argoproj.io/v1alpha1 diff --git a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml index 3e37eedd2..35e0458cd 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml @@ -1,4 +1,4 @@ -{{- if and (not (empty .Values.ibm_rhoai)) (eq .Values.rhoai.action "install") }} +{{- if and (not (empty .Values.ibm_rhoai)) (eq .Values.ibm_rhoai.action "install") }} --- # IBM Maximo RHOAI (Red Hat OpenShift AI) apiVersion: argoproj.io/v1alpha1 diff --git a/root-applications/ibm-aiservice-instance-root/values.yaml b/root-applications/ibm-aiservice-instance-root/values.yaml index 0aafacdef..2ffb8b533 100644 --- a/root-applications/ibm-aiservice-instance-root/values.yaml +++ b/root-applications/ibm-aiservice-instance-root/values.yaml @@ -65,7 +65,7 @@ ibm_minio: ibm_odh: - install: "true" + action: "uninstall" openshift_namespace: "openshift-operators" odh_pipeline_channel: "latest" odh_pipeline_installplan: "Automatic" @@ -110,7 +110,7 @@ ibm_odh: mas_aiservice_storage_region: "mas_aiservice_storage_region" ibm_rhoai: - install: "false" + action: "uninstall" openshift_namespace: "openshift-operators" rhoai_pipeline_channel: "latest" rhoai_pipeline_installplan: "Automatic" From c66c3e3660d70ad4070fd9162e04bfae9b147e2b Mon Sep 17 00:00:00 2001 From: Divyesh Khokhar Date: Fri, 15 May 2026 11:38:24 +0530 Subject: [PATCH 45/45] [patch] add rhoai application admin role in ArgoCD deployments --- .../templates/031-ibm-rhoai-app.yaml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml index 35e0458cd..a22f43a36 100644 --- a/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml +++ b/root-applications/ibm-aiservice-instance-root/templates/031-ibm-rhoai-app.yaml @@ -10,6 +10,9 @@ metadata: environment: '{{ .Values.account.id }}' region: '{{ .Values.region.id }}' cluster: '{{ .Values.cluster.id }}' + {{- if .Values.argo.instance }} + argocd.argoproj.io/instance: '{{ .Values.argo.instance }}' + {{- end }} instance: '{{ .Values.instance.id }}' annotations: argocd.argoproj.io/sync-wave: "031" @@ -35,6 +38,8 @@ spec: - name: {{ .Values.avp.values_varname }} value: | openshift_namespace: "{{ .Values.ibm_rhoai.openshift_namespace }}" + cluster_admin_role: {{ .Values.cluster_admin_role }} + application_admin_role: {{ .Values.application_admin_role }} rhoai_pipeline_name: "{{ .Values.ibm_rhoai.rhoai_pipeline_name }}" rhoai_pipeline_namespace: "{{ .Values.ibm_rhoai.rhoai_pipeline_namespace }}" rhoai_pipeline_operatorName: "{{ .Values.ibm_rhoai.rhoai_pipeline_operatorName }}" @@ -99,10 +104,17 @@ spec: retry: limit: 20 syncOptions: + {{- if .Values.cluster_admin_role }} - CreateNamespace=true -{{- if .Values.custom_labels }} + {{- end }} +{{- if or .Values.custom_labels .Values.argocluster_instance }} managedNamespaceMetadata: labels: + {{- if .Values.argocluster_instance }} + argocd.argoproj.io/managed-by: {{ .Values.argocluster_instance }} + {{- end }} + {{- if .Values.custom_labels }} {{ .Values.custom_labels | toYaml | indent 8 }} + {{- end }} {{- end }} {{- end }}