Class: Chef::Knife
- Inherits:
-
Object
- Object
- Chef::Knife
- Defined in:
- lib/chef/knife/rackspace_base.rb,
lib/chef/knife/rackspace_image_list.rb,
lib/chef/knife/rackspace_flavor_list.rb,
lib/chef/knife/rackspace_server_list.rb,
lib/chef/knife/rackspace_network_list.rb,
lib/chef/knife/rackspace_server_create.rb,
lib/chef/knife/rackspace_server_delete.rb,
lib/chef/knife/rackspace_network_create.rb,
lib/chef/knife/rackspace_network_delete.rb
Direct Known Subclasses
RackspaceFlavorList, RackspaceImageList, RackspaceNetworkCreate, RackspaceNetworkDelete, RackspaceNetworkList, RackspaceServerCreate, RackspaceServerDelete, RackspaceServerList
Defined Under Namespace
Modules: RackspaceBase Classes: RackspaceFlavorList, RackspaceImageList, RackspaceNetworkCreate, RackspaceNetworkDelete, RackspaceNetworkList, RackspaceServerCreate, RackspaceServerDelete, RackspaceServerList
Instance Method Summary collapse
- #get_networks(names, rackconnect3 = false) ⇒ Object
-
#get_node_name(chef_node_name) ⇒ Object
v2 servers require a name, random if chef_node_name is empty, empty if v1.
Instance Method Details
#get_networks(names, rackconnect3 = false) ⇒ Object
597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 |
# File 'lib/chef/knife/rackspace_server_create.rb', line 597 def get_networks(names, rackconnect3=false) names = Array(names) if(Chef::Config[:knife][:rackspace_version] == 'v2') if rackconnect3 nets = [Chef::Config[:knife][:rackconnect_v3_network_id]] elsif config[:default_networks] nets = [ '00000000-0000-0000-0000-000000000000', '11111111-1111-1111-1111-111111111111' ] else nets = [] end available_networks = connection.networks.all names.each do |name| net = available_networks.detect{|n| n.label == name || n.id == name} if(net) nets << net.id else ui.error("Failed to locate network: #{name}") exit 1 end end nets elsif(names && !names.empty?) ui.error("Custom networks are only available in v2 API") exit 1 end end |
#get_node_name(chef_node_name) ⇒ Object
v2 servers require a name, random if chef_node_name is empty, empty if v1
591 592 593 594 595 |
# File 'lib/chef/knife/rackspace_server_create.rb', line 591 def get_node_name(chef_node_name) return chef_node_name unless chef_node_name.nil? #lazy uuids chef_node_name = "rs-"+rand.to_s.split('.')[1] unless version_one? end |