only test the pg rspec_style
[tests.git] / system / TestMain.py
index bf5096e..3fa6816 100755 (executable)
@@ -90,7 +90,8 @@ class TestMain:
     subversion_id = "Now using git -- version tracker broken"
 
     default_config = [ 'default' ] 
-    default_rspec_styles = [ 'pl', 'pg' ]
+#    default_rspec_styles = [ 'pl', 'pg' ]
+    default_rspec_styles = [ 'pg' ]
 
     default_build_url = "git://git.onelab.eu/tests"
 
@@ -173,10 +174,6 @@ steps refer to a method in TestPlc or to a step_* module
                           help="Specify the set of hostnames for the boxes that host the nodes")
         parser.add_option("-N","--nodes",action="append", dest="ips_vnode", default=[],
                           help="Specify the set of hostname/IP's to use for vnodes")
-        parser.add_option ('-X', "--lxc",action='store_true',dest='plcs_use_lxc',default=True,
-                           help='use lxc-enabled plc boxes instead of vs-enabled ones')
-        parser.add_option ('-S', "--vs",action='store_false',dest='plcs_use_lxc',
-                           help='use lxc-enabled plc boxes instead of vs-enabled ones')
         parser.add_option("-s","--size",action="store",type="int",dest="size",default=1,
                           help="sets test size in # of plcs - default is 1")
         parser.add_option("-q","--qualifier",action="store",type="int",dest="qualifier",default=None,
@@ -228,7 +225,6 @@ steps refer to a method in TestPlc or to a step_* module
             ('personality','arg-personality',"linux64",None),
             ('pldistro','arg-pldistro',"onelab",None),
             ('fcdistro','arg-fcdistro','f14',None),
-            ('plcs_use_lxc','arg-plcs-use-lxc',False,None),
             ) :
 #            print 'handling',recname
             path=filename
@@ -286,7 +282,7 @@ steps refer to a method in TestPlc or to a step_* module
         if self.options.list_steps:
             self.init_steps()
             self.list_steps()
-            return True
+            return 'SUCCESS'
 
         # steps
         if not self.options.steps:
@@ -299,6 +295,7 @@ steps refer to a method in TestPlc or to a step_* module
         self.options.exclude = [ step.replace('-','_') for step in self.options.exclude ]
         self.options.ignore = [ step.replace('-','_') for step in self.options.ignore ]
 
+        # technicality, decorate known steps to produce the '_ignore' version
         TestPlc.create_ignore_steps()
 
         # exclude
@@ -336,7 +333,6 @@ steps refer to a method in TestPlc or to a step_* module
                 raise
 
         # provision on local substrate
-        if self.options.plcs_use_lxc: LocalSubstrate.local_substrate.rescope (plcs_on_vs=False, plcs_on_lxc=True)
         all_plc_specs = LocalSubstrate.local_substrate.provision(all_plc_specs,self.options)
 
         # remember substrate IP address(es) for next run
@@ -346,7 +342,7 @@ steps refer to a method in TestPlc or to a step_* module
         ips_bplc_file.close()
         ips_vplc_file=open('arg-ips-vplc','w')
         for plc_spec in all_plc_specs:
-            ips_vplc_file.write("%s\n"%plc_spec['PLC_API_HOST'])
+            ips_vplc_file.write("%s\n"%plc_spec['settings']['PLC_API_HOST'])
         ips_vplc_file.close()
         # ditto for nodes
         ips_bnode_file=open('arg-ips-bnode','w')
@@ -441,7 +437,7 @@ steps refer to a method in TestPlc or to a step_* module
                                 skip_step=True
                             elif answer in ['q','b']:   # quit/bye
                                 print 'Exiting'
-                                return
+                                return 'FAILURE'
                             elif answer in ['d']:       # dry_run
                                 dry_run=self.options.dry_run
                                 self.options.dry_run=True
@@ -473,7 +469,9 @@ steps refer to a method in TestPlc or to a step_* module
                                 msg="OK"
                             else:
                                 msg="KO"
-                                overall_result='IGNORED'
+                                # do not overwrite if FAILURE
+                                if overall_result=='SUCCESS': 
+                                    overall_result='IGNORED'
                             utils.header('********** %d IGNORED (%s) step %s on %s'%(plc_counter,msg,stepname,plcname))
                             status="%s[I]"%msg
                         elif step_result:
@@ -518,15 +516,15 @@ steps refer to a method in TestPlc or to a step_* module
     # wrapper to run, returns a shell-compatible result
     # retcod:
     # 0: SUCCESS
-    # 1: SUCCESS but some ignored steps failed
-    # 2: FAILED STEP
+    # 1: FAILURE
+    # 2: SUCCESS but some ignored steps failed
     # 3: OTHER ERROR
     def main(self):
         try:
             success=self.run()
             if success == 'SUCCESS':    return 0
-            elif success == 'IGNORED':  return 1
-            else:                       return 2
+            elif success == 'IGNORED':  return 2
+            else:                       return 1
         except SystemExit:
             print 'Caught SystemExit'
             return 3
@@ -536,5 +534,5 @@ steps refer to a method in TestPlc or to a step_* module
 
 if __name__ == "__main__":
     exit_code = TestMain().main()
-    print 'run_log is exiting',exit_code
-    sys.exit(TestMain().main())
+    print "TestMain exit code",exit_code
+    sys.exit(exit_code)