bcome 0.5.2 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f21306ed54b699575e5cf11b63eeb0b0652775c
4
- data.tar.gz: e70fdd58135f553d8544a2e3dae7fbfaeb2f9b99
3
+ metadata.gz: 3ac9398e6673878f4324e6127900c8939b1a0cdf
4
+ data.tar.gz: 102944f7cb3396666308c200715e7e2daa72483c
5
5
  SHA512:
6
- metadata.gz: ec8d0eaff4dc3240adf07a45e4bea4dc9f67cacc3706b73bf5431749b2c39dcfa4285cc298bb50ee60af068f76ec327633f19025432df9e562f778aa0b2fd790
7
- data.tar.gz: 5669e33e6261e4dacf18535f473627581452329b9d04d0f39cc0348faf5c77ae2f624337393f87ce9436a85c628690c3d18205a43e31da4ded6731d904564d76
6
+ metadata.gz: 7a9ad2aa82e1862b1b4c20a585ce2a193277a95b67ce4e32aff53cbc865a852ea8dd0157fa1bf10e1e0ec6a31a071817489c54da06a6a430bdfd5946bb3106cf
7
+ data.tar.gz: 0cb412f74956ac92be3477cd8de71807d9cc1fbe25b5b30217bd707bc8d5634b3134991f5bb3fb0a500cb7eb8355a9bad87cb9744cf8b07ae47a495ed7e1dd2d
@@ -1,3 +1,3 @@
1
1
  module Bcome
2
- VERSION = "0.5.2"
2
+ VERSION = "0.5.3"
3
3
  end
@@ -99,6 +99,7 @@ module ::Bcome::BecomeObject
99
99
  def list
100
100
  if responds_to_list?
101
101
  ::RENDER.list_items(collection_key, resources)
102
+ render_servers_not_returned_by_filtered_lookup if respond_to?(:render_servers_not_returned_by_filtered_lookup)
102
103
  else
103
104
  puts "\n" + "No list function at this level".warning + "\n\n"
104
105
  puts "Enter 'menu' for all available options".menu_item_white + "\n\n"
@@ -9,7 +9,7 @@ module ::Bcome::FogHelper
9
9
  end
10
10
 
11
11
  def ec2_filters
12
- network_lookup[:ec2_server_lookup_filters] ? network_lookup[:ec2_server_lookup_filters] : { 'instance-id' => [] }
12
+ network_lookup[:ec2_server_lookup_filters] ? network_lookup[:ec2_server_lookup_filters] : unfiltered_search_params
13
13
  end
14
14
 
15
15
  def reload!
@@ -19,16 +19,58 @@ module ::Bcome::FogHelper
19
19
  list
20
20
  end
21
21
 
22
- def unfiltered_servers
22
+ def unfiltered_search_params
23
+ { 'instance-id' => [] }
24
+ end
25
+
26
+ ## FOG filter lookups - TODO: misnomers & good intentions ------------
27
+
28
+ ## smell
29
+ def render_servers_not_returned_by_filtered_lookup
30
+ return unless show_all_unfiltered_status?
31
+ unfiltered_servers = servers(servers_not_returned_by_filtered_lookup)
32
+ if unfiltered_servers.any?
33
+ puts "\n#{network_lookup[:show_all_unfiltered_title]}".informational
34
+ puts unfiltered_servers.collect{|server|
35
+ "#{server.tags["Name"].menu_item_cyan} - #{server.state.send(colour_code_for_server_status[server.state])}"
36
+ }.join("\n")
37
+ end
38
+ end
39
+
40
+ def colour_code_for_server_status
41
+ {
42
+ "pending" => :headsup,
43
+ "running" => :friendly,
44
+ "terminated" => :menu_item_white, #durr
45
+ "stopping" => :headsup,
46
+ "stopped" => :danger
47
+ }
48
+ end
49
+
50
+ def servers_not_returned_by_filtered_lookup
51
+ filtered_lookup_names = resources.collect(&:identifier)
52
+ return unfiltered_fog_lookup.select{|server| !filtered_lookup_names.include?(server.tags["Name"]) }
53
+ end
54
+
55
+ def unfiltered_fog_lookup
56
+ fog_client.servers.all(unfiltered_search_params)
57
+ end
58
+
59
+ def show_all_unfiltered_status?
60
+ self.network_lookup[:show_all_unfiltered]
61
+ end
62
+
63
+ def unfiltered_servers ### Misnomer - these are filtered
23
64
  @unfiltered_servers ||= fog_client.servers.all(ec2_filters)
24
65
  end
25
66
 
67
+ ## ---------------------------------------------------------------------
68
+
26
69
  def ec2_tags
27
70
  network_lookup[:ec2_tag_filter]
28
71
  end
29
72
 
30
- def servers
31
- all = unfiltered_servers
73
+ def servers(all = unfiltered_servers)
32
74
  filtered_by_tags = ec2_tags ? filter_by_tags(all) : all
33
75
 
34
76
  custom_filter_method = @meta_data[:network_lookup][:custom_post_process_filter_method]
@@ -2,7 +2,7 @@ class ::Bcome::RenderIrb
2
2
 
3
3
  def list_items(parent_collection, items)
4
4
  if !items || !items.any?
5
- print "\n\sNo resources collections found. Maybe you forgot to add any?".headsup
5
+ print "\nNo active resource collections found.\n".headsup
6
6
  else
7
7
  print "\n\s"
8
8
  puts "#{parent_collection.to_s.menu_title_green}\n".menu_title_green
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bcome
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Guillaume Roderick (Webzakimbo)
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-08-12 00:00:00.000000000 Z
11
+ date: 2016-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk