swa 0.7.0 → 0.7.2
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/glue_command.rb +13 -0
- data/lib/swa/cli/iam_command.rb +39 -1
- data/lib/swa/glue/crawl.rb +25 -0
- data/lib/swa/glue/crawler.rb +1 -1
- data/lib/swa/iam/role.rb +9 -0
- data/lib/swa/iam/role_policy.rb +28 -0
- data/lib/swa/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c40d983e15b51e98b660a8ad7646b60c55ecc5dbe2aa390d64d69f6f8576b4e0
|
4
|
+
data.tar.gz: 947bccdf34d4dfd1fd5dde03cd790211a81d5eab5e1c35b688a19aaf4865a940
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 47ed26af61683becc4e72eced8bbcf4b3414046d0f1ebebe379a69e1097f52bd6f1ff55c714046973c46f78b49acf64b3680943d5c66fb5c240c02266e25b430
|
7
|
+
data.tar.gz: 55ced2ec8ae59f6d6305a7f697b0b38429b76c551e3e0d33354f7ea7d3461df239575078bd805357e6827cb30c5b4a2ad97a87a09f86dad7d5096035d2e9fa6d
|
data/lib/swa/cli/glue_command.rb
CHANGED
@@ -2,6 +2,7 @@ require "aws-sdk-glue"
|
|
2
2
|
require "swa/cli/base_command"
|
3
3
|
require "swa/cli/collection_behaviour"
|
4
4
|
require "swa/cli/item_behaviour"
|
5
|
+
require "swa/glue/crawl"
|
5
6
|
require "swa/glue/crawler"
|
6
7
|
require "swa/glue/database"
|
7
8
|
require "swa/glue/job"
|
@@ -21,6 +22,18 @@ module Swa
|
|
21
22
|
|
22
23
|
include ItemBehaviour
|
23
24
|
|
25
|
+
subcommand ["crawls"], "Show crawls" do
|
26
|
+
|
27
|
+
include CollectionBehaviour
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
def collection
|
32
|
+
query_for(:list_crawls, :crawls, Swa::Glue::Crawl, :crawler_name => name)
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
24
37
|
private
|
25
38
|
|
26
39
|
def item
|
data/lib/swa/cli/iam_command.rb
CHANGED
@@ -137,10 +137,14 @@ module Swa
|
|
137
137
|
|
138
138
|
private
|
139
139
|
|
140
|
-
def
|
140
|
+
def role
|
141
141
|
Swa::IAM::Role.new(iam.role(File.basename(name)))
|
142
142
|
end
|
143
143
|
|
144
|
+
def item
|
145
|
+
role
|
146
|
+
end
|
147
|
+
|
144
148
|
subcommand "assume", "Assume the role" do
|
145
149
|
|
146
150
|
option "--session-name", "NAME", "STS session-name",
|
@@ -176,6 +180,40 @@ module Swa
|
|
176
180
|
|
177
181
|
end
|
178
182
|
|
183
|
+
subcommand ["policies"], "Show role policies." do
|
184
|
+
|
185
|
+
include CollectionBehaviour
|
186
|
+
|
187
|
+
private
|
188
|
+
|
189
|
+
def collection
|
190
|
+
role.policies
|
191
|
+
end
|
192
|
+
|
193
|
+
end
|
194
|
+
|
195
|
+
subcommand ["policy"], "Show named role policy" do
|
196
|
+
|
197
|
+
parameter "NAME", "policy name", attribute_name: :policy_name
|
198
|
+
|
199
|
+
include ItemBehaviour
|
200
|
+
|
201
|
+
subcommand "document", "print policy document" do
|
202
|
+
|
203
|
+
def execute
|
204
|
+
puts item.document
|
205
|
+
end
|
206
|
+
|
207
|
+
end
|
208
|
+
|
209
|
+
private
|
210
|
+
|
211
|
+
def item
|
212
|
+
role.policy(policy_name)
|
213
|
+
end
|
214
|
+
|
215
|
+
end
|
216
|
+
|
179
217
|
end
|
180
218
|
|
181
219
|
subcommand ["roles"], "Show roles" do
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require "swa/record"
|
2
|
+
|
3
|
+
module Swa
|
4
|
+
module Glue
|
5
|
+
|
6
|
+
class Crawl < Record
|
7
|
+
|
8
|
+
def summary
|
9
|
+
[
|
10
|
+
crawl_id,
|
11
|
+
pad(state, 9),
|
12
|
+
start_time.iso8601,
|
13
|
+
end_time.iso8601
|
14
|
+
].join(" ")
|
15
|
+
end
|
16
|
+
|
17
|
+
delegate :crawl_id
|
18
|
+
delegate :state
|
19
|
+
delegate :start_time
|
20
|
+
delegate :end_time
|
21
|
+
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
data/lib/swa/glue/crawler.rb
CHANGED
data/lib/swa/iam/role.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require "swa/resource"
|
2
2
|
require "swa/iam/credentials"
|
3
|
+
require "swa/iam/role_policy"
|
3
4
|
|
4
5
|
module Swa
|
5
6
|
module IAM
|
@@ -18,6 +19,14 @@ module Swa
|
|
18
19
|
role.name
|
19
20
|
end
|
20
21
|
|
22
|
+
def policies
|
23
|
+
RolePolicy.list(role.policies)
|
24
|
+
end
|
25
|
+
|
26
|
+
def policy(name)
|
27
|
+
RolePolicy.new(role.policy(name))
|
28
|
+
end
|
29
|
+
|
21
30
|
private
|
22
31
|
|
23
32
|
alias_method :role, :aws_resource
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require "cgi"
|
2
|
+
require "swa/resource"
|
3
|
+
|
4
|
+
module Swa
|
5
|
+
module IAM
|
6
|
+
|
7
|
+
class RolePolicy < Resource
|
8
|
+
|
9
|
+
def name
|
10
|
+
role_policy.name
|
11
|
+
end
|
12
|
+
|
13
|
+
def summary
|
14
|
+
name
|
15
|
+
end
|
16
|
+
|
17
|
+
def document
|
18
|
+
CGI.unescape(role_policy.policy_document)
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
alias_method :role_policy, :aws_resource
|
24
|
+
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
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.7.
|
4
|
+
version: 0.7.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-11-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -279,6 +279,7 @@ files:
|
|
279
279
|
- lib/swa/ec2/volume.rb
|
280
280
|
- lib/swa/ec2/vpc.rb
|
281
281
|
- lib/swa/elb/load_balancer.rb
|
282
|
+
- lib/swa/glue/crawl.rb
|
282
283
|
- lib/swa/glue/crawler.rb
|
283
284
|
- lib/swa/glue/database.rb
|
284
285
|
- lib/swa/glue/job.rb
|
@@ -291,6 +292,7 @@ files:
|
|
291
292
|
- lib/swa/iam/instance_profile.rb
|
292
293
|
- lib/swa/iam/policy.rb
|
293
294
|
- lib/swa/iam/role.rb
|
295
|
+
- lib/swa/iam/role_policy.rb
|
294
296
|
- lib/swa/iam/user.rb
|
295
297
|
- lib/swa/kms/alias.rb
|
296
298
|
- lib/swa/kms/key.rb
|