pcingola/BigDataScript

Create a `taskOptions` class (internal) that we can use to pass many parameters to a task

pcingola opened this issue · 0 comments

There are many parameters and setting them on the Global space is becoming dangerous.
A new Class should be created to accommodate all parameters.
Sub-classes can implement system-specific parameters and options.

class TaskOptions {
    string system
    int mem = -1
    int cpus = 1
    int timeout = -1
    int wallTimeout = -1
    string[] rawOptions
}

class TaskOptionsLocal extends TaskOptions {
    string shellCmd = '/bin/bash ...'

}

class TaskOptionsAws extends TaskOptions {
    string instanceType = 'm5.large'
    string script = ''
    int dataDiskSize = -1
    ...
}