Salome HOME
Fix a long-standing problem with passing wrong values to the --standalone or --embedd...
[modules/kernel.git] / src / Batch_SWIG / Batch_test.py
1 # Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
2 #           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either 
6 # version 2.1 of the License.
7
8 # This library is distributed in the hope that it will be useful 
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of 
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
11 # Lesser General Public License for more details.
12
13 # You should have received a copy of the GNU Lesser General Public  
14 # License along with this library; if not, write to the Free Software 
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18
19 #Batch_test.py
20
21 # pratique
22 import readline
23 import rlcompleter
24 readline.parse_and_bind('tab: complete')
25
26 # Importation de la bibliotheque de classes Batch
27 from libBatch_Swig import *
28
29 def work():
30     # Definition d'un job...
31     job=Job()
32     # ... de ses parametres ...
33     p={}
34     p['EXECUTABLE']='/home/dutka/tmp/job'
35     p['NAME']='MonJob'
36     p['OUTFILE']=[('/tmp/stdout', 'stdout'), ('/tmp/stderr', 'stderr')]
37     job.setParametre(p)
38     # ... et de son environnement
39     job.setEnvironnement({})
40     print job
41
42     # Appel au catalogue de BatchManager pour accĂ©der au serveur cli70cu
43     # Instanciation du catalogue (quasi-singleton)
44     c=BatchManagerCatalog()
45     # Instanciation d'une Factory de BatchManager de type 'PBS'
46     # fbm=c('PBS')
47
48     # Creation d'un BatchManager de type PBS sur le serveur cli70cu
49     bm=c('PBS')('cli70cu')
50
51     # Soumission du job au BatchManager
52     jobid=bm.submitJob(job)
53     print jobid
54
55     # Interrogation de l'etat du job
56     jobid.queryJob()
57
58     # On attend que le job soit termine
59     try:
60         while 1: jinfo = jobid.queryJob()
61     except:
62         print "Job", jobid, "is done"
63
64     pass
65
66 if __name__ == "__main__":
67     work()
68     pass
69
70
71