class Glue::BaseTask

Attributes

appname[RW]
description[RW]
findings[R]
labels[R]
name[RW]
stage[RW]
trigger[R]
warnings[R]

Public Class Methods

new(trigger, tracker) click to toggle source
# File lib/glue/tasks/base_task.rb, line 12
def initialize(trigger, tracker)
  @findings = []
  @warnings = []
  @labels = Set.new
  @trigger = trigger
  @tracker = tracker
  @severity_filter = {
    :low => ['low','weak'],
    :medium => ['medium','med','average'],
    :high => ['high','severe','critical']
  }
end

Public Instance Methods

analyze() click to toggle source
# File lib/glue/tasks/base_task.rb, line 66
def analyze
end
directories_with?(file, exclude_dirs = []) click to toggle source
# File lib/glue/tasks/base_task.rb, line 46
def directories_with? file, exclude_dirs = []
  exclude_dirs = @tracker.options[:exclude_dirs] if exclude_dirs == [] and @tracker.options[:exclude_dirs]
  results = []

  Find.find(@trigger.path) do |path|
    if FileTest.directory? path
      Find.prune if exclude_dirs.include? File.basename(path) or exclude_dirs.include? File.basename(path) + '/'
      next
    end

    Find.prune unless File.basename(path) == file

    results << File.dirname(path)
  end
  return results
end
report(description, detail, source, severity, fingerprint) click to toggle source
# File lib/glue/tasks/base_task.rb, line 25
def report description, detail, source, severity, fingerprint
  finding = Glue::Finding.new( @trigger.appname, description, detail, source, severity, fingerprint )
  @findings << finding
end
run() click to toggle source
# File lib/glue/tasks/base_task.rb, line 63
def run
end
severity(sev) click to toggle source
# File lib/glue/tasks/base_task.rb, line 72
def severity sev
  sev = '' if sev.nil?
  return 1 if @severity_filter[:low].include?(sev.strip.chomp.downcase)
  return 2 if @severity_filter[:medium].include?(sev.strip.chomp.downcase)
  return 3 if @severity_filter[:high].include?(sev.strip.chomp.downcase)
  return 0
end
supported?() click to toggle source
# File lib/glue/tasks/base_task.rb, line 69
def supported?
end
warn(warning) click to toggle source
# File lib/glue/tasks/base_task.rb, line 30
def warn warning
  @warnings << warning
end