module EY::Serverside

Constants

DEPRECATED_CLASSES
RemoteFailure
VERSION

Public Class Methods

const_missing(const) click to toggle source
Calls superclass method
# File lib/engineyard-serverside/deprecation.rb, line 22
def self.const_missing(const)
  if klass = DEPRECATED_CLASSES[const]
    deprecation_warning("EY::Serverside::#{const} has been deprecated. Please use: #{klass}")
    klass
  else
    super
  end
end
deprecated_task(receiver, old_task, new_task) click to toggle source
# File lib/engineyard-serverside/deprecation.rb, line 11
def self.deprecated_task(receiver, old_task, new_task)
  if receiver.respond_to?(old_task)
    deprecation_warning("Task ##{old_task} has been renamed to ##{new_task}.")
  end
end
deprecation_warning(msg) click to toggle source
# File lib/engineyard-serverside/deprecation.rb, line 7
def self.deprecation_warning(msg)
  $stderr.puts "DEPRECATION WARNING: #{msg}\n\t#{caller(2).first}"
end
dna_json() click to toggle source
# File lib/engineyard-serverside.rb, line 42
def self.dna_json
  @dna_json ||= read_encoded_dna
end
dna_path() click to toggle source
# File lib/engineyard-serverside.rb, line 61
def self.dna_path
  '/etc/chef/dna.json'
end
node() click to toggle source
# File lib/engineyard-serverside.rb, line 38
def self.node
  @node ||= deep_indifferentize(JSON.load(dna_json))
end
read_encoded_dna() click to toggle source
# File lib/engineyard-serverside.rb, line 65
def self.read_encoded_dna
  json = if File.exist?(dna_path)
           `sudo cat #{dna_path}`
         else
           '{}'
         end
  json.force_encoding('UTF-8') if $string_encodings
  json
end

Private Class Methods

deep_indifferentize(thing) click to toggle source
# File lib/engineyard-serverside.rb, line 47
def self.deep_indifferentize(thing)
  if thing.kind_of?(Hash)
    indifferent_hash = Thor::CoreExt::HashWithIndifferentAccess.new
    thing.each do |k, v|
      indifferent_hash[k] = deep_indifferentize(v)
    end
    indifferent_hash
  elsif thing.kind_of?(Array)
    thing.map {|x| deep_indifferentize(x)}
  else
    thing
  end
end