@@ -412,8 +412,8 @@ def __parseCommandLine(self):
412
412
413
413
groupArgs = []
414
414
step = 0
415
- for i in range ( len ( self .commandArgumentList ) ):
416
- argMarking , description , mandatory , values , default = self . commandArgumentList [ i ]
415
+ for i , commandArgument in enumerate ( self .commandArgumentList ):
416
+ argMarking , description , mandatory , values , default = commandArgument
417
417
418
418
# Check whether the required arguments are given in the command line
419
419
if len (self .commandArgList ) <= (i + step ):
@@ -433,7 +433,7 @@ def __parseCommandLine(self):
433
433
if values and cArg not in values :
434
434
gLogger .fatal (
435
435
"Error when parsing command line arguments: "
436
- '"%s " does not match the allowed values for %s' % ( cArg , argMarking )
436
+ f'" { cArg } " does not match the allowed values for { argMarking } '
437
437
)
438
438
self .showHelp (exitCode = 1 )
439
439
@@ -444,30 +444,51 @@ def __parseCommandLine(self):
444
444
def __loadCFGFiles (self ):
445
445
"""
446
446
Loads possibly several cfg files, in order:
447
- 1. ~/.dirac. cfg
448
- 2. cfg files pointed by DIRACSYSCONFIG env variable (comma-separated)
447
+ 1. cfg files pointed by DIRACSYSCONFIG env variable (comma-separated)
448
+ 2. ~/.dirac. cfg
449
449
3. cfg files specified in addCFGFile calls
450
450
4. cfg files that come from the command line
451
451
"""
452
452
errorsList = []
453
+ foundCFGFile = False
454
+
455
+ # 1. $DIRACSYSCONFIG
453
456
if "DIRACSYSCONFIG" in os .environ :
454
457
diracSysConfigFiles = os .environ ["DIRACSYSCONFIG" ].replace (" " , "" ).split ("," )
455
458
for diracSysConfigFile in reversed (diracSysConfigFiles ):
456
459
gLogger .debug (f"Loading file from DIRACSYSCONFIG { diracSysConfigFile } " )
460
+ if os .path .isfile (diracSysConfigFile ):
461
+ foundCFGFile = True
457
462
gConfigurationData .loadFile (diracSysConfigFile )
463
+
464
+ # 2. ~/.dirac.cfg
465
+ if os .path .isfile (os .path .expanduser ("~/.dirac.cfg" )):
466
+ foundCFGFile = True
458
467
gConfigurationData .loadFile (os .path .expanduser ("~/.dirac.cfg" ))
468
+
469
+ # 3. cfg files specified in addCFGFile calls
459
470
for fileName in self .additionalCFGFiles :
460
- gLogger .debug (f"Loading file { fileName } " )
471
+ if os .path .isfile (fileName ):
472
+ foundCFGFile = True
473
+ gLogger .debug (f"Loading file { fileName } " )
461
474
retVal = gConfigurationData .loadFile (fileName )
462
475
if not retVal ["OK" ]:
463
476
gLogger .debug (f"Could not load file { fileName } : { retVal ['Message' ]} " )
464
477
errorsList .append (retVal ["Message" ])
478
+
479
+ # 4. cfg files that come from the command line
465
480
for fileName in self .cliAdditionalCFGFiles :
466
- gLogger .debug (f"Loading file { fileName } " )
481
+ if os .path .isfile (fileName ):
482
+ foundCFGFile = True
483
+ gLogger .debug (f"Loading file { fileName } " )
467
484
retVal = gConfigurationData .loadFile (fileName )
468
485
if not retVal ["OK" ]:
469
486
gLogger .debug (f"Could not load file { fileName } : { retVal ['Message' ]} " )
470
487
errorsList .append (retVal ["Message" ])
488
+
489
+ if not foundCFGFile :
490
+ gLogger .warn ("No CFG file loaded, was that intentional?" )
491
+
471
492
return errorsList
472
493
473
494
def __addUserDataToConfiguration (self ):
0 commit comments