bcome 0.5.2 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/bcome/version.rb +1 -1
- data/lib/become_object.rb +1 -0
- data/lib/helpers/fog_helper.rb +46 -4
- data/lib/render_irb.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ac9398e6673878f4324e6127900c8939b1a0cdf
|
4
|
+
data.tar.gz: 102944f7cb3396666308c200715e7e2daa72483c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7a9ad2aa82e1862b1b4c20a585ce2a193277a95b67ce4e32aff53cbc865a852ea8dd0157fa1bf10e1e0ec6a31a071817489c54da06a6a430bdfd5946bb3106cf
|
7
|
+
data.tar.gz: 0cb412f74956ac92be3477cd8de71807d9cc1fbe25b5b30217bd707bc8d5634b3134991f5bb3fb0a500cb7eb8355a9bad87cb9744cf8b07ae47a495ed7e1dd2d
|
data/lib/bcome/version.rb
CHANGED
data/lib/become_object.rb
CHANGED
@@ -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"
|
data/lib/helpers/fog_helper.rb
CHANGED
@@ -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] :
|
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
|
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]
|
data/lib/render_irb.rb
CHANGED
@@ -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 "\
|
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.
|
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-
|
11
|
+
date: 2016-08-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk
|