Mercurial > repos > mini > strelka
diff strelka_wrapper.py @ 10:f66f23fcc83a
Modified layout
author | mini |
---|---|
date | Tue, 30 Sep 2014 11:08:39 +0200 |
parents | 2cee4ed50058 |
children | 137e05f24336 |
line wrap: on
line diff
--- a/strelka_wrapper.py Fri Sep 26 14:33:07 2014 +0200 +++ b/strelka_wrapper.py Tue Sep 30 11:08:39 2014 +0200 @@ -1,5 +1,8 @@ #!/usr/bin/env python -#Dan Blankenberg +#Gregoire Seguin-Henry (Engineer IT) +#Amine Sbitti (Data Scientist) +#Ludovic Marie-Sainte (Project Manager) +#For Geviteam 2014 """ A wrapper script for running the GenomeAnalysisTK.jar commands. @@ -10,14 +13,7 @@ from binascii import unhexlify from string import Template from galaxy import eggs -#import pkg_resources; pkg_resources.require( "bx-python" ) -#GALAXY_EXT_TO_GATK_EXT = { 'gatk_interval':'intervals', 'bam_index':'bam.bai', 'gatk_dbsnp':'dbSNP', 'picard_interval_list':'interval_list' } #items not listed here will use the galaxy extension as-is -#GALAXY_EXT_TO_GATK_FILE_TYPE = GALAXY_EXT_TO_GATK_EXT #for now, these are the same, but could be different if needed -#DEFAULT_GATK_PREFIX = "gatk_file" -#CHUNK_SIZE = 2**20 #1mb -# -# def cleanup_before_exit( tmp_dir ): if tmp_dir and os.path.exists( tmp_dir ): shutil.rmtree( tmp_dir ) @@ -62,9 +58,8 @@ my_Popen( command, "fasta_index_stderr", tmp_dir, "Error during indexation of fasta file :" + fasta_filename) def __main__(): - #Parse Command Line OPTPARSE DEPRECIATED USE ARGPARSE INSTEAD - #MKTEMP DEPRECIATED USE MKDTlizations#EMP INSTEAD - #manage parsing + + #Manage options parser = argparse.ArgumentParser() parser.add_argument( '-t', '--tumorBam', help='path to tumor bam file', required = False ) parser.add_argument( '-n', '--normalBam', help='path to tumor bam file', required = False ) @@ -98,10 +93,10 @@ job_dir=os.getcwd() analysis_dir=job_dir + "/StrelkaAnalysis" config_script=root_dir + "/configureStrelkaWorkflow.pl" - tmp_dir = "tmp" #tempfile.mkdtemp( prefix='tmp-strelkaAnalysis-' ) + tmp_dir = tempfile.mkdtemp( prefix='tmp-strelkaAnalysis-' ) config_ini = "%s/config.ini" % (tmp_dir) - print("root_dir: " + root_dir + "\njob_dir :" + job_dir + "\nanalysis_dir :" + analysis_dir + "\nconfig_script :" + config_script + "\ntmp_dir :" + tmp_dir + "\nconfig_ini :" + config_ini) + #print("root_dir: " + root_dir + "\njob_dir :" + job_dir + "\nanalysis_dir :" + analysis_dir + "\nconfig_script :" + config_script + "\ntmp_dir :" + tmp_dir + "\nconfig_ini :" + config_ini) #verifying eveything's ok @@ -113,7 +108,6 @@ # creating index if needed - os.environ['PATH']= root_dir + "/opt/samtools:" + os.environ['PATH'] bam_filenames = [ args.tumorBam, args.normalBam ] index_bam_files( bam_filenames, tmp_dir ) fasta_files = [ args.refFile ] @@ -129,7 +123,7 @@ if not os.path.exists(args.configFile): print( "The path to your configuration File seems to be wrong, use another one or custom option", file=sys.stderr) cmdbash="cp %s %s" % (args.configFile, config_ini) - my_Popen(cmdbash, "copy_default_file_err", tmp_dir, "Error during the copy of default config file, maybe it was removed") + my_Popen(cmdbash, "copy_default_file_err", tmp_dir, "Error during the copy of the selected config file") @@ -148,55 +142,3 @@ my_Popen( cmd, "workflow_stderr", tmp_dir, "Error during workflow execution !") print("**** completed workflow execution") - - - - - - - - - - - - - -#bam_filenames = [] -# if options.datasets: -# for ( dataset_arg, filename, galaxy_ext, prefix ) in options.datasets: -# gatk_filename = filename_from_galaxy( filename, galaxy_ext, target_dir = tmp_dir, prefix = prefix )#return the link to the dataset that has been created in the function -# if dataset_arg: -# cmd = '%s %s "%s"' % ( cmd, gatk_filetype_argument_substitution( dataset_arg, galaxy_ext ), gatk_filename ) -# if galaxy_ext == "bam": -# bam_filenames.append( gatk_filename ) -# #set up stdout and stderr output options -# stdout = open_file_from_option( options.stdout, mode = 'wb' ) -# stderr = open_file_from_option( options.stderr, mode = 'wb' ) -# #if no stderr file is specified, we'll use our own -# if stderr is None: -# stderr = tempfile.NamedTemporaryFile( prefix="strelka-stderr-", dir=tmp_dir ) -# -# proc = subprocess.Popen( args=cmd, stdout=stdout, stderr=stderr, shell=True, cwd=tmp_dir ) -# return_code = proc.wait() -# -# if return_code: -# stderr_target = sys.stderr -# else: -# stderr_target = sys.stdout -# stderr.flush() -# stderr.seek(0) -# while True: -# chunk = stderr.read( CHUNK_SIZE ) -# if chunk: -# stderr_target.write( chunk ) -# else: -# break -# stderr.close() -# #generate html reports -# if options.html_report_from_directory: -# for ( html_filename, html_dir ) in options.html_report_from_directory: -# html_report_from_directory( open( html_filename, 'wb' ), html_dir ) -# -# cleanup_before_exit( tmp_dir ) - -if __name__=="__main__": __main__()