swa 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/swa/cli/collection_behaviour.rb +8 -0
- data/lib/swa/cli/ec2_command.rb +22 -0
- data/lib/swa/cli/elb_command.rb +53 -0
- data/lib/swa/cli/main_command.rb +2 -0
- data/lib/swa/cloud_formation/stack.rb +4 -0
- data/lib/swa/ec2/image.rb +4 -0
- data/lib/swa/ec2/instance.rb +4 -0
- data/lib/swa/ec2/key_pair.rb +4 -0
- data/lib/swa/ec2/security_group.rb +4 -0
- data/lib/swa/ec2/snapshot.rb +13 -4
- data/lib/swa/ec2/subnet.rb +4 -0
- data/lib/swa/ec2/volume.rb +4 -0
- data/lib/swa/ec2/vpc.rb +4 -0
- data/lib/swa/elb/load_balancer.rb +24 -0
- data/lib/swa/iam/group.rb +11 -1
- data/lib/swa/iam/policy.rb +4 -0
- data/lib/swa/iam/role.rb +4 -0
- data/lib/swa/iam/user.rb +4 -0
- data/lib/swa/kms/alias.rb +4 -0
- data/lib/swa/record.rb +6 -0
- data/lib/swa/s3/bucket.rb +7 -1
- data/lib/swa/version.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 518a3bd32a4bf016d2001f1c218a11075bcb439f
|
4
|
+
data.tar.gz: 14cef26fd503b59396ae9eeb2eb950cd3823ff30
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 677537cc4f3c0acb8f93569eb27950b3b76db266b5dfe4a6233ca5990d97f09583a7725c5219a2bddb18d7c29dd8496d42965ffc9f565c81b6b81355e697c77a
|
7
|
+
data.tar.gz: 26d882e959cbd567c9533d2e97144aeeea21cae0e42ca3770f93b908e2cda20d2d815f9d17c45fa99ae9c34040b6c0bb9001128f6ef15a852c97682232b5c9b0
|
@@ -19,6 +19,14 @@ module Swa
|
|
19
19
|
|
20
20
|
end
|
21
21
|
|
22
|
+
target.subcommand ["ids"], "Just print ids" do
|
23
|
+
def execute
|
24
|
+
collection.each do |i|
|
25
|
+
puts i.id
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
22
30
|
target.subcommand ["data", "d"], "Full details" do
|
23
31
|
|
24
32
|
parameter "[QUERY]", "JMESPath expression"
|
data/lib/swa/cli/ec2_command.rb
CHANGED
@@ -302,12 +302,34 @@ module Swa
|
|
302
302
|
EOF
|
303
303
|
|
304
304
|
option "--owned-by", "OWNER", "with specified owner", :default => "self"
|
305
|
+
option ["--volume", "--of"], "VOLUME-ID", "for specified volume"
|
306
|
+
|
307
|
+
option ["--started-after", "--after"], "WHEN", "earliest start-time"
|
308
|
+
option ["--started-before", "--before"], "WHEN", "latest start-time"
|
305
309
|
|
306
310
|
include TagFilterOptions
|
307
311
|
include CollectionBehaviour
|
308
312
|
|
309
313
|
private
|
310
314
|
|
315
|
+
def volume=(volume_id)
|
316
|
+
add_filter("volume-id", volume_id)
|
317
|
+
end
|
318
|
+
|
319
|
+
def started_after=(datetime_string)
|
320
|
+
min_start_time = parse_datetime(datetime_string).max
|
321
|
+
selector.add do |image|
|
322
|
+
image.start_time > min_start_time
|
323
|
+
end
|
324
|
+
end
|
325
|
+
|
326
|
+
def started_before=(datetime_string)
|
327
|
+
max_start_time = parse_datetime(datetime_string).min
|
328
|
+
selector.add do |image|
|
329
|
+
image.start_time < max_start_time
|
330
|
+
end
|
331
|
+
end
|
332
|
+
|
311
333
|
def snapshots
|
312
334
|
query_options[:owner_ids] = [owned_by]
|
313
335
|
query_for(:snapshots, Swa::EC2::Snapshot)
|
@@ -0,0 +1,53 @@
|
|
1
|
+
require "aws-sdk-resources"
|
2
|
+
require "swa/cli/base_command"
|
3
|
+
require "swa/cli/collection_behaviour"
|
4
|
+
require "swa/cli/item_behaviour"
|
5
|
+
require "swa/elb/load_balancer"
|
6
|
+
|
7
|
+
module Swa
|
8
|
+
module CLI
|
9
|
+
|
10
|
+
class ElbCommand < BaseCommand
|
11
|
+
|
12
|
+
subcommand ["load-balancer", "lb"], "Show load-balancer" do
|
13
|
+
|
14
|
+
parameter "NAME", "ELB name"
|
15
|
+
|
16
|
+
include ItemBehaviour
|
17
|
+
|
18
|
+
private
|
19
|
+
|
20
|
+
def item
|
21
|
+
results = describe_load_balancers(:load_balancer_names => [name])
|
22
|
+
signal_error "No such ELB '#{name}'" unless results.any?
|
23
|
+
Swa::ELB::LoadBalancer.new(results.first)
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
subcommand ["load-balancers", "lbs"], "Show load-balancers" do
|
29
|
+
|
30
|
+
include CollectionBehaviour
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
def collection
|
35
|
+
Swa::ELB::LoadBalancer.list(describe_load_balancers)
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
protected
|
41
|
+
|
42
|
+
def elb_client
|
43
|
+
::Aws::ElasticLoadBalancing::Client.new(aws_config)
|
44
|
+
end
|
45
|
+
|
46
|
+
def describe_load_balancers(options = {})
|
47
|
+
elb_client.describe_load_balancers(options).load_balancer_descriptions
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
53
|
+
end
|
data/lib/swa/cli/main_command.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require "swa/cli/base_command"
|
2
2
|
require "swa/cli/cloud_formation_command"
|
3
3
|
require "swa/cli/ec2_command"
|
4
|
+
require "swa/cli/elb_command"
|
4
5
|
require "swa/cli/iam_command"
|
5
6
|
require "swa/cli/kms_command"
|
6
7
|
require "swa/cli/s3_command"
|
@@ -12,6 +13,7 @@ module Swa
|
|
12
13
|
|
13
14
|
subcommand ["cf", "cloudformation"], "CloudFormation stuff", CloudFormationCommand
|
14
15
|
subcommand "ec2", "EC2 stuff", Ec2Command
|
16
|
+
subcommand "elb", "elb stuff", ElbCommand
|
15
17
|
subcommand "iam", "IAM stuff", IamCommand
|
16
18
|
subcommand "kms", "KMS stuff", KmsCommand
|
17
19
|
subcommand "s3", "S3 stuff", S3Command
|
data/lib/swa/ec2/image.rb
CHANGED
data/lib/swa/ec2/instance.rb
CHANGED
data/lib/swa/ec2/key_pair.rb
CHANGED
data/lib/swa/ec2/snapshot.rb
CHANGED
@@ -8,17 +8,26 @@ module Swa
|
|
8
8
|
|
9
9
|
include TaggedResource
|
10
10
|
|
11
|
+
def id
|
12
|
+
s.snapshot_id
|
13
|
+
end
|
14
|
+
|
11
15
|
def summary
|
12
16
|
[
|
13
17
|
field(s, :snapshot_id),
|
14
18
|
field(s, :volume_id),
|
15
|
-
sprintf("%5d",
|
16
|
-
|
17
|
-
rpad(
|
18
|
-
quoted(
|
19
|
+
sprintf("%5d", volume_size),
|
20
|
+
start_time.iso8601,
|
21
|
+
rpad(progress, 4),
|
22
|
+
quoted(description)
|
19
23
|
].join(" ")
|
20
24
|
end
|
21
25
|
|
26
|
+
delegate :description
|
27
|
+
delegate :progress
|
28
|
+
delegate :start_time
|
29
|
+
delegate :volume_size
|
30
|
+
|
22
31
|
delegate :delete
|
23
32
|
|
24
33
|
private
|
data/lib/swa/ec2/subnet.rb
CHANGED
data/lib/swa/ec2/volume.rb
CHANGED
data/lib/swa/ec2/vpc.rb
CHANGED
@@ -0,0 +1,24 @@
|
|
1
|
+
require "swa/record"
|
2
|
+
|
3
|
+
module Swa
|
4
|
+
module ELB
|
5
|
+
|
6
|
+
class LoadBalancer < Record
|
7
|
+
|
8
|
+
def summary
|
9
|
+
[
|
10
|
+
pad(name, 36),
|
11
|
+
scheme
|
12
|
+
].join(" ")
|
13
|
+
end
|
14
|
+
|
15
|
+
def name
|
16
|
+
aws_record.load_balancer_name
|
17
|
+
end
|
18
|
+
|
19
|
+
delegate :scheme
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
data/lib/swa/iam/group.rb
CHANGED
data/lib/swa/iam/policy.rb
CHANGED
data/lib/swa/iam/role.rb
CHANGED
data/lib/swa/iam/user.rb
CHANGED
data/lib/swa/kms/alias.rb
CHANGED
data/lib/swa/record.rb
CHANGED
data/lib/swa/s3/bucket.rb
CHANGED
data/lib/swa/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: swa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-11-
|
11
|
+
date: 2016-11-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -145,6 +145,7 @@ files:
|
|
145
145
|
- lib/swa/cli/collection_behaviour.rb
|
146
146
|
- lib/swa/cli/data_output.rb
|
147
147
|
- lib/swa/cli/ec2_command.rb
|
148
|
+
- lib/swa/cli/elb_command.rb
|
148
149
|
- lib/swa/cli/filter_options.rb
|
149
150
|
- lib/swa/cli/iam_command.rb
|
150
151
|
- lib/swa/cli/item_behaviour.rb
|
@@ -164,6 +165,7 @@ files:
|
|
164
165
|
- lib/swa/ec2/tagged_resource.rb
|
165
166
|
- lib/swa/ec2/volume.rb
|
166
167
|
- lib/swa/ec2/vpc.rb
|
168
|
+
- lib/swa/elb/load_balancer.rb
|
167
169
|
- lib/swa/iam/group.rb
|
168
170
|
- lib/swa/iam/policy.rb
|
169
171
|
- lib/swa/iam/role.rb
|
@@ -197,7 +199,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
197
199
|
version: '0'
|
198
200
|
requirements: []
|
199
201
|
rubyforge_project:
|
200
|
-
rubygems_version: 2.
|
202
|
+
rubygems_version: 2.6.7
|
201
203
|
signing_key:
|
202
204
|
specification_version: 4
|
203
205
|
summary: AWS, backwards
|