class Onboard::Prepare
Attributes
codebase[R]
found[R]
options[R]
projects[R]
Public Class Methods
new(codebase, found, options)
click to toggle source
# File lib/onboard/prepare.rb, line 13 def initialize(codebase, found, options) @codebase = codebase @found = found @options = options @projects = Hash[options['projects'].map { |k, v| [k, v] }] end
Public Instance Methods
add(proj)
click to toggle source
# File lib/onboard/prepare.rb, line 60 def add(proj) say('Ready to add the following projects:', :green) proj.each do |x, _| puts ' ' + "#{codebase}/#{options[:destination]}/#{x}" end puts '' end
answer()
click to toggle source
# File lib/onboard/prepare.rb, line 30 def answer if options['no'] == 'no' return 'n' elsif options['yes'] == 'yes' return 'y' else '' end end
confirm(proj)
click to toggle source
# File lib/onboard/prepare.rb, line 68 def confirm(proj) add(proj) ans = answer Confirm.new('Proceed?', true).q(ans) end
delete(proj)
click to toggle source
# File lib/onboard/prepare.rb, line 40 def delete(proj) # TODO: check for patches before delete return proj unless options[:delete] == 'delete' say('Ready to delete existing projects:', :yellow) Confirm.new('Proceed?', true).q(answer) found.each do |x, _| Project.new.clean(x) proj[File.basename(x)] = '' end proj end
do()
click to toggle source
# File lib/onboard/prepare.rb, line 79 def do if found.empty? == false proj = report proj = delete(proj) else proj = projects end proj = force(proj) confirm(proj) unless proj.empty? return proj, answer unless proj.empty? void end
force(proj)
click to toggle source
# File lib/onboard/prepare.rb, line 52 def force(proj) return proj if options[:force] == 'force' || proj.empty? found.each do |x, _| proj.delete(File.basename(x)) end proj end
report()
click to toggle source
# File lib/onboard/prepare.rb, line 20 def report say('Projects exist at the following locations:', :yellow) found.each do |x, y| puts ' ' + x projects[File.basename(x)] = y end puts '' projects end
void()
click to toggle source
# File lib/onboard/prepare.rb, line 74 def void say('All projects already in codebase.', :yellow) exit end