Sha256: 3f810736aa3a9bd5b96d8d74dfdf1a2047630b2d71e4486d790a68f0ba704799

Contents?: true

Size: 1.56 KB

Versions: 14

Compression:

Stored size: 1.56 KB

Contents

#!/usr/bin/env ruby

require 'rbbt/util/simpleopt'
require 'rbbt/workflow'
require 'rbbt/workflow/usage'
require 'rbbt/hpc'
require 'rbbt/hpc/orchestrate'
require 'time'

$slurm_options = SOPT.get <<EOF
-dr--dry_run Print only the template
-cj--clean_job Clean job
--drbbt* Use development version of rbbt 
-sing--singularity Use Singularity
-ug--user_group* Use alternative user group for group project directory
-c--contain* Contain in directory (using Singularity)
-s--sync* Contain in directory and sync jobs
-e--exclusive Make exclusive use of the node
-hm--highmem Make use of highmem cores
-wc--wipe_container* Wipe the jobs from the contain directory
-CS--contain_and_sync Contain and sync to default locations
-ci--copy_image When using a container directory, copy image there
-t--tail Tail the logs
-SPERF--SLURM_procpath* Save Procpath performance for SLURM job; specify only options
-q--queue* Queue
-t--task_cpus* Tasks
-W--workflows* Additional workflows
-tm--time* Time
-OR--orchestration_rules* Orchestration rules
-rmb--remove_slurm_basedir Remove the SLURM working directory (command, STDIN, exit status, ...)
EOF

class Step
    def run(*args)
        if done?
            self.load
        else
            begin
                Log.debug "Issuing SLURM job for #{self.path}"
                HPC::SLURM.orchestrate_job(self, SOPT::GOT_OPTIONS.merge($slurm_options)) 
            rescue HPC::SBATCH
            end
        end
    end
end

ARGV.concat ["-W", $slurm_options[:workflows], '--detach'] if $slurm_options[:workflows]
load Rbbt.share.rbbt_commands.workflow.task.find

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
rbbt-util-5.30.13 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.12 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.11 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.10 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.9 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.8 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.7 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.6 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.5 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.4 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.3 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.2 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.1 share/rbbt_commands/slurm/orchestrate
rbbt-util-5.30.0 share/rbbt_commands/slurm/orchestrate