def parseDemultiplexConfig( demultiplexConfigFile ):
"""Parses the DemultiplexConfig file for the version of casava used
Output is the details of the software in the format:
[softwareName, softwareVersion, softwareArguements]
[bcl2fastq, 1.8.4, "cluster/gsu/data/hiseq/140506_SN7001398_0099_BC4362ACXX/Data/Intensities/BaseCalls --output-dir /cluster/gsu/data/processed/hiseq/140506_SN7001398_0099_BC4362ACXX/ --sample-sheet /homes/gsupipe-x/SampleSheets/140506_SN7001398_0099_BC4362ACXX/SampleSheet_revComp_edited.csv --use-bases-mask Y*,I8n*,Y*'"]
"""
casavaDetails = []
try:
print "Parsing Run Parameters"
demultiplexConfigXML = ElementTree.parse(demultiplexConfigFile)
except IOError:
print "Cannot load information from %s" % demultiplexConfigFile
raise
except ElementTree.ParseError:
print "Invalid XML in %s" % demultiplexConfigFile
raise
for softwareDetails in demultiplexConfigXML.iterfind("Software"):
versionString = softwareDetails.attrib["Version"]
commandArgs = softwareDetails.attrib["CmdAndArgs"]
casavaDetails.append( versionString.split("-")[0] )
casavaDetails.append( versionString.split("-")[1] )
casavaDetails.append( commandArgs )
return casavaDetails
# for line in demultiplexConfigFile:
评论列表
文章目录