class Knife::Clc::CloudExtensions::CloudAdapter
Attributes
connection[R]
Public Class Methods
new(params)
click to toggle source
Calls superclass method
# File lib/knife-clc/cloud_extensions/cloud_adapter.rb, line 7 def initialize(params) @connection = params.fetch(:connection) super(@connection) end
Public Instance Methods
ensure_server_powered_on(server)
click to toggle source
# File lib/knife-clc/cloud_extensions/cloud_adapter.rb, line 17 def ensure_server_powered_on(server) return unless server['details']['powerState'] == 'stopped' links = connection.power_on_server(server['id']) connection.wait_for(links['operation']['id']) end
get_private_ip(server)
click to toggle source
# File lib/knife-clc/cloud_extensions/cloud_adapter.rb, line 23 def get_private_ip(server) private_ips = server['details']['ipAddresses'].map { |addr| addr['internal'] }.compact private_ips.first end
get_public_ip(server)
click to toggle source
# File lib/knife-clc/cloud_extensions/cloud_adapter.rb, line 28 def get_public_ip(server) public_ips = server['details']['ipAddresses'].map { |addr| addr['public'] }.compact public_ips.first end
get_server_credentials(server)
click to toggle source
# File lib/knife-clc/cloud_extensions/cloud_adapter.rb, line 12 def get_server_credentials(server) creds_link = server['links'].find { |link| link['rel'] == 'credentials' } connection.follow(creds_link) if creds_link end