ansible-devops
ansible-devops copied to clipboard
aiservice-odh role failed determine the default storage class.
Feature and motivation
When the AI Service is installed in a cluster running managed-nfs-storage as the default storage class, the AI Service fails in the role "aiservice_odh" because it cannot determine the default storage class.
$ oc get sc
# oc get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
managed-nfs-storage (default) nfs/provisioner Delete Immediate false 36h
The above output clearly indicates that OpenShift's default storage class was returned.
Error:
TASK [ibm.mas_devops.aiservice_odh : default-storage-classes : Lookup default storage classes] ***
ok: [localhost] => changed=false
message: Failed to find any default supported storage classes
provider: null
providerName: null
rwo: null
rwx: null
success: false
TASK [ibm.mas_devops.aiservice_odh : default-storage-classes : Debug default storage classes] ***
ok: [localhost] =>
msg:
- 'Provider ............................... '
- 'Default RWX ............................ '
- 'Default RWO ............................ '
TASK [ibm.mas_devops.aiservice_odh : determine-storage-classes : Default Primary Storage if not set by user] ***
ok: [localhost] => changed=false
ansible_facts:
primary_storage_class: ''
TASK [ibm.mas_devops.aiservice_odh : determine-storage-classes : Assert that primary storage class has been defined] ***
fatal: [localhost]: FAILED! => changed=false
assertion: primary_storage_class is defined and primary_storage_class != ""
evaluated_to: false
msg: primary_storage_class must be defined
NO MORE HOSTS LEFT *************************************************************
PLAY RECAP *********************************************************************
localhost : ok=9 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
The same issue is also faced with the Ansible playbook.
Usage example
This is to enable the DevOps playbook to work with any default storage classes.