awful 0.0.179 → 0.0.180
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/bin/config +7 -0
- data/lib/awful/config.rb +88 -0
- data/lib/awful/version.rb +1 -1
- data/lib/awful/vpce.rb +3 -3
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e11f3359fe4adb56535cfd09a2baea8eca683d4
|
4
|
+
data.tar.gz: 7d18da124bd687439a1b9dc01f6c5be1b35d59d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7cd7d321f9dbd8aa02d8b696fc7a2baecec2dab180b32a4f458c777754361418af7b0a474bc64f1eff1688da1fcc9ee339e13ea8e33e6aea0c5db383a1381625
|
7
|
+
data.tar.gz: f23c217fc9e4e08a206f487e02bd5fd49b9916729cc883580f3f70be62781260a70e43943fb64a6309127254f3b4a69b5850771011e66a1ac91cca009065d24c
|
data/bin/config
ADDED
data/lib/awful/config.rb
ADDED
@@ -0,0 +1,88 @@
|
|
1
|
+
module Awful
|
2
|
+
module Short
|
3
|
+
def config(*args)
|
4
|
+
Awful::Config.new.invoke(*args)
|
5
|
+
end
|
6
|
+
end
|
7
|
+
|
8
|
+
class Config < Cli
|
9
|
+
COLORS = {
|
10
|
+
ACTIVE: :green,
|
11
|
+
DELETING: :red,
|
12
|
+
DELETING_RESULTS: :red,
|
13
|
+
EVALUATING: :yellow,
|
14
|
+
COMPLIANT: :green,
|
15
|
+
NON_COMPLIANT: :red,
|
16
|
+
NOT_APPLICABLE: :yellow,
|
17
|
+
INSUFFICIENT_DATA: :yellow,
|
18
|
+
}
|
19
|
+
|
20
|
+
no_commands do
|
21
|
+
def config
|
22
|
+
@_config ||= Aws::ConfigService::Client.new
|
23
|
+
end
|
24
|
+
|
25
|
+
def color(string)
|
26
|
+
set_color(string, COLORS.fetch(string.to_sym, :yellow))
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
desc 'recorders', 'show delivery recorders'
|
31
|
+
def recorders
|
32
|
+
config.describe_configuration_recorders.configuration_recorders.output do |list|
|
33
|
+
## there is likely only one, so dump it
|
34
|
+
puts YAML.dump(list.map{ |recorder| stringify_keys(recorder.to_hash) })
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
desc 'channels', 'list delivery channels'
|
39
|
+
def channels
|
40
|
+
config.describe_delivery_channels.delivery_channels.output do |list|
|
41
|
+
## there is likely only one, so dump it
|
42
|
+
puts YAML.dump(list.map{ |channel| stringify_keys(channel.to_hash) })
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
desc 'rules [NAMES]', 'list config rules'
|
47
|
+
method_option :long, aliases: '-l', type: :boolean, default: false, desc: 'long listing'
|
48
|
+
def rules(*names)
|
49
|
+
paginate(:config_rules) do |next_token|
|
50
|
+
config.describe_config_rules(config_rule_names: names)
|
51
|
+
end.output do |rules|
|
52
|
+
if options[:long]
|
53
|
+
print_table rules.map { |r|
|
54
|
+
s = r.source
|
55
|
+
[r.config_rule_name, r.config_rule_id, color(r.config_rule_state), r.maximum_execution_frequency, s.owner, s.source_identifier]
|
56
|
+
}
|
57
|
+
else
|
58
|
+
puts rules.map(&:config_rule_name)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
desc 'dump NAMES', 'get configuration for rules'
|
64
|
+
def dump(*names)
|
65
|
+
config.describe_config_rules(config_rule_names: names).config_rules.output do |list|
|
66
|
+
puts YAML.dump(list.map{ |rule| stringify_keys(rule.to_hash) })
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
desc 'compliance RULE', 'get compliance status for rule'
|
71
|
+
def compliance(rule)
|
72
|
+
paginate(:evaluation_results) do |next_token|
|
73
|
+
config.get_compliance_details_by_config_rule(config_rule_name: rule, next_token: next_token)
|
74
|
+
end.output do |results|
|
75
|
+
print_table results.map { |r|
|
76
|
+
q = r.evaluation_result_identifier.evaluation_result_qualifier
|
77
|
+
[q.resource_type, q.resource_id, color(r.compliance_type), r.result_recorded_time]
|
78
|
+
}
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
desc 'evaluate NAMES', 'run on-demand evaluation for rules'
|
83
|
+
def evaluate(*names)
|
84
|
+
config.start_config_rules_evaluation(config_rule_names: names)
|
85
|
+
end
|
86
|
+
|
87
|
+
end
|
88
|
+
end
|
data/lib/awful/version.rb
CHANGED
data/lib/awful/vpce.rb
CHANGED
@@ -27,9 +27,9 @@ module Awful
|
|
27
27
|
def ls(*ids)
|
28
28
|
filters = [
|
29
29
|
{ name: 'vpc-endpoint-id', values: ids },
|
30
|
-
{ name: 'vpc-id', values: options[:vpc] },
|
31
|
-
{ name: 'service-name', values: options[:service].map { |s| "com.amazonaws.#{ENV['AWS_REGION']}.#{s.downcase}" } },
|
32
|
-
{ name: 'vpc-endpoint-state', values: options[:state] },
|
30
|
+
{ name: 'vpc-id', values: Array(options[:vpc]) },
|
31
|
+
{ name: 'service-name', values: Array(options[:service]).map { |s| "com.amazonaws.#{ENV['AWS_REGION']}.#{s.downcase}" } },
|
32
|
+
{ name: 'vpc-endpoint-state', values: Array(options[:state]) },
|
33
33
|
].reject { |f| f[:values].empty? }
|
34
34
|
filters = nil if filters.empty?
|
35
35
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: awful
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.180
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ric Lister
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-09-
|
11
|
+
date: 2017-09-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -93,6 +93,7 @@ executables:
|
|
93
93
|
- certs
|
94
94
|
- cf
|
95
95
|
- cloudfront
|
96
|
+
- config
|
96
97
|
- cwevents
|
97
98
|
- cwlogs
|
98
99
|
- dp
|
@@ -140,6 +141,7 @@ files:
|
|
140
141
|
- bin/certs
|
141
142
|
- bin/cf
|
142
143
|
- bin/cloudfront
|
144
|
+
- bin/config
|
143
145
|
- bin/cwevents
|
144
146
|
- bin/cwlogs
|
145
147
|
- bin/dp
|
@@ -186,6 +188,7 @@ files:
|
|
186
188
|
- lib/awful/cloudfront.rb
|
187
189
|
- lib/awful/cloudwatch_events.rb
|
188
190
|
- lib/awful/cloudwatch_logs.rb
|
191
|
+
- lib/awful/config.rb
|
189
192
|
- lib/awful/datapipeline.rb
|
190
193
|
- lib/awful/dynamodb.rb
|
191
194
|
- lib/awful/dynamodb_streams.rb
|