Modified runsics.py so that status checking works with Python 2.6.6 on SL6
This was done by replacing subprocess.check_output() with subprocess.Popen().communicate().
This commit is contained in:
@@ -56,7 +56,7 @@ def start_cmd(server, args):
|
|||||||
execenv.update(sicsenv['scriptval'])
|
execenv.update(sicsenv['scriptval'])
|
||||||
else:
|
else:
|
||||||
execenv.update(sicsenv[args.test])
|
execenv.update(sicsenv[args.test])
|
||||||
start_str = 'sudo -Eu %s %s/SICServer -d %s' % (args.user, args.dir, args.config)
|
start_str = 'sudo -u %s %s/SICServer -d %s' % (args.user, args.dir, args.config)
|
||||||
# Suppress output if launching the script validator
|
# Suppress output if launching the script validator
|
||||||
if (server == 'scriptval'):
|
if (server == 'scriptval'):
|
||||||
with open(os.devnull) as fp:
|
with open(os.devnull) as fp:
|
||||||
@@ -82,13 +82,13 @@ def stop_cmd(server, args):
|
|||||||
if status_cmd(server, args):
|
if status_cmd(server, args):
|
||||||
print 'Failed to stop %s' % server
|
print 'Failed to stop %s' % server
|
||||||
print 'Try harder dammit!'
|
print 'Try harder dammit!'
|
||||||
subprocess.call(shlex.split('sudo -Eu root killall SICServer'))
|
subprocess.call(shlex.split('sudo -u root killall SICServer'))
|
||||||
else:
|
else:
|
||||||
return
|
return
|
||||||
if status_cmd(server, args):
|
if status_cmd(server, args):
|
||||||
print 'Failed again!'
|
print 'Failed again!'
|
||||||
print 'Die damn you! DIE!!'
|
print 'Die damn you! DIE!!'
|
||||||
subprocess.call(shlex.split('sudo -Eu root killall -s15 SICServer'))
|
subprocess.call(shlex.split('sudo -u root killall -s15 SICServer'))
|
||||||
else:
|
else:
|
||||||
return
|
return
|
||||||
if status_cmd(server, args):
|
if status_cmd(server, args):
|
||||||
@@ -101,9 +101,12 @@ def status_cmd(server, args):
|
|||||||
sock = server_port[server]['server']
|
sock = server_port[server]['server']
|
||||||
else:
|
else:
|
||||||
sock = server_port[server]['server'] + inst_test_sockoffset[args.sockoffset]
|
sock = server_port[server]['server'] + inst_test_sockoffset[args.sockoffset]
|
||||||
status_cmd = 'sudo -Eu %s netstat -nltp' % args.user
|
status_cmd = 'sudo -u %s netstat -nltp' % 'root'
|
||||||
with open(os.devnull) as fp:
|
netstat_str, err = subprocess.Popen(shlex.split(status_cmd), stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()
|
||||||
netstat_str = subprocess.check_output(shlex.split(status_cmd), stderr=fp)
|
# ffr: We can replace the previous Popen().communicate() line with the following two lines if Python is upgraded to V2.7
|
||||||
|
# with open(os.devnull) as fp:
|
||||||
|
# netstat_str = subprocess.check_output(shlex.split(status_cmd), stderr=fp)
|
||||||
|
#
|
||||||
#Find PID of SICServer listening on server port
|
#Find PID of SICServer listening on server port
|
||||||
m = re.search(':%d .* (\d+)\/SICServer' % sock, netstat_str)
|
m = re.search(':%d .* (\d+)\/SICServer' % sock, netstat_str)
|
||||||
if m:
|
if m:
|
||||||
|
|||||||
Reference in New Issue
Block a user