@@ -97,9 +97,10 @@ def wrapper(*args: Any, **kwargs: Any) -> threading.Thread:
9797
9898
9999class DefaultFetcher ():
100- def __init__ (self , storage_class : str , coreV1_api : 'client.CoreV1Api' ):
100+ def __init__ (self , storage_class : str , coreV1_api : 'client.CoreV1Api' , rook_env : 'RookEnv' ):
101101 self .storage_class = storage_class
102102 self .coreV1_api = coreV1_api
103+ self .rook_env = rook_env
103104
104105 def fetch (self ) -> None :
105106 self .inventory : KubernetesResource [client .V1PersistentVolumeList ] = KubernetesResource (self .coreV1_api .list_persistent_volume )
@@ -151,8 +152,8 @@ def device(self, i: 'client.V1PersistentVolume') -> Tuple[str, Device]:
151152
152153
153154class LSOFetcher (DefaultFetcher ):
154- def __init__ (self , storage_class : 'str' , coreV1_api : 'client.CoreV1Api' , customObjects_api : 'client.CustomObjectsApi' , nodenames : 'Optional[List[str]]' = None ):
155- super ().__init__ (storage_class , coreV1_api )
155+ def __init__ (self , storage_class : 'str' , coreV1_api : 'client.CoreV1Api' , rook_env : 'RookEnv' , customObjects_api : 'client.CustomObjectsApi' , nodenames : 'Optional[List[str]]' = None ):
156+ super ().__init__ (storage_class , coreV1_api , rook_env )
156157 self .customObjects_api = customObjects_api
157158 self .nodenames = nodenames
158159
@@ -219,13 +220,13 @@ def device(self, i: Any) -> Tuple[str, Device]:
219220
220221class PDFetcher (DefaultFetcher ):
221222 """ Physical Devices Fetcher"""
222- def __init__ (self , coreV1_api : 'client.CoreV1Api' ):
223- self . coreV1_api = coreV1_api
223+ def __init__ (self , coreV1_api : 'client.CoreV1Api' , rook_env : 'RookEnv' ):
224+ super (). __init__ ( '' , coreV1_api , rook_env )
224225
225226 def fetch (self ) -> None :
226227 """ Collect the devices information from k8s configmaps"""
227228 self .dev_cms : KubernetesResource = KubernetesResource (self .coreV1_api .list_namespaced_config_map ,
228- namespace = 'rook-ceph' ,
229+ namespace = self . rook_env . operator_namespace ,
229230 label_selector = 'app=rook-discover' )
230231
231232 def devices (self ) -> Dict [str , List [Device ]]:
@@ -759,15 +760,15 @@ def get_storage_class(self) -> 'client.V1StorageClass':
759760
760761 def get_discovered_devices (self , nodenames : Optional [List [str ]] = None ) -> Dict [str , List [Device ]]:
761762 self .fetcher : Optional [DefaultFetcher ] = None
762- op_settings = self .coreV1_api .read_namespaced_config_map (name = "rook-ceph-operator-config" , namespace = 'rook-ceph' ).data
763+ op_settings = self .coreV1_api .read_namespaced_config_map (name = "rook-ceph-operator-config" , namespace = self . rook_env . operator_namespace ).data
763764 if op_settings .get ('ROOK_ENABLE_DISCOVERY_DAEMON' , 'false' ).lower () == 'true' :
764- self .fetcher = PDFetcher (self .coreV1_api )
765+ self .fetcher = PDFetcher (self .coreV1_api , self . rook_env )
765766 else :
766767 storage_class = self .get_storage_class ()
767768 if storage_class .metadata .labels and ('local.storage.openshift.io/owner-name' in storage_class .metadata .labels ):
768769 self .fetcher = LSOFetcher (self .storage_class , self .coreV1_api , self .customObjects_api , nodenames )
769770 else :
770- self .fetcher = DefaultFetcher (self .storage_class , self .coreV1_api )
771+ self .fetcher = DefaultFetcher (self .storage_class , self .coreV1_api , self . rook_env )
771772
772773 self .fetcher .fetch ()
773774 return self .fetcher .devices ()
0 commit comments