@@ -251,7 +251,7 @@ def fix_missing(config_file, verbose=True):
251
251
'user_davs_log' : 'davs.log' ,
252
252
'user_ftps_address' : fqdn ,
253
253
'user_ftps_ctrl_port' : 8021 ,
254
- 'user_ftps_pasv_ports' : range (8100 , 8400 ),
254
+ 'user_ftps_pasv_ports' : list ( range (8100 , 8400 ) ),
255
255
'user_ftps_key' : '~/certs/combined.pem' ,
256
256
'user_ftps_key_sha256' : '' ,
257
257
'user_ftps_auth' : ['password' ],
@@ -516,7 +516,7 @@ class Configuration:
516
516
user_davs_log = 'davs.log'
517
517
user_ftps_address = ''
518
518
user_ftps_ctrl_port = 8021
519
- user_ftps_pasv_ports = range (8100 , 8400 )
519
+ user_ftps_pasv_ports = list ( range (8100 , 8400 ) )
520
520
user_ftps_show_address = ''
521
521
user_ftps_show_ctrl_port = 8021
522
522
user_ftps_key = ''
@@ -609,7 +609,7 @@ class Configuration:
609
609
vm_client_port = 8111
610
610
vm_applet_port = 8114
611
611
# Interactive job VNC port
612
- job_vnc_ports = range (8080 , 8099 )
612
+ job_vnc_ports = list ( range (8080 , 8099 ) )
613
613
enable_server_dist = False
614
614
sleep_secs = 0
615
615
sleep_update_totals = 0
@@ -687,10 +687,13 @@ class Configuration:
687
687
688
688
def __init__ (self , config_file , verbose = False , skip_log = False ,
689
689
disable_auth_log = False ):
690
- self .config_file = config_file
691
- self .reload_config (verbose , skip_log , disable_auth_log )
690
+ if config_file is not None :
691
+ self .reload_config (verbose , skip_log ,
692
+ disable_auth_log = disable_auth_log ,
693
+ _config_file = config_file )
692
694
693
- def reload_config (self , verbose , skip_log = False , disable_auth_log = False ):
695
+ def reload_config (self , verbose , skip_log = False , disable_auth_log = False ,
696
+ _config_file = None ):
694
697
"""Re-read and parse configuration file. Optional skip_log arg
695
698
initializes default logger(s) to use the NullHandler in order to
696
699
avoid uninitialized log while not really touching log files or causing
@@ -702,13 +705,23 @@ def reload_config(self, verbose, skip_log=False, disable_auth_log=False):
702
705
NEVER be set in code used for production.
703
706
"""
704
707
708
+ _config_file = _config_file or self .config_file
709
+ assert _config_file is not None
710
+
705
711
try :
706
712
if self .logger :
707
713
self .logger .info ('reloading configuration and reopening log' )
708
714
except :
709
715
pass
710
716
711
- if not os .path .isfile (self .config_file ):
717
+ try :
718
+ config_file_is_path = os .path .isfile (_config_file )
719
+ except TypeError :
720
+ config_file_is_path = False
721
+
722
+ if config_file_is_path :
723
+ self .config_file = _config_file
724
+ else :
712
725
print ("""Could not find your configuration file (%s). You might
713
726
need to point the MIG_CONF environment to your actual MiGserver.conf
714
727
location.""" % self .config_file )
@@ -1226,7 +1239,8 @@ def reload_config(self, verbose, skip_log=False, disable_auth_log=False):
1226
1239
text_range = config .get ('GLOBAL' , 'user_ftps_pasv_ports' )
1227
1240
parts = text_range .split (':' , 2 )
1228
1241
if parts [1 :]:
1229
- self .user_ftps_pasv_ports = range (int (parts [0 ]), int (parts [1 ]))
1242
+ self .user_ftps_pasv_ports = list (range (int (parts [0 ]),
1243
+ int (parts [1 ])))
1230
1244
else :
1231
1245
self .logger .warning ("Ignore invalid user_ftps_pasv_ports: %s" %
1232
1246
text_range )
@@ -1533,7 +1547,7 @@ def reload_config(self, verbose, skip_log=False, disable_auth_log=False):
1533
1547
if config .has_option ('GLOBAL' , 'job_vnc_ports' ):
1534
1548
text_range = config .get ('GLOBAL' , 'job_vnc_ports' )
1535
1549
first , last = text_range .split (':' )[:2 ]
1536
- self .job_vnc_ports = range (int (first ), int (last ))
1550
+ self .job_vnc_ports = list ( range (int (first ), int (last ) ))
1537
1551
if config .has_option ('GLOBAL' , 'user_shared_dhparams' ):
1538
1552
self .user_shared_dhparams = config .get ('GLOBAL' ,
1539
1553
'user_shared_dhparams' )
0 commit comments