11 def list
12 resolve_account
13 affinity_groups = client.list_affinity_groups(options)
14 if affinity_groups.size < 1
15 say "No affinity groups found."
16 else
17 case options[:format].to_sym
18 when :yaml
19 puts({affinity_groups: affinity_groups}.to_yaml)
20 when :json
21 puts JSON.pretty_generate(affinity_groups: affinity_groups)
22 else
23 table = [%w(Domain Account Name, Description, VMs)]
24 affinity_groups.each do |group|
25 table << [
26 group['domain'], group['account'],
27 group['name'], group['description'],
28 group['virtualmachineIds'] ? group['virtualmachineIds'].size : nil
29 ]
30 end
31 print_table table
32 say "Total number of affinity groups: #{affinity_groups.size}"
33 end
34 end
35 end