aws_clim 1.0.0 → 1.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 464aaeca6985ddf65ea4a3c072f44aa7561b52e2815ef66d8eda598d2c455259
4
- data.tar.gz: 38c760109126b5fa42ab730e2b9d770c66af761180a32366ca23a76ff76fc175
3
+ metadata.gz: c71eb36c809ad34e0682ed8f122ececc8f6a71532d6256c78670cba5ee4c13a8
4
+ data.tar.gz: 66d93e4023fdd715499e17ffa9fb47f47b6676af933bfcfc7c1427008b2d59cd
5
5
  SHA512:
6
- metadata.gz: 4f8b84374a0b5997ca009752cc4cad9308769e4ec4b37f782487e11e0fca612d0a31b2ad6417071aaef61cb77b85e71c481ee90e7f5b2fe850b696d4b0d2918c
7
- data.tar.gz: 361d4105ef8ce85e168e996d506c13bff92b3db2f6f071a3201fc5bb82543e94a35c4d012c125523fb93a230a0d418c52c20bfa865ca81f3c09093aa85590e16
6
+ metadata.gz: cba3ede4804d99f587ad7c1bda529b16ff752df71aea77497590b697f2787b4b1b03cc51dd7eadd23818b2cc1e0af56e41e1791e357f215814cf50921e0b5dcb
7
+ data.tar.gz: 65545875d1c30f02c09e34638e40865606f40de82ff9f4885b5dfe4c2741b78f42fdcf0590c2b95bb530fdd02b81ca3dea9a75ab28feb9f9f93248e84f400ec9
data/README.md CHANGED
@@ -22,18 +22,31 @@ Or install it yourself as:
22
22
 
23
23
  ## Usage
24
24
 
25
- TODO: Write usage instructions here
25
+ With a instance of AwsClim call aws services by its name and pass subcommands and options:
26
26
 
27
- ## Development
27
+ Examples:
28
28
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30
-
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
-
33
- ## Contributing
29
+ ```
30
+ # Subcommand
34
31
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/aws_clim. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/aws_clim/blob/master/CODE_OF_CONDUCT.md).
32
+ aws.iam('list-users').data.Users
33
+ ```
36
34
 
35
+ ```
36
+ # Subcommand + Arguments
37
+
38
+ result = aws.apigateway('put-method-response', {
39
+ 'rest-api-id' => rest_api['id'],
40
+ 'resource-id' => resource['id'],
41
+ 'http-method' => 'GET',
42
+ 'status-code' => '200',
43
+ 'response-parameters' => 'method.response.header.access-control-allow-origin=false'
44
+ })
45
+
46
+ result.success?
47
+ result.error?
48
+ result.data
49
+ ```
37
50
 
38
51
  ## License
39
52
 
@@ -1,3 +1,3 @@
1
1
  module AwsClim
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.2"
3
3
  end
data/lib/aws_clim.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'ostruct'
1
2
  require 'json'
2
3
  require 'open3'
3
4
 
@@ -7,57 +8,6 @@ class AwsClim
7
8
  @global_options = global_options
8
9
  end
9
10
 
10
- class SimpleResult
11
- attr_reader :data
12
-
13
- def initialize(data)
14
- @data = data
15
- end
16
-
17
- def error?
18
- false
19
- end
20
-
21
- def success?
22
- true
23
- end
24
- end
25
-
26
- class ItemsResult < SimpleResult
27
- include Enumerable
28
-
29
- attr_reader :data, :items
30
-
31
- def initialize(data)
32
- super
33
- @items = data['items']
34
- end
35
-
36
- def each(&block)
37
- @data.fetch('items').each(&block)
38
- end
39
- end
40
-
41
- class ErrorResult
42
- attr_reader :message
43
-
44
- def initialize(message)
45
- @message = message
46
- end
47
-
48
- def to_s
49
- "Error: #{@message}"
50
- end
51
-
52
- def success?
53
- false
54
- end
55
-
56
- def error?
57
- true
58
- end
59
- end
60
-
61
11
  %w(
62
12
  accessanalyzer
63
13
  account
@@ -388,10 +338,9 @@ class AwsClim
388
338
  out, err, status = Open3.capture3(cmd)
389
339
 
390
340
  if status.success?
391
- result = JSON.parse(out)
392
- result.key?('items') ? ItemsResult.new(result) : SimpleResult.new(result)
341
+ OpenStruct.new(success?: true, error?: false, data: OpenStruct.new(JSON.parse(out)))
393
342
  else
394
- ErrorResult.new(err)
343
+ OpenStruct.new(success?: false, error?: true, data: err)
395
344
  end
396
345
  end
397
346
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws_clim
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew S Aguiar
@@ -24,7 +24,6 @@ files:
24
24
  - Gemfile.lock
25
25
  - LICENSE.txt
26
26
  - README.md
27
- - aws_clim-0.1.0.gem
28
27
  - aws_clim.gemspec
29
28
  - bin/console
30
29
  - lib/aws_clim.rb
data/aws_clim-0.1.0.gem DELETED
Binary file