module Morpheus::Cli

Constants

VERSION

Public Class Methods

enable_test_mode() click to toggle source

hack needed for unit tests right now

# File lib/morpheus/cli.rb, line 84
def self.enable_test_mode
  @@testing = true
end
home_directory() click to toggle source

get the home directory, where morpheus-cli stores things

# File lib/morpheus/cli.rb, line 21
def self.home_directory
  @@home_directory
end
home_directory=(fn) click to toggle source

set the home directory

# File lib/morpheus/cli.rb, line 26
def self.home_directory=(fn)
  @@home_directory = fn
end
load!() click to toggle source

load! does the initial loading of all the CLI utilities and commands

# File lib/morpheus/cli.rb, line 46
def self.load!()
  
  # api interfaces
  require 'morpheus/api'
  Dir[File.dirname(__FILE__)  + "/api/**/*.rb"].each { |file| require file }

  # utilites
  # Dir[File.dirname(__FILE__)  + "/cli/*.rb"].each { |file| require file }
  require 'morpheus/cli/cli_registry.rb'
  require 'morpheus/cli/expression_parser.rb'
  require 'morpheus/cli/dot_file.rb'
  require 'morpheus/cli/errors'
  require 'morpheus/cli/cli_command.rb'
  require 'morpheus/cli/option_types.rb'
  require 'morpheus/cli/credentials.rb'

  # mixins
  Dir[File.dirname(__FILE__)  + "/cli/mixins/**/*.rb"].each {|file| require file }
  
  # commands
  Dir[File.dirname(__FILE__)  + "/cli/commands/**/*.rb"].each {|file| require file }

end
reload!() click to toggle source

reload! can be used for live reloading changes while developing

# File lib/morpheus/cli.rb, line 71
def self.reload!()
  # api interfaces
  Dir[File.dirname(__FILE__)  + "/api/**/*.rb"].each { |file| load file }
  # mixins
  Dir[File.dirname(__FILE__)  + "/cli/mixins/**/*.rb"].each {|file| load file }
  # commands
  Dir[File.dirname(__FILE__)  + "/cli/commands/**/*.rb"].each {|file| load file }
end
testing?() click to toggle source

hack needed for unit tests right now

# File lib/morpheus/cli.rb, line 89
def self.testing?
  defined?(@@testing) && @@testing == true
end
windows?() click to toggle source

check if this is a Windows environment.

# File lib/morpheus/cli.rb, line 31
def self.windows?
  if defined?(@@is_windows)
    return @@is_windows
  end
  @@is_windows = false
  begin
    require 'rbconfig'
    @@is_windows = (RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/)
  rescue
    # $stderr.puts "unable to determine if this is a Windows machine."
  end
  return @@is_windows
end