class Onboard::Validate

Attributes

core[R]
project[R]
version[R]

Public Class Methods

new(project, version = '', core = '', answer) click to toggle source
# File lib/onboard/validate.rb, line 18
def initialize(project, version = '', core = '', answer)
  @answer = answer
  @core = core
  @project = project
  @version = version
end

Public Instance Methods

hacked?(path, repo) click to toggle source
# File lib/onboard/validate.rb, line 25
def hacked?(path, repo)
  link = Download.new.build_link(project, version)
  Download.new.fetch(link)
  Extract.new(Download.new.path(link), link, path).x if verify(link, version)
  changes = Repo.new(repo).st(true)
  return !Confirm.new('Proceed?').q(answer) unless changes
end
latest?(latest) click to toggle source
# File lib/onboard/validate.rb, line 33
def latest?(latest)
  if Gem::Dependency.new('', "~> #{latest}").match?('', "#{version}")
    say("#{project} is already at the latest version (#{latest}).", :yellow)
    return true
  else
    return false
  end
end
verify(file, v = '') click to toggle source
# File lib/onboard/validate.rb, line 42
def verify(file, v = '')
  _version, md5 = Release.new(project, core).choose(v)
  if md5 == Digest::MD5.file(Download.new.path(file)).hexdigest
    return true
  else
    say("Verification failed for #{project} download!", :red)
  end
end