From d376c6fa4b6a711d6f1c21b9ec24be9e4892c6bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn?= Date: Fri, 2 Mar 2012 18:51:17 +0100 Subject: [PATCH] Feature #1112: Work on CLI commands, cluster and DS related methods --- src/cli/one_helper.rb | 5 +++++ src/cli/one_helper/onedatastore_helper.rb | 1 + src/cli/one_helper/onehost_helper.rb | 1 + src/cli/one_helper/oneimage_helper.rb | 1 + src/cli/one_helper/onevnet_helper.rb | 1 + src/cli/onecluster | 22 +++++++++++++++++----- src/cli/onedatastore | 12 ++++++++++++ 7 files changed, 38 insertions(+), 5 deletions(-) diff --git a/src/cli/one_helper.rb b/src/cli/one_helper.rb index c78c6e9ed6..019d80845e 100644 --- a/src/cli/one_helper.rb +++ b/src/cli/one_helper.rb @@ -333,6 +333,11 @@ EOT when "GROUP" then OpenNebula::GroupPool.new(client) when "USER" then OpenNebula::UserPool.new(client) when "DATASTORE" then OpenNebula::DatastorePool.new(client) + when "CLUSTER" then OpenNebula::ClusterPool.new(client) + when "VNET" then OpenNebula::VirtualNetworkPool.new(client) + when "IMAGE" then OpenNebula::ImagePool.new(client) + when "VMTEMPLATE" then OpenNebula::TemplatePool.new(client) + when "VM" then OpenNebula::VirtualMachinePool.new(client) end rc = pool.info diff --git a/src/cli/one_helper/onedatastore_helper.rb b/src/cli/one_helper/onedatastore_helper.rb index b88a5f6b4d..d263fd4316 100644 --- a/src/cli/one_helper/onedatastore_helper.rb +++ b/src/cli/one_helper/onedatastore_helper.rb @@ -68,6 +68,7 @@ class OneDatastoreHelper < OpenNebulaHelper::OneHelper puts str % ["NAME", datastore.name] puts str % ["USER", datastore['UNAME']] puts str % ["GROUP", datastore['GNAME']] + puts str % ["CLUSTER", datastore['CLUSTER']] puts str % ["TYPE", datastore['TYPE']] puts str % ["BASE PATH",datastore['BASE_PATH']] diff --git a/src/cli/one_helper/onehost_helper.rb b/src/cli/one_helper/onehost_helper.rb index 306b1fcf75..74628bb18f 100644 --- a/src/cli/one_helper/onehost_helper.rb +++ b/src/cli/one_helper/onehost_helper.rb @@ -118,6 +118,7 @@ class OneHostHelper < OpenNebulaHelper::OneHelper puts str % ["ID", host.id.to_s] puts str % ["NAME", host.name] + puts str % ["CLUSTER", host['CLUSTER']] puts str % ["STATE", host.state_str] puts str % ["IM_MAD", host['IM_MAD']] puts str % ["VM_MAD", host['VM_MAD']] diff --git a/src/cli/one_helper/oneimage_helper.rb b/src/cli/one_helper/oneimage_helper.rb index 27a4910ec1..4d13ae95dc 100644 --- a/src/cli/one_helper/oneimage_helper.rb +++ b/src/cli/one_helper/oneimage_helper.rb @@ -118,6 +118,7 @@ class OneImageHelper < OpenNebulaHelper::OneHelper puts str % ["NAME", image.name] puts str % ["USER", image['UNAME']] puts str % ["GROUP",image['GNAME']] + puts str % ["DATASTORE",image['DATASTORE']] puts str % ["TYPE", image.type_str] puts str % ["REGISTER TIME", OpenNebulaHelper.time_to_str(image['REGTIME'])] diff --git a/src/cli/one_helper/onevnet_helper.rb b/src/cli/one_helper/onevnet_helper.rb index 72fb32346c..6b2b439c5a 100644 --- a/src/cli/one_helper/onevnet_helper.rb +++ b/src/cli/one_helper/onevnet_helper.rb @@ -103,6 +103,7 @@ class OneVNetHelper < OpenNebulaHelper::OneHelper puts str % ["NAME", vn['NAME']] puts str % ["USER", vn['UNAME']] puts str % ["GROUP", vn['GNAME']] + puts str % ["CLUSTER", vn['CLUSTER']] puts str % ["TYPE", vn.type_str] puts str % ["BRIDGE", vn["BRIDGE"]] puts str % ["VLAN", OpenNebulaHelper.boolean_to_str(vn['VLAN'])] diff --git a/src/cli/onecluster b/src/cli/onecluster index 07b0fc1ae8..352e4811e0 100755 --- a/src/cli/onecluster +++ b/src/cli/onecluster @@ -56,6 +56,18 @@ cmd=CommandParser::CmdParser.new(ARGV) do helper.list_to_id(arg) end + set :format, :vnetid, OpenNebulaHelper.rname_to_id_desc("VNET") do |arg| + OpenNebulaHelper.rname_to_id(arg, "VNET") + end + + set :format, :hostid, OpenNebulaHelper.rname_to_id_desc("HOST") do |arg| + OpenNebulaHelper.rname_to_id(arg, "HOST") + end + + set :format, :datastoreid, OpenNebulaHelper.rname_to_id_desc("DATASTORE") do |arg| + OpenNebulaHelper.rname_to_id(arg, "DATASTORE") + end + ######################################################################## # Commands ######################################################################## @@ -102,7 +114,7 @@ cmd=CommandParser::CmdParser.new(ARGV) do # TODO: allow the second param to be [:range, :hostid_list] command :addhost, addhost_desc,:clusterid, :hostid do - helper.perform_actions(args[0],options,"updated") do |cluster| + helper.perform_action(args[0],options,"updated") do |cluster| cluster.addhost(args[1].to_i) end end @@ -113,7 +125,7 @@ cmd=CommandParser::CmdParser.new(ARGV) do # TODO: allow the second param to be [:range, :hostid_list] command :delhost, delhost_desc, :clusterid, :hostid do - helper.perform_actions(args[0],options,"updated") do |cluster| + helper.perform_action(args[0],options,"updated") do |cluster| cluster.delhost(args[1].to_i) end end @@ -124,7 +136,7 @@ cmd=CommandParser::CmdParser.new(ARGV) do # TODO: allow the second param to be [:range, :datastoreid_list] command :adddatastore, adddatastore_desc,:clusterid, :datastoreid do - helper.perform_actions(args[0],options,"updated") do |cluster| + helper.perform_action(args[0],options,"updated") do |cluster| cluster.adddatastore(args[1].to_i) end end @@ -135,7 +147,7 @@ cmd=CommandParser::CmdParser.new(ARGV) do # TODO: allow the second param to be [:range, :datastoreid_list] command :deldatastore, deldatastore_desc, :clusterid, :datastoreid do - helper.perform_actions(args[0],options,"updated") do |cluster| + helper.perform_action(args[0],options,"updated") do |cluster| cluster.deldatastore(args[1].to_i) end end @@ -146,7 +158,7 @@ cmd=CommandParser::CmdParser.new(ARGV) do # TODO: allow the second param to be [:range, :vnetid_list] command :addvnet, addvnet_desc,:clusterid, :vnetid do - helper.perform_actions(args[0],options,"updated") do |cluster| + helper.perform_action(args[0],options,"updated") do |cluster| cluster.addvnet(args[1].to_i) end end diff --git a/src/cli/onedatastore b/src/cli/onedatastore index 58edffcdd0..514b5c2249 100755 --- a/src/cli/onedatastore +++ b/src/cli/onedatastore @@ -56,6 +56,18 @@ cmd=CommandParser::CmdParser.new(ARGV) do helper.list_to_id(arg) end + set :format, :clusterid, OpenNebulaHelper.rname_to_id_desc("CLUSTER") do |arg| + OpenNebulaHelper.rname_to_id(arg, "CLUSTER") + end + + set :format, :groupid, OpenNebulaHelper.rname_to_id_desc("GROUP") do |arg| + OpenNebulaHelper.rname_to_id(arg, "GROUP") + end + + set :format, :userid, OpenNebulaHelper.rname_to_id_desc("USER") do |arg| + OpenNebulaHelper.rname_to_id(arg, "USER") + end + ######################################################################## # Commands ########################################################################