2010-08-12 05:58:26 +08:00
package org.broadinstitute.sting.queue
import java.io.File
2010-10-14 23:58:52 +08:00
import org.broadinstitute.sting.commandline. { ArgumentCollection , Argument }
import org.broadinstitute.sting.queue.util. { SystemUtils , EmailSettings }
2010-08-12 05:58:26 +08:00
/* *
* Default settings settable on the command line and passed to CommandLineFunctions .
*/
class QSettings {
@Argument ( fullName = "job_name_prefix" , shortName = "jobPrefix" , doc = "Default name prefix for compute farm jobs." , required = false )
var jobNamePrefix : String = QSettings . processNamePrefix
@Argument ( fullName = "job_queue" , shortName = "jobQueue" , doc = "Default queue for compute farm jobs." , required = false )
2010-08-14 07:52:24 +08:00
var jobQueue : String = _
2010-08-12 05:58:26 +08:00
@Argument ( fullName = "job_project" , shortName = "jobProject" , doc = "Default project for compute farm jobs." , required = false )
var jobProject : String = "Queue"
2011-02-16 02:26:14 +08:00
@Argument ( fullName = "job_priority" , shortName = "jobPriority" , doc = "Default priority for jobs." , required = false )
var jobPriority : Option [ Int ] = None
2010-08-12 05:58:26 +08:00
@Argument ( fullName = "job_scatter_gather_directory" , shortName = "jobSGDir" , doc = "Default directory to place scatter gather output for compute farm jobs." , required = false )
var jobScatterGatherDirectory : File = _
@Argument ( fullName = "default_memory_limit" , shortName = "memLimit" , doc = "Default memory limit for jobs, in gigabytes." , required = false )
var memoryLimit : Option [ Int ] = None
2010-10-14 23:58:52 +08:00
2010-11-13 04:14:28 +08:00
@Argument ( fullName = "run_directory" , shortName = "runDir" , doc = "Root directory to run functions from." , required = false )
var runDirectory = new File ( "." )
@Argument ( fullName = "temp_directory" , shortName = "tempDir" , doc = "Temp directory to pass to functions." , required = false )
var tempDirectory = new File ( System . getProperty ( "java.io.tmpdir" ) )
2010-10-14 23:58:52 +08:00
@ArgumentCollection
val emailSettings = new EmailSettings
2010-08-12 05:58:26 +08:00
}
/* *
* Default settings settable on the command line and passed to CommandLineFunctions .
*/
object QSettings {
2010-10-14 23:58:52 +08:00
/* * A semi-unique job prefix using the host name and the process id. */
private val processNamePrefix = "Q-" + SystemUtils . pidAtHost . split ( '.' ) ( 0 )
2010-08-12 05:58:26 +08:00
}