Sha256: 27a3394f953b2e34c75401f21588146e00cec062067697be570c547dfbfab88c

Contents?: true

Size: 1.32 KB

Versions: 2

Compression:

Stored size: 1.32 KB

Contents

#!/usr/bin/env ruby

$LOAD_PATH.unshift(File.dirname(__FILE__) + '/../lib') unless $LOAD_PATH.include?(File.dirname(__FILE__) + '/../lib')

require 'trollop'
require "rjobs/jobs_file"
require "rjobs/job"
require "rjobs/job_handler"
require 'rjobs/cli_helper'
include  Rjobs::CliHelper   

banner = "================
Get the status of jobs described in the jobs file.
================
Usage:
       rjstatus [options] <filename>
where [options] are:
"

p = parser(banner)

opts = Trollop::with_standard_exception_handling p do
  o = p.parse ARGV
  raise Trollop::HelpNeeded if ARGV.empty? # show help screen
end

jobs_file = ARGV[0]
raise "The file \"#{jobs_file}\" must exist." unless File.exist?(jobs_file) 

jobs = get_jobs_info(jobs_file)

jFinished = 0
jPending = 0
jFailed = 0
jNE =0

jobs.each do |job|        
  puts "#{job.name} - #{job.status_with_color}"
  case job.status
  when /Finished/
    jFinished +=1
  when /Failed/
    jFailed +=1
  when /Not Exist/
    jNE+=1
  else
    jPending +=1
  end

end

#output number of success jobs - pending jobs - failed jobs
sFinish = "#{jFinished} finished".green if jFinished > 0
sPending = "- #{jPending} pending" if jPending > 0
sFailed = "- #{jFailed} failed".red if jFailed > 0
sNE = "- #{jNE} not exist".red if jNE > 0

puts "#{jobs.count} jobs: #{sFinish} #{sPending} #{sFailed} #{sNE}."

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rjobs-0.3.1.alpha bin/rjstatus
rjobs-0.3.0.alpha bin/rjstatus