5 from htsworkflow.pipeline.configure_run import *
6 from htsworkflow.pipeline import retrieve_config as _rc
7 from htsworkflow.pipeline.run_status import startCmdLineStatusMonitor
9 logging.basicConfig(level=logging.DEBUG,
10 format='%(asctime)s %(levelname)-8s %(message)s',
11 datefmt='%a, %d %b %Y %H:%M:%S',
12 #filename='pipeline_main.log',
15 s_fc = re.compile('FC[0-9]+')
17 #Turn on built-in command-line parsing.
18 _rc.DISABLE_CMDLINE = False
20 GENOME_DIR = '/data-store01/compbio/genomes/'
26 ci.analysis_dir = os.getcwd()
27 ci.base_analysis_dir, junk = os.path.split(ci.analysis_dir)
29 #FIXME: make a better command line tool
30 skip_retrieve_config = False
36 cfg_filepath = os.path.abspath('config32auto.txt')
38 #else, config file provide
40 cfg_filepath = os.path.abspath(args[0])
41 skip_retrieve_config = True
44 " configure_pipeline FC#####\n" \
46 " configure_pipeline <conf_filepath>\n"
49 genome_dir = GENOME_DIR
51 if not skip_retrieve_config:
52 status_retrieve_cfg = retrieve_config(ci, flowcell, cfg_filepath, genome_dir)
53 if status_retrieve_cfg:
54 print "Retrieve config file successful"
56 print "Failed to retrieve config file"
58 print "Config file %s provided from command-line" % (cfg_filepath)
59 ci.config_filepath = cfg_filepath
60 status_retrieve_cfg = True
62 if status_retrieve_cfg:
63 status = configure(ci)
65 print "Configure success"
67 print "Configure failed"
69 print 'Run Dir:', ci.run_path
70 print 'Bustard Dir:', ci.bustard_path
73 # Setup status cmdline status monitor
74 startCmdLineStatusMonitor(ci)
76 print 'Running pipeline now!'
77 run_status = run_pipeline(ci)
78 if run_status is True:
79 print 'Pipeline ran successfully.'
82 print 'Pipeline run failed.'
87 if __name__ == "__main__":
88 sys.exit(main(sys.argv[1:]))