From 282bdafd491d8ce286fe13c40fbbc9379123f0d5 Mon Sep 17 00:00:00 2001 From: Samo Penic <samo.penic@gmail.com> Date: Fri, 20 Jan 2017 20:59:45 +0000 Subject: [PATCH] Again, wrong revert... --- trisurf/tsmgr.py | 45 +++++++++++++++++++++++++++++++-------------- 1 files changed, 31 insertions(+), 14 deletions(-) diff --git a/trisurf/tsmgr.py b/trisurf/tsmgr.py index 419c26b..0beaf73 100644 --- a/trisurf/tsmgr.py +++ b/trisurf/tsmgr.py @@ -15,10 +15,10 @@ else: from urlparse import urlparse from vtk import * - from . import VTKRendering + #import io -from IPython import embed +#from IPython import embed import __main__ as main @@ -55,6 +55,7 @@ parser.add_argument('-n', nargs='+', metavar='PROC_NO', type=int, help='OBSOLETE. Specifies process numbers.') parser.add_argument('-R','--raw',help='print status and the rest of the information in raw format', action="store_true") parser.add_argument('-x','--local-only',help='do not attempt to contact remote hosts. Run all operations only on local machine',action='store_true') + parser.add_argument('--originating-host',nargs=1,help='specify which host started the remote connections. Useful mainly fo internal functionaly of tsmgr and analyses.') args = parser.parse_args(arguments) return args @@ -79,7 +80,7 @@ for h in hosts: for r in h['runs']: if(r.isFromSnapshot): - file_list.append(r.snapshotFilename) + file_list.append(r.snapshotFile) else: file_list.append(r.tapeFilename) file_list.append(main.__file__) @@ -93,8 +94,12 @@ port=host['port'] except: port=22 #default ssh port - rm=Remote.Connection(hostname=host['address'],username=username, port=port) - rm.connect() + try: + rm=Remote.Connection(hostname=host['address'],username=username, port=port) + rm.connect() + except: + host['_conn']=None + continue # print ("Sendind file:"+main.__file__) if('remotebasepath' in host): remote_dir=host['remotebasepath'] @@ -130,6 +135,7 @@ def status_processes(args,host): + print("in status processes") target_runs=getTargetRunIdxList(args) if target_runs==None: target_runs=list(range(1,len(host['runs'])+1)) @@ -255,12 +261,16 @@ def preview_vtu(args,host): - #only for localhost at the moment - if sys.version_info>=(3,0): - print("Preview works only with python 2.7") - exit(1) + from . import VTKRendering + target_runs=getTargetRunIdxList(args) + if target_runs==None: + target_runs=list(range(1,len(host['runs'])+1)) if host['name'] == socket.gethostname(): - VTKRendering.Renderer(args,host) + for i in target_runs: + VTKRendering.Renderer(args,host,host['runs'][i-1]) + else: + print("VTK rendering currently works on localhost only!") + def getListOfHostConfigurationByHostname(hosts,host): rhost=[] @@ -305,16 +315,23 @@ remote_dir=host['remotebasepath'] else: remote_dir='trisurf_simulations' - output=host['_conn'].execute('python3 ./'+remote_dir+'/'+main.__file__+' -x '+" ".join(argv)) - for line in output: - print(line.replace('\n','')) + #output=host['_conn'].execute('cd '+remote_dir) + #print(remote_dir) + #print(main.__file__) + #print('python3 '+main.__file__+' -x '+" ".join(argv)) + if(host['_conn']!=None): +# print("was here, "+'cd '+remote_dir+ '; python3 '+main.__file__+' -x --originating-host ' +socket.gethostname()+" "+" ".join(argv)) + output=host['_conn'].execute('cd '+remote_dir+ '; python3 '+main.__file__+' -x --originating-host ' +socket.gethostname()+" "+" ".join(argv)) + for line in output: + print(line.replace('\n','')) if not args['local_only']: print("Closing connections to remote hosts") for host in hosts: if(host['name'] !=socket.gethostname()): - host['_conn'].disconnect() + if(host['_conn']): + host['_conn'].disconnect() -- Gitblit v1.9.3