From a85f4a6383ea9e91cbe8333aec1bf244d6508f18 Mon Sep 17 00:00:00 2001 From: "Ruben S. Montero" Date: Thu, 5 Jan 2017 13:45:19 +0100 Subject: [PATCH] F #2347: Show the total number of VMs in Group in list --- src/cli/etc/onevmgroup.yaml | 12 +++++++++--- src/cli/one_helper/onevmgroup_helper.rb | 21 +++++++++++++++++---- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/src/cli/etc/onevmgroup.yaml b/src/cli/etc/onevmgroup.yaml index fdf6ec3e6e..a0f96ff19e 100644 --- a/src/cli/etc/onevmgroup.yaml +++ b/src/cli/etc/onevmgroup.yaml @@ -10,17 +10,22 @@ :USER: :desc: Username of the VM Group owner - :size: 15 + :size: 8 :left: true :GROUP: :desc: Group of the VM Group - :size: 15 + :size: 8 :left: true +:VMS: + :desc: Number of VMs in the VM Group + :size: 4 + :lef: true + :ROLES: :desc: Roles in the VM Group - :size: 31 + :size: 36 :left: true :default: @@ -28,4 +33,5 @@ - :USER - :GROUP - :NAME +- :VMS - :ROLES diff --git a/src/cli/one_helper/onevmgroup_helper.rb b/src/cli/one_helper/onevmgroup_helper.rb index e05d4be112..ec2883c271 100644 --- a/src/cli/one_helper/onevmgroup_helper.rb +++ b/src/cli/one_helper/onevmgroup_helper.rb @@ -38,15 +38,28 @@ class OneVMGroupHelper < OpenNebulaHelper::OneHelper end column :USER, "Username of the VM Group owner", :left, - :size=>15 do |d| + :size=>8 do |d| helper.user_name(d, options) end - column :GROUP, "Group of the VM Group", :left, :size=>15 do |d| + column :GROUP, "Group of the VM Group", :left, :size=>8 do |d| helper.group_name(d, options) end - column :ROLES, "Roles in the VM Group", :left, :size=>31 do |d| + column :VMS, "Number of VMs in the VM Group", :left, :size=>4 do |d| + roles = d["ROLES"]["ROLE"] + vms = 0 + + if !roles.nil? + roles.each { |r| + vms += r["VMS"].split(',').size if !r["VMS"].nil? + } + end + + vms + end + + column :ROLES, "Roles in the VM Group", :left, :size=>36 do |d| roles = d["ROLES"]["ROLE"] roles_names = "" @@ -58,7 +71,7 @@ class OneVMGroupHelper < OpenNebulaHelper::OneHelper roles_names end - default :ID, :USER, :GROUP, :NAME, :ROLES + default :ID, :USER, :GROUP, :NAME, :VMS, :ROLES end table