@@ -11,6 +11,7 @@ PREVIOUS_VERSION ?= v0.0.0-dev
11
11
VERSION ?= v0.0.0-dev
12
12
BUNDLE_VERSION ?= $(VERSION:v%=% )
13
13
14
+ USE_RHOAI ?= true
14
15
# KUBERAY_VERSION defines the default version of the KubeRay operator (used for testing)
15
16
KUBERAY_VERSION ?= v1.1.0
16
17
@@ -396,3 +397,120 @@ image-mnist-job-test-build: ## Build container image with the MNIST job.
396
397
.PHONY : image-mnist-job-test-push
397
398
image-mnist-job-test-push : image-mnist-job-test-build # # Push container image with the MNIST job.
398
399
podman push ${MNIST_JOB_TEST_IMG}
400
+
401
+ # RHOAI/ODH related resources installation
402
+
403
+ # #@ all-in-one
404
+ .PHONY : all-in-one
405
+ all-in-one :
406
+ @echo -e " \n ==> Installing Everything needed for distributed AI platform on OpenShift cluster \n"
407
+ -make delete-nfd-operator
408
+ -make delete-ai-platform-operator
409
+ -make delete-nvidia-operator
410
+ -make install-ai-platform-operator
411
+ -make install-nfd-operator
412
+ -make install-nvidia-operator
413
+
414
+ .PHONY : delete-all-in-one
415
+ delete-all-in-one :
416
+ @echo -e " \n ==> Removing Everything needed for distributed AI platform on OpenShift cluster \n"
417
+ -make delete-rhoai
418
+ -make delete-nfd-operator
419
+ -make delete-nvidia-operator
420
+ -make delete-ai-platform-operator
421
+
422
+ # #@ general
423
+ .PHONY : delete-ai-platform-operator
424
+ delete-ai-platform-operator :
425
+ ifeq ($(USE_RHOAI ) , true) # # Delete RHOAI Operator
426
+ -make delete-rhoai-operator
427
+ else ## Delete Open Data Hub Operator
428
+ -make delete-opendatahub-operator
429
+ endif
430
+
431
+ .PHONY : install-ai-platform-operator
432
+ install-ai-platform-operator :
433
+ ifeq ($(USE_RHOAI ) , true) # # Delete RHOAI Operator
434
+ -make install-rhoai-operator
435
+ else ## Delete Open Data Hub Operator
436
+ -make install-opendatahub-operator
437
+ endif
438
+
439
+ .PHONY : delete-rhoai-operator
440
+ delete-rhoai-operator : # # Delete RHOAI Operator
441
+ @echo -e " \n==> Deleting OpenShift AI Operator \n"
442
+ -oc delete subscription rhods-operator -n redhat-ods-operator
443
+ -export CLUSTER_SERVICE_VERSION=` oc get clusterserviceversion -n redhat-ods-operator -l operators.coreos.com/rhods-operator.redhat-ods-operator -o custom-columns=:metadata.name` ; \
444
+ oc delete clusterserviceversion $$ CLUSTER_SERVICE_VERSION -n redhat-ods-operator
445
+
446
+ .PHONY : install-rhoai-operator
447
+ install-rhoai-operator : # # Install RHOAI Operator
448
+ @echo -e " \n==> Installing OpenShift AI Operator \n"
449
+ -oc create ns redhat-ods-operator
450
+ oc create -f contrib/configuration/rhoai-operator-subscription.yaml
451
+ @echo Waiting for rhoai-operator Subscription to be ready
452
+ oc wait -n redhat-ods-operator subscription/rhods-operator --for=jsonpath=' {.status.state}' =AtLatestKnown --timeout=180s
453
+ @echo -e " \n==> Creating default Data Science Cluster \n"
454
+ oc apply -f contrib/configuration/default-dsc.yaml
455
+
456
+ .PHONY : delete-opendatahub-operator
457
+ delete-opendatahub-operator : # # Delete OpenDataHub operator
458
+ @echo -e " \n==> Deleting OpenDataHub Operator \n"
459
+ -oc delete subscription opendatahub-operator -n openshift-operators
460
+ -export CLUSTER_SERVICE_VERSION=` oc get clusterserviceversion -n openshift-operators -l operators.coreos.com/opendatahub-operator.openshift-operators -o custom-columns=:metadata.name` ; \
461
+ oc delete clusterserviceversion $$ CLUSTER_SERVICE_VERSION -n openshift-operators
462
+
463
+ .PHONY : install-opendatahub-operator
464
+ install-opendatahub-operator : # # Install OpenDataHub operator
465
+ @echo -e " \n==> Installing OpenDataHub Operator \n"
466
+ -oc create ns opendatahub
467
+ oc create -f contrib/configuration/opendatahub-operator-subscription.yaml
468
+ @echo Waiting for opendatahub-operator Subscription to be ready
469
+ oc wait -n openshift-operators subscription/opendatahub-operator --for=jsonpath=' {.status.state}' =AtLatestKnown --timeout=180s
470
+
471
+ # #@ GPU Support
472
+ .PHONY : install-nfd-operator
473
+ install-nfd-operator : # # Install NFD operator ( Node Feature Discovery )
474
+ @echo -e " \n==> Installing NFD Operator \n"
475
+ -oc create ns openshift-nfd
476
+ oc create -f contrib/configuration/nfd-operator-subscription.yaml
477
+ @echo -e " \n==> Creating default NodeFeatureDiscovery CR \n"
478
+ @while [[ -z $$ (oc get customresourcedefinition nodefeaturediscoveries.nfd.openshift.io) ]]; do echo " ." ; sleep 10; done
479
+ @while [[ -z $$ (oc get csv -n openshift-nfd --selector operators.coreos.com/nfd.openshift-nfd) ]]; do echo " ." ; sleep 10; done
480
+ oc get csv -n openshift-nfd --selector operators.coreos.com/nfd.openshift-nfd -ojsonpath={.items[0].metadata.annotations.alm-examples} | jq ' .[] | select(.kind=="NodeFeatureDiscovery")' | oc apply -f -
481
+
482
+ .PHONY : delete-nfd-operator
483
+ delete-nfd-operator : # # Delete NFD operator
484
+ @echo -e " \n==> Deleting NodeFeatureDiscovery CR \n"
485
+ oc delete NodeFeatureDiscovery --all -n openshift-nfd
486
+ @while [[ -n $$ (oc get NodeFeatureDiscovery -n openshift-nfd) ]]; do echo " ." ; sleep 10; done
487
+ @echo -e " \n==> Deleting NFD Operator \n"
488
+ -oc delete subscription nfd -n openshift-nfd
489
+ -export CLUSTER_SERVICE_VERSION=` oc get clusterserviceversion -n openshift-nfd -l operators.coreos.com/nfd.openshift-nfd -o custom-columns=:metadata.name` ; \
490
+ oc delete clusterserviceversion $$ CLUSTER_SERVICE_VERSION -n openshift-nfd
491
+ -oc delete ns openshift-nfd
492
+
493
+ .PHONY : install-nvidia-operator
494
+ install-nvidia-operator : # # Install nvidia operator
495
+ @echo -e " \n==> Installing nvidia Operator \n"
496
+ -oc create ns nvidia-gpu-operator
497
+ oc create -f contrib/configuration/nvidia-operator-subscription.yaml
498
+ @echo -e " \n==> Creating default ClusterPolicy CR \n"
499
+ @while [[ -z $$ (oc get customresourcedefinition clusterpolicies.nvidia.com) ]]; do echo " ." ; sleep 10; done
500
+ @while [[ -z $$ (oc get csv -n nvidia-gpu-operator --selector operators.coreos.com/gpu-operator-certified.nvidia-gpu-operator) ]]; do echo " ." ; sleep 10; done
501
+ oc get csv -n nvidia-gpu-operator --selector operators.coreos.com/gpu-operator-certified.nvidia-gpu-operator -ojsonpath={.items[0].metadata.annotations.alm-examples} | jq .[] | oc apply -f -
502
+ # ifeq ($(USE_RHOAI), true) ## Delete RHOAI Operator
503
+ # oc delete configmap migration-gpu-status -n redhat-ods-applications
504
+ # -export REPLICASET_NAME=`oc get replicaset -n redhat-ods-applications -l app=rhods-dashboard -o custom-columns=:metadata.name`
505
+ # oc delete replicaset $$REPLICASET_NAME -n redhat-ods-applications
506
+ # endif
507
+ .PHONY : delete-nvidia-operator
508
+ delete-nvidia-operator : # # Delete nvidia operator
509
+ @echo -e " \n==> Deleting ClusterPolicy CR \n"
510
+ oc delete ClusterPolicy --all -n nvidia-gpu-operator
511
+ @while [[ -n $$ (oc get ClusterPolicy -n nvidia-gpu-operator) ]]; do echo " ." ; sleep 10; done
512
+ @echo -e " \n==> Deleting nvidia Operator \n"
513
+ -oc delete subscription gpu-operator-certified -n nvidia-gpu-operator
514
+ -export CLUSTER_SERVICE_VERSION=` oc get clusterserviceversion -n nvidia-gpu-operator -l operators.coreos.com/gpu-operator-certified.nvidia-gpu-operator -o custom-columns=:metadata.name` ; \
515
+ oc delete clusterserviceversion $$ CLUSTER_SERVICE_VERSION -n nvidia-gpu-operator
516
+ -oc delete ns nvidia-gpu-operator
0 commit comments