@@ -130,6 +130,15 @@ def _get_phase_func_wrapper(workspace, phase_func, phase_name):
130
130
return profiler (phase_func )
131
131
132
132
133
+ def _canonical_none (maybe_none ):
134
+ """Convert a small set of "none-looking" inputs to None"""
135
+ if maybe_none == "" :
136
+ return None
137
+ if isinstance (maybe_none , str ) and maybe_none .lower () == "none" :
138
+ return None
139
+ return maybe_none
140
+
141
+
133
142
class ApplicationBase (metaclass = ApplicationMeta ):
134
143
name = None
135
144
_builtin_name = NS_SEPARATOR .join (("builtin" , "{name}" ))
@@ -280,8 +289,8 @@ def set_variants(self, variants):
280
289
281
290
def _set_package_manager (self ):
282
291
if namespace .package_manager in self .variants :
283
- pkgman_name = self . expander . expand_var (
284
- self .variants [namespace .package_manager ], typed = True
292
+ pkgman_name = _canonical_none (
293
+ self .expander . expand_var ( self . variants [namespace .package_manager ], typed = True )
285
294
)
286
295
287
296
if pkgman_name is not None :
@@ -310,18 +319,18 @@ def _set_package_manager(self):
310
319
311
320
def _set_workflow_manager (self ):
312
321
if namespace .workflow_manager in self .variants :
313
- workflow_name = self . expander . expand_var (
314
- self .variants [namespace .workflow_manager ], typed = True
322
+ wm_name = _canonical_none (
323
+ self .expander . expand_var ( self . variants [namespace .workflow_manager ], typed = True )
315
324
)
316
325
317
- if workflow_name is not None :
326
+ if wm_name is not None :
318
327
try :
319
328
wfman_type = ramble .repository .ObjectTypes .workflow_managers
320
- self .workflow_manager = ramble .repository .get (workflow_name , wfman_type ).copy ()
329
+ self .workflow_manager = ramble .repository .get (wm_name , wfman_type ).copy ()
321
330
self .workflow_manager .set_application (self )
322
331
except ramble .repository .UnknownObjectError :
323
332
logger .die (
324
- f"{ workflow_name } is not a valid workflow manager. "
333
+ f"{ wm_name } is not a valid workflow manager. "
325
334
"Valid workflow managers can be listed via:\n "
326
335
"\t ramble list --type workflow_managers"
327
336
)
0 commit comments