Module: ChefVPCToolkit::Util
- Defined in:
- lib/chef-vpc-toolkit/util.rb
Constant Summary collapse
- @@configs =
nil
Class Method Summary collapse
- .hostname ⇒ Object
- .load_configs ⇒ Object
- .load_public_key ⇒ Object
- .raise_if_nil_or_empty(options, key) ⇒ Object
Class Method Details
.hostname ⇒ Object
10 11 12 |
# File 'lib/chef-vpc-toolkit/util.rb', line 10 def self.hostname Socket.gethostname end |
.load_configs ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/chef-vpc-toolkit/util.rb', line 14 def self.load_configs return @@configs if not @@configs.nil? config_file=ENV['CHEF_VPC_TOOLKIT_CONF'] if config_file.nil? then config_file=ENV['HOME']+File::SEPARATOR+".chef_vpc_toolkit.conf" if not File.exists?(config_file) then config_file="/etc/chef_vpc_toolkit.conf" end end if File.exists?(config_file) then configs=YAML.load_file(config_file) raise_if_nil_or_empty(configs, "cloud_servers_vpc_url") raise_if_nil_or_empty(configs, "cloud_servers_vpc_username") raise_if_nil_or_empty(configs, "cloud_servers_vpc_password") @@configs=configs else raise "Failed to load chef VPC toolkit config file. Please configure /etc/chef_vpc_toolkit.conf or create a .chef_vpc_toolkit.conf config file in your HOME directory." end @@configs end |
.load_public_key ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/chef-vpc-toolkit/util.rb', line 42 def self.load_public_key ssh_dir=ENV['HOME']+File::SEPARATOR+".ssh"+File::SEPARATOR if File.exists?(ssh_dir+"id_rsa.pub") pubkey=IO.read(ssh_dir+"id_rsa.pub") elsif File.exists?(ssh_dir+"id_dsa.pub") pubkey=IO.read(ssh_dir+"id_dsa.pub") else raise "Failed to load SSH key. Please create a SSH public key pair in your HOME directory." end pubkey.chomp end |
.raise_if_nil_or_empty(options, key) ⇒ Object
57 58 59 60 61 |
# File 'lib/chef-vpc-toolkit/util.rb', line 57 def self.raise_if_nil_or_empty(, key) if not or [key].nil? or [key].empty? then raise "Please specify a valid #{key.to_s} parameter." end end |