class Chef::Knife::ProfitbricksNicCreate
Public Instance Methods
run()
click to toggle source
# File lib/chef/knife/profitbricks_nic_create.rb, line 49 def run $stdout.sync = true validate_required_params(%i(datacenter_id server_id lan), Chef::Config[:knife]) print "#{ui.color('Creating nic...', :magenta)}" params = { name: Chef::Config[:knife][:name], ips: Chef::Config[:knife][:ips], dhcp: Chef::Config[:knife][:dhcp], lan: Chef::Config[:knife][:lan] } if Chef::Config[:knife][:nat] params[:nat] = Chef::Config[:knife][:nat] end connection nic = ProfitBricks::NIC.create( Chef::Config[:knife][:datacenter_id], Chef::Config[:knife][:server_id], params.compact ) dot = ui.color('.', :magenta) nic.wait_for { print dot; ready? } nic.reload puts "\n" puts "#{ui.color('ID', :cyan)}: #{nic.id}" puts "#{ui.color('Name', :cyan)}: #{nic.properties['name']}" puts "#{ui.color('IPs', :cyan)}: #{nic.properties['ips']}" puts "#{ui.color('DHCP', :cyan)}: #{nic.properties['dhcp']}" puts "#{ui.color('LAN', :cyan)}: #{nic.properties['lan']}" puts "#{ui.color('NAT', :cyan)}: #{nic.properties['nat']}" puts 'done' end