aws_clim 1.0.2 → 1.0.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/README.md +19 -2
- data/lib/aws_clim/version.rb +1 -1
- data/lib/aws_clim.rb +2 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ac0cd640f3b253853487800afc8dce04cfc1792d3322d62099d0d3ec0e6988e4
|
4
|
+
data.tar.gz: 39eeb60f7b3ec2613a7a3c6ef12ff772c437412fa1ebffd2d1c9a3fe4cc59c24
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 456cda408a13813578cad9b2c777e982e8c95bdb4de14e55503fe0a7cf9124e2e03d34d49a9552d07a5924e9dc2e1d87f5a065794ae3b92ea0b102dac1d168d2
|
7
|
+
data.tar.gz: b054f592c2f7584e8e3ee9facd0e59f1b01b165a5c2ae44fcf1e206e34e6cab1a0c1c9fba978cde57a0fef3bbd3aa264a6a1f6a00af21be32dfded73050561c5
|
data/README.md
CHANGED
@@ -1,8 +1,14 @@
|
|
1
1
|
# AwsClim
|
2
2
|
|
3
|
-
|
3
|
+
AwsClim is a light wrapper around `aws cli` tool. it adds some convenience when calling the command and
|
4
|
+
dealing with the results.
|
4
5
|
|
5
|
-
|
6
|
+
- Maps all aws services as a method on AwsClim instance.
|
7
|
+
- Set format as JSON as default.
|
8
|
+
- Deals with arguments as Array, Hash or simply string
|
9
|
+
- Parses all results as JSON
|
10
|
+
- Returns an `OpenStruct.new(error: true, success: false, data: err)` when error happens.
|
11
|
+
- Returns an `OpenStruct.new(error: false, success: true, data: JSON.parse(out, object_class: OpenStruct))` when command returns successfuly.
|
6
12
|
|
7
13
|
## Installation
|
8
14
|
|
@@ -22,6 +28,17 @@ Or install it yourself as:
|
|
22
28
|
|
23
29
|
## Usage
|
24
30
|
|
31
|
+
```
|
32
|
+
aws = AwsClim.new()
|
33
|
+
```
|
34
|
+
|
35
|
+
By calling new without parameters AwsClim uses the profile `default`(see https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/guide_credentials_profiles.html to learn about aws profiles).
|
36
|
+
To set a different profile use profile argument on new.
|
37
|
+
|
38
|
+
```
|
39
|
+
aws = AwsClim.new(profile: 'other-profile')
|
40
|
+
```
|
41
|
+
|
25
42
|
With a instance of AwsClim call aws services by its name and pass subcommands and options:
|
26
43
|
|
27
44
|
Examples:
|
data/lib/aws_clim/version.rb
CHANGED
data/lib/aws_clim.rb
CHANGED
@@ -3,7 +3,7 @@ require 'json'
|
|
3
3
|
require 'open3'
|
4
4
|
|
5
5
|
class AwsClim
|
6
|
-
def initialize(profile
|
6
|
+
def initialize(profile: 'default', global_options: {})
|
7
7
|
@profile = profile
|
8
8
|
@global_options = global_options
|
9
9
|
end
|
@@ -338,7 +338,7 @@ class AwsClim
|
|
338
338
|
out, err, status = Open3.capture3(cmd)
|
339
339
|
|
340
340
|
if status.success?
|
341
|
-
OpenStruct.new(success?: true, error?: false, data:
|
341
|
+
OpenStruct.new(success?: true, error?: false, data: JSON.parse(out, object_class: OpenStruct))
|
342
342
|
else
|
343
343
|
OpenStruct.new(success?: false, error?: true, data: err)
|
344
344
|
end
|