class Bcome::Startup

Public Class Methods

new(breadcrumbs, arguments) click to toggle source
# File lib/objects/startup.rb, line 5
def initialize(breadcrumbs, arguments)
  @breadcrumbs = breadcrumbs
  @arguments = arguments
end

Public Instance Methods

bootup() click to toggle source
# File lib/objects/startup.rb, line 29
def bootup
  spawn_into_console = true
  ::Bcome::Bootup.set_and_do({ breadcrumbs: @breadcrumbs, arguments: @arguments }, spawn_into_console)
  clean_up
rescue ::Bcome::Exception::Base => e
  clean_up
  e.pretty_display
rescue Excon::Error::Socket => e
  clean_up
  puts "\nNo network access - please check your connection and try again\n".error
rescue Exception => e
  clean_up
  raise e
end
clean_up() click to toggle source
# File lib/objects/startup.rb, line 44
def clean_up
  stop_loading_bars
  close_connections
end
close_connections() click to toggle source
# File lib/objects/startup.rb, line 49
def close_connections
  ::Bcome::Bootup.instance.close_ssh_connections
  ::Bcome::Ssh::TunnelKeeper.instance.close_tunnels
end
do() click to toggle source
# File lib/objects/startup.rb, line 10
def do
  case @breadcrumbs
  when '-v', '--version', '--v'
    puts ::Bcome::Version.display
  when 'pack_metadata'
    ::Bcome::Encryptor.instance.pack
  when 'unpack_metadata'
    ::Bcome::Encryptor.instance.unpack
  when 'diff_metadata'
    ::Bcome::Encryptor.instance.diff
  when 'init'
    ::Bcome::Initialization::Factory.do
  else
    bootup
  end
rescue Bcome::Exception::Base => e
  e.pretty_display
end
stop_loading_bars() click to toggle source
# File lib/objects/startup.rb, line 54
def stop_loading_bars
  ::Bcome::LoadingBar::PidBucket.instance.stop_all
end