- usage = """usage: %prog [options] MyplcURL"""
- parser=OptionParser(usage=usage,version=self.subversion_id)
- # verbosity
- parser.add_option("-v","--verbose", action="store_true", dest="verbose", default=False,
- help="Run in verbose mode")
- # debug mode
- parser.add_option("-g","--debug", action="store", dest="debug",
- help="Run in debug mode for eventual virtual problems")
- #exporting Display
- parser.add_option("-d","--display", action="store", dest="Xterm", default='bellami:0.0',
- help="export the display on the mentionneted one")
-
- (self.options, self.args) = parser.parse_args()
-
- display=''
- url=''
- test_plcs=[]
- test_nodes=[]
- pids=[]
- timset=time.strftime("%H:%M:%S", time.localtime())
- #test the existence of the URL
- if (len (self.args)):
- url=self.args[0]
- print 'the myplc url is ',url
+ setattr(parser.values,option.dest,getattr(parser.values,option.dest)+value.split())
+ except:
+ setattr(parser.values,option.dest,value.split())
+
+ @staticmethod
+ def printable_steps (list):
+ return " ".join(list).replace(" "+SEP+" ","\n")
+
+ def run (self):
+ steps_message=20*'x'+" Defaut steps are\n"+TestMain.printable_steps(TestMain.default_steps)
+ steps_message += "\n"+20*'x'+" Other useful steps are\n"+TestMain.printable_steps(TestMain.other_steps)
+ usage = """usage: %%prog [options] steps
+myplc-url defaults to the last value used, as stored in arg-myplc-url,
+ no default
+build-url defaults to the last value used, as stored in arg-build-url,
+ or %s
+config defaults to the last value used, as stored in arg-config,
+ or %r
+ips defaults to the last value used, as stored in arg-ips,
+ default is to use IP scanning
+steps refer to a method in TestPlc or to a step_* module
+===
+"""%(TestMain.default_build_url,TestMain.default_config)
+ usage += steps_message
+ parser=OptionParser(usage=usage,version=self.subversion_id)
+ parser.add_option("-u","--url",action="store", dest="myplc_url",
+ help="myplc URL - for locating build output")
+ parser.add_option("-b","--build",action="store", dest="build_url",
+ help="Build URL - for using vtest-init-vserver.sh in native mode")
+ parser.add_option("-c","--config",action="callback", callback=TestMain.optparse_list, dest="config",
+ nargs=1,type="string",
+ help="Config module - can be set multiple times, or use quotes")
+ parser.add_option("-x","--exclude",action="callback", callback=TestMain.optparse_list, dest="exclude",
+ nargs=1,type="string",default=[],
+ help="steps to exclude - can be set multiple times, or use quotes")
+ parser.add_option("-a","--all",action="store_true",dest="all_steps", default=False,
+ help="Run all default steps")
+ parser.add_option("-l","--list",action="store_true",dest="list_steps", default=False,
+ help="List known steps")
+ parser.add_option("-i","--ip",action="callback", callback=TestMain.optparse_list, dest="ips",
+ nargs=1,type="string",
+ help="Specify the set of IP addresses to use in vserver mode (disable scanning)")
+ parser.add_option("-s","--small",action="store_true",dest="small_test",default=False,
+ help="run a small test -- typically only one node")
+ parser.add_option("-d","--dbname",action="store",dest="dbname",default=None,
+ help="Used by db_dump and db_restore")
+ parser.add_option("-v","--verbose", action="store_true", dest="verbose", default=False,
+ help="Run in verbose mode")
+ parser.add_option("-q","--quiet", action="store_true", dest="quiet", default=False,
+ help="Run in quiet mode")
+ parser.add_option("-n","--dry-run", action="store_true", dest="dry_run", default=False,
+ help="Show environment and exits")
+ parser.add_option("-f","--forcenm", action="store_true", dest="forcenm", default=False,
+ help="Force the NM to restart in check_slices step")
+ (self.options, self.args) = parser.parse_args()
+
+ # tmp : force small test
+ utils.header("XXX WARNING : forcing small tests")
+ self.options.small_test = True
+
+ if len(self.args) == 0:
+ if self.options.all_steps:
+ self.options.steps=TestMain.default_steps
+ elif self.options.dry_run:
+ self.options.steps=TestMain.default_steps
+ elif self.options.list_steps:
+ print steps_message
+ sys.exit(1)