17d68d00bSMichael Walsh#!/usr/bin/env python 27d68d00bSMichael Walsh 37d68d00bSMichael Walshr""" 4e5391dc4SMichael WalshSee help text for details. 57d68d00bSMichael Walsh""" 67d68d00bSMichael Walsh 77d68d00bSMichael Walshimport sys 87d68d00bSMichael Walsh 9*6607a28eSMichael Walshsave_dir_path = sys.path.pop(0) 107d68d00bSMichael Walsh 11*6607a28eSMichael Walshmodules = ['gen_arg', 'gen_print', 'gen_valid'] 12*6607a28eSMichael Walshfor module in modules: 13*6607a28eSMichael Walsh exec("from " + module + " import *") 147d68d00bSMichael Walsh 15*6607a28eSMichael Walshsys.path.insert(0, save_dir_path) 162d8d7f3cSMichael Walsh 177d68d00bSMichael Walshparser = argparse.ArgumentParser( 187d68d00bSMichael Walsh usage='%(prog)s [OPTIONS]', 197d68d00bSMichael Walsh description="%(prog)s will...", 20d0741f8aSMichael Walsh formatter_class=argparse.ArgumentDefaultsHelpFormatter, 217d68d00bSMichael Walsh prefix_chars='-+') 227d68d00bSMichael Walsh 237d68d00bSMichael Walshparser.add_argument( 247d68d00bSMichael Walsh '--whatever', 252d8d7f3cSMichael Walsh default='', 267d68d00bSMichael Walsh help='bla, bla.') 277d68d00bSMichael Walsh 2841dda1b0SMichael Walsh# Populate stock_list with options we want. 297d68d00bSMichael Walshstock_list = [("test_mode", 0), ("quiet", 0), ("debug", 0)] 307d68d00bSMichael Walsh 317d68d00bSMichael Walsh 327d68d00bSMichael Walshdef exit_function(signal_number=0, 337d68d00bSMichael Walsh frame=None): 347d68d00bSMichael Walsh r""" 357d68d00bSMichael Walsh Execute whenever the program ends normally or with the signals that we 367d68d00bSMichael Walsh catch (i.e. TERM, INT). 377d68d00bSMichael Walsh """ 387d68d00bSMichael Walsh 39*6607a28eSMichael Walsh # This function will be called by gen_exit_function(). If you have no 40*6607a28eSMichael Walsh # cleanup to do, you can delete this function altogether. 417d68d00bSMichael Walsh 427d68d00bSMichael Walsh # Your cleanup code here. 437d68d00bSMichael Walsh 447d68d00bSMichael Walsh 457d68d00bSMichael Walshdef validate_parms(): 467d68d00bSMichael Walsh r""" 472d8d7f3cSMichael Walsh Validate program parameters, etc. 487d68d00bSMichael Walsh """ 497d68d00bSMichael Walsh 50*6607a28eSMichael Walsh # This function will be called by gen_setup(). If you have no validation 51*6607a28eSMichael Walsh # to do, you can delete this function altogether. 52*6607a28eSMichael Walsh 532d8d7f3cSMichael Walsh # Your validation code here... 542d8d7f3cSMichael Walsh # valid_value(whatever) 557d68d00bSMichael Walsh 567d68d00bSMichael Walsh 577d68d00bSMichael Walshdef main(): 587d68d00bSMichael Walsh 59*6607a28eSMichael Walsh gen_setup() 607d68d00bSMichael Walsh 617d68d00bSMichael Walsh # Your code here. 627d68d00bSMichael Walsh 637d68d00bSMichael Walsh 642d8d7f3cSMichael Walshmain() 65