lono-params 0.0.1
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 +7 -0
- data/.gitignore +18 -0
- data/.rspec +2 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +116 -0
- data/Guardfile +12 -0
- data/LICENSE.txt +22 -0
- data/README.md +101 -0
- data/Rakefile +6 -0
- data/bin/lono-params +7 -0
- data/lib/lono-params.rb +7 -0
- data/lib/lono_params/cli.rb +19 -0
- data/lib/lono_params/cli/help.rb +19 -0
- data/lib/lono_params/generator.rb +73 -0
- data/lib/lono_params/version.rb +3 -0
- data/lono_params.gemspec +31 -0
- data/spec/fixtures/my_project/params/my-stack.txt +2 -0
- data/spec/lib/cli_spec.rb +19 -0
- data/spec/spec_helper.rb +22 -0
- metadata +192 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: ce015beb8876d31b788b7cf5467017e892175e33
|
|
4
|
+
data.tar.gz: c9b3a341de23ab62f2646a973a796272419cac4c
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 8d206bfcc0c7bacfa41f545b5442040c5e2e96d0445cbfd475e8e11082396214a02816cc8f524736c4da33c9df3e56db2e389c59ecb45eaaf08b4f8fa1e3e713
|
|
7
|
+
data.tar.gz: 865302f1c8a88f6792752fdaf5882afd58ab497a9ef2ab4083db554e36bce907a403ff1e7d440551842c8aa642aa4c66bc712ab6d152153dbb7bfdefc911aaee
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
lono-params (0.0.1)
|
|
5
|
+
colorize
|
|
6
|
+
hashie
|
|
7
|
+
plissken
|
|
8
|
+
thor
|
|
9
|
+
|
|
10
|
+
GEM
|
|
11
|
+
remote: https://rubygems.org/
|
|
12
|
+
specs:
|
|
13
|
+
activemodel (4.0.13)
|
|
14
|
+
activesupport (= 4.0.13)
|
|
15
|
+
builder (~> 3.1.0)
|
|
16
|
+
activesupport (4.0.13)
|
|
17
|
+
i18n (~> 0.6, >= 0.6.9)
|
|
18
|
+
minitest (~> 4.2)
|
|
19
|
+
multi_json (~> 1.3)
|
|
20
|
+
thread_safe (~> 0.1)
|
|
21
|
+
tzinfo (~> 0.3.37)
|
|
22
|
+
builder (3.1.4)
|
|
23
|
+
codeclimate-test-reporter (0.6.0)
|
|
24
|
+
simplecov (>= 0.7.1, < 1.0.0)
|
|
25
|
+
coderay (1.1.1)
|
|
26
|
+
colorize (0.8.1)
|
|
27
|
+
diff-lcs (1.2.5)
|
|
28
|
+
docile (1.1.5)
|
|
29
|
+
ffi (1.9.14)
|
|
30
|
+
formatador (0.2.5)
|
|
31
|
+
guard (2.14.0)
|
|
32
|
+
formatador (>= 0.2.4)
|
|
33
|
+
listen (>= 2.7, < 4.0)
|
|
34
|
+
lumberjack (~> 1.0)
|
|
35
|
+
nenv (~> 0.1)
|
|
36
|
+
notiffany (~> 0.0)
|
|
37
|
+
pry (>= 0.9.12)
|
|
38
|
+
shellany (~> 0.0)
|
|
39
|
+
thor (>= 0.18.1)
|
|
40
|
+
guard-bundler (2.1.0)
|
|
41
|
+
bundler (~> 1.0)
|
|
42
|
+
guard (~> 2.2)
|
|
43
|
+
guard-compat (~> 1.1)
|
|
44
|
+
guard-compat (1.2.1)
|
|
45
|
+
guard-rspec (4.7.3)
|
|
46
|
+
guard (~> 2.1)
|
|
47
|
+
guard-compat (~> 1.1)
|
|
48
|
+
rspec (>= 2.99.0, < 4.0)
|
|
49
|
+
hashie (3.4.6)
|
|
50
|
+
i18n (0.7.0)
|
|
51
|
+
json (2.0.2)
|
|
52
|
+
listen (3.1.5)
|
|
53
|
+
rb-fsevent (~> 0.9, >= 0.9.4)
|
|
54
|
+
rb-inotify (~> 0.9, >= 0.9.7)
|
|
55
|
+
ruby_dep (~> 1.2)
|
|
56
|
+
lumberjack (1.0.10)
|
|
57
|
+
method_source (0.8.2)
|
|
58
|
+
minitest (4.7.5)
|
|
59
|
+
multi_json (1.12.1)
|
|
60
|
+
nenv (0.3.0)
|
|
61
|
+
notiffany (0.1.1)
|
|
62
|
+
nenv (~> 0.1)
|
|
63
|
+
shellany (~> 0.0)
|
|
64
|
+
plissken (0.2.0)
|
|
65
|
+
symbolize (~> 4.2)
|
|
66
|
+
pry (0.10.4)
|
|
67
|
+
coderay (~> 1.1.0)
|
|
68
|
+
method_source (~> 0.8.1)
|
|
69
|
+
slop (~> 3.4)
|
|
70
|
+
rake (11.3.0)
|
|
71
|
+
rb-fsevent (0.9.7)
|
|
72
|
+
rb-inotify (0.9.7)
|
|
73
|
+
ffi (>= 0.5.0)
|
|
74
|
+
rspec (3.5.0)
|
|
75
|
+
rspec-core (~> 3.5.0)
|
|
76
|
+
rspec-expectations (~> 3.5.0)
|
|
77
|
+
rspec-mocks (~> 3.5.0)
|
|
78
|
+
rspec-core (3.5.3)
|
|
79
|
+
rspec-support (~> 3.5.0)
|
|
80
|
+
rspec-expectations (3.5.0)
|
|
81
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
82
|
+
rspec-support (~> 3.5.0)
|
|
83
|
+
rspec-mocks (3.5.0)
|
|
84
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
85
|
+
rspec-support (~> 3.5.0)
|
|
86
|
+
rspec-support (3.5.0)
|
|
87
|
+
ruby_dep (1.4.0)
|
|
88
|
+
shellany (0.0.1)
|
|
89
|
+
simplecov (0.12.0)
|
|
90
|
+
docile (~> 1.1.0)
|
|
91
|
+
json (>= 1.8, < 3)
|
|
92
|
+
simplecov-html (~> 0.10.0)
|
|
93
|
+
simplecov-html (0.10.0)
|
|
94
|
+
slop (3.6.0)
|
|
95
|
+
symbolize (4.5.2)
|
|
96
|
+
activemodel (>= 3.2, < 5)
|
|
97
|
+
activesupport (>= 3.2, < 5)
|
|
98
|
+
i18n
|
|
99
|
+
thor (0.19.1)
|
|
100
|
+
thread_safe (0.3.5)
|
|
101
|
+
tzinfo (0.3.51)
|
|
102
|
+
|
|
103
|
+
PLATFORMS
|
|
104
|
+
ruby
|
|
105
|
+
|
|
106
|
+
DEPENDENCIES
|
|
107
|
+
bundler (~> 1.3)
|
|
108
|
+
codeclimate-test-reporter
|
|
109
|
+
guard
|
|
110
|
+
guard-bundler
|
|
111
|
+
guard-rspec
|
|
112
|
+
lono-params!
|
|
113
|
+
rake
|
|
114
|
+
|
|
115
|
+
BUNDLED WITH
|
|
116
|
+
1.12.5
|
data/Guardfile
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
guard 'rspec' do
|
|
2
|
+
watch(%r{^spec/.+_spec\.rb$})
|
|
3
|
+
watch(%r{^lib/(.+)\.rb$}) { "spec/lono_params_spec.rb" }
|
|
4
|
+
watch(%r{^lib/lono_params/(.+)\.rb$}) { "spec/lono_params_spec.rb" }
|
|
5
|
+
watch('spec/spec_helper.rb') { "spec/lono_params_spec.rb" }
|
|
6
|
+
watch(%r{^lib/lono_params/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
guard 'bundler' do
|
|
10
|
+
watch('Gemfile')
|
|
11
|
+
watch(/^.+\.gemspec/)
|
|
12
|
+
end
|
data/LICENSE.txt
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Copyright (c) 2013 Tung Nguyen
|
|
2
|
+
|
|
3
|
+
MIT License
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
+
a copy of this software and associated documentation files (the
|
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
11
|
+
the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be
|
|
14
|
+
included in all copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# LonoParams
|
|
2
|
+
|
|
3
|
+
Tool to generate a CloudFormation params json formatted file
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
Add this line to your application's Gemfile:
|
|
8
|
+
|
|
9
|
+
gem 'lono-params'
|
|
10
|
+
|
|
11
|
+
And then execute:
|
|
12
|
+
|
|
13
|
+
$ bundle
|
|
14
|
+
|
|
15
|
+
Or install it yourself as:
|
|
16
|
+
|
|
17
|
+
$ gem install lono-params
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
Create a directory under your project folder called `params`. Then given, a file with params in a simple list format:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
$ cat params/my-stack.txt
|
|
25
|
+
Param1=1
|
|
26
|
+
Param2=1
|
|
27
|
+
$
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Generate the CloudFormation json file that can be used with the `aws cloudformation create-stack` command.
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
$ lono-params generate my-stack
|
|
34
|
+
Params file generated for my-stack at ./params/my-stack.json
|
|
35
|
+
$
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
This is what the `output/params/my-stack.json` file looks like:
|
|
39
|
+
|
|
40
|
+
```json
|
|
41
|
+
[
|
|
42
|
+
{
|
|
43
|
+
"ParameterKey": "Param1",
|
|
44
|
+
"ParameterValue": "1",
|
|
45
|
+
"UsePreviousValue": true
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"ParameterKey": "Param2",
|
|
49
|
+
"ParameterValue": "1",
|
|
50
|
+
"UsePreviousValue": true
|
|
51
|
+
}
|
|
52
|
+
]
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
## More Help
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
<pre>
|
|
60
|
+
$ bin/lono-params help
|
|
61
|
+
Commands:
|
|
62
|
+
lono-params generate NAME # generate parameter json file for NAME
|
|
63
|
+
lono-params help [COMMAND] # Describe available commands or one specific command
|
|
64
|
+
|
|
65
|
+
Options:
|
|
66
|
+
[--verbose], [--no-verbose]
|
|
67
|
+
[--noop], [--no-noop]
|
|
68
|
+
[--project-root=PROJECT_ROOT] # project root to use
|
|
69
|
+
# Default: .
|
|
70
|
+
|
|
71
|
+
$ lono-params help generate
|
|
72
|
+
/Users/tung/src/gitresolve/infra/lono/vendor/gems/lono-params/bin
|
|
73
|
+
Usage:
|
|
74
|
+
lono-params generate NAME
|
|
75
|
+
|
|
76
|
+
Options:
|
|
77
|
+
[--use-previous-value], [--no-use-previous-value]
|
|
78
|
+
# Default: true
|
|
79
|
+
[--verbose], [--no-verbose]
|
|
80
|
+
[--noop], [--no-noop]
|
|
81
|
+
[--project-root=PROJECT_ROOT] # project root to use
|
|
82
|
+
# Default: .
|
|
83
|
+
|
|
84
|
+
Description:
|
|
85
|
+
Example:
|
|
86
|
+
|
|
87
|
+
To generate a CloudFormation json file from params/my-stack.txt
|
|
88
|
+
|
|
89
|
+
$ lono-params generate my-stack
|
|
90
|
+
|
|
91
|
+
This will output a CloudFormation json file in output/params/my-stack.json
|
|
92
|
+
$
|
|
93
|
+
</pre>
|
|
94
|
+
|
|
95
|
+
## Contributing
|
|
96
|
+
|
|
97
|
+
1. Fork it
|
|
98
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
|
99
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
|
100
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
|
101
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
data/bin/lono-params
ADDED
data/lib/lono-params.rb
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
require 'thor'
|
|
2
|
+
require 'lono_params/cli/help'
|
|
3
|
+
|
|
4
|
+
module LonoParams
|
|
5
|
+
|
|
6
|
+
class CLI < Thor
|
|
7
|
+
class_option :verbose, type: :boolean
|
|
8
|
+
class_option :noop, type: :boolean
|
|
9
|
+
class_option :project_root, desc: "project root to use", default: '.'
|
|
10
|
+
|
|
11
|
+
desc "generate NAME", "generate parameter json file for NAME"
|
|
12
|
+
long_desc Help.generate
|
|
13
|
+
option :path, desc: "Path of the source params txt file. Use this to override the params/NAME.txt convention"
|
|
14
|
+
option :use_previous_value, type: :boolean, default: true
|
|
15
|
+
def generate(name)
|
|
16
|
+
Generator.new(name, options).generate
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module LonoParams
|
|
2
|
+
class CLI < Thor
|
|
3
|
+
class Help
|
|
4
|
+
class << self
|
|
5
|
+
def generate
|
|
6
|
+
<<-EOL
|
|
7
|
+
Example:
|
|
8
|
+
|
|
9
|
+
To generate a CloudFormation json file from params/my-stack.txt
|
|
10
|
+
|
|
11
|
+
$ lono-params generate my-stack
|
|
12
|
+
|
|
13
|
+
This will output a CloudFormation json file in output/params/my-stack.json
|
|
14
|
+
EOL
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
require "json"
|
|
2
|
+
require "fileutils"
|
|
3
|
+
require 'plissken' # Hash#to_snake_keys
|
|
4
|
+
|
|
5
|
+
module LonoParams
|
|
6
|
+
class Generator
|
|
7
|
+
def initialize(name, options)
|
|
8
|
+
@name = name
|
|
9
|
+
@options = options
|
|
10
|
+
@project_root = options[:project_root] || '.'
|
|
11
|
+
@source_path = options[:path] || "#{@project_root}/params/#{@name}.txt"
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def generate
|
|
15
|
+
if File.exist?(@source_path)
|
|
16
|
+
contents = IO.read(@source_path)
|
|
17
|
+
data = convert_to_cfn_format(contents)
|
|
18
|
+
json = JSON.pretty_generate(data)
|
|
19
|
+
write_output(json)
|
|
20
|
+
puts "Params file generated for #{@name} at #{output_path}"
|
|
21
|
+
else
|
|
22
|
+
puts "#{@source_path} could not be found? Are you sure it exist?"
|
|
23
|
+
exit 1
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# useful for when calling CloudFormation via the aws-sdk gem
|
|
28
|
+
def params
|
|
29
|
+
contents = IO.read(@source_path)
|
|
30
|
+
convert_to_cfn_format(contents, :underscore)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def parse_contents(contents)
|
|
34
|
+
lines = contents.split("\n")
|
|
35
|
+
# filter out commented lines
|
|
36
|
+
lines = lines.reject { |l| l =~ /(^|\s)#/i }
|
|
37
|
+
# filter out empty lines
|
|
38
|
+
lines = lines.reject { |l| l.strip.empty? }
|
|
39
|
+
|
|
40
|
+
# looked into trying to remove the commnet at the end of the line but it looks like the reliably way to do that by breaking the line into a syntax tree?
|
|
41
|
+
# http://stackoverflow.com/questions/5865371/ruby-regex-for-finding-comments
|
|
42
|
+
# http://stackoverflow.com/questions/7330171/how-to-match-code-comment-with-regex-in-ruby
|
|
43
|
+
lines
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def convert_to_cfn_format(contents, casing=:camel)
|
|
47
|
+
lines = parse_contents(contents)
|
|
48
|
+
params = []
|
|
49
|
+
lines.each do |line|
|
|
50
|
+
key,value = line.strip.split("=").map {|x| x.strip}
|
|
51
|
+
param = {
|
|
52
|
+
"ParameterKey": key,
|
|
53
|
+
"ParameterValue": value,
|
|
54
|
+
"UsePreviousValue": @options[:use_previous_value]
|
|
55
|
+
}
|
|
56
|
+
param = param.to_snake_keys if casing == :underscore
|
|
57
|
+
params << param
|
|
58
|
+
end
|
|
59
|
+
params
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def output_path
|
|
63
|
+
path = "#{@project_root}/output/params/#{@name}.json"
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
def write_output(json)
|
|
67
|
+
dir = File.dirname(output_path)
|
|
68
|
+
FileUtils.mkdir_p(dir) unless File.exist?(dir)
|
|
69
|
+
IO.write(output_path, json)
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
end
|
|
73
|
+
end
|
data/lono_params.gemspec
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
+
require 'lono_params/version'
|
|
5
|
+
|
|
6
|
+
Gem::Specification.new do |spec|
|
|
7
|
+
spec.name = "lono-params"
|
|
8
|
+
spec.version = LonoParams::VERSION
|
|
9
|
+
spec.authors = ["Tung Nguyen"]
|
|
10
|
+
spec.email = ["tongueroo@gmail.com"]
|
|
11
|
+
spec.description = %q{Tool to generate a CloudFormation parameters json formatted file}
|
|
12
|
+
spec.summary = %q{Tool to generate a CloudFormation parameters json formatted file}
|
|
13
|
+
spec.homepage = "https://github.com/tongueroo/lono-params"
|
|
14
|
+
spec.license = "MIT"
|
|
15
|
+
|
|
16
|
+
spec.files = `git ls-files`.split($/)
|
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
19
|
+
spec.require_paths = ["lib"]
|
|
20
|
+
|
|
21
|
+
spec.add_dependency "thor"
|
|
22
|
+
spec.add_dependency "hashie"
|
|
23
|
+
spec.add_dependency "colorize"
|
|
24
|
+
spec.add_dependency "plissken"
|
|
25
|
+
|
|
26
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
|
27
|
+
spec.add_development_dependency "rake"
|
|
28
|
+
spec.add_development_dependency "guard"
|
|
29
|
+
spec.add_development_dependency "guard-bundler"
|
|
30
|
+
spec.add_development_dependency "guard-rspec"
|
|
31
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
# to run specs with what's remembered from vcr
|
|
4
|
+
# $ rake
|
|
5
|
+
#
|
|
6
|
+
# to run specs with new fresh data from aws api calls
|
|
7
|
+
# $ rake clean:vcr ; time rake
|
|
8
|
+
describe LonoParams::CLI do
|
|
9
|
+
before(:all) do
|
|
10
|
+
@args = "--project-root spec/fixtures/my_project"
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
describe "lono-params" do
|
|
14
|
+
it "should generate params" do
|
|
15
|
+
out = execute("bin/lono-params generate my-stack #{@args}")
|
|
16
|
+
expect(out).to include("Params file generated for my-stack")
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
data/spec/spec_helper.rb
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
ENV['TEST'] = '1'
|
|
2
|
+
|
|
3
|
+
require "codeclimate-test-reporter"
|
|
4
|
+
CodeClimate::TestReporter.start
|
|
5
|
+
|
|
6
|
+
require "pp"
|
|
7
|
+
|
|
8
|
+
root = File.expand_path('../../', __FILE__)
|
|
9
|
+
require "#{root}/lib/lono-params"
|
|
10
|
+
|
|
11
|
+
module Helpers
|
|
12
|
+
def execute(cmd)
|
|
13
|
+
puts "Running: #{cmd}" if ENV['DEBUG']
|
|
14
|
+
out = `#{cmd}`
|
|
15
|
+
puts out if ENV['DEBUG']
|
|
16
|
+
out
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
RSpec.configure do |c|
|
|
21
|
+
c.include Helpers
|
|
22
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: lono-params
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.0.1
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Tung Nguyen
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2016-09-29 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: thor
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '0'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: hashie
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: colorize
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '0'
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: plissken
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - ">="
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0'
|
|
62
|
+
type: :runtime
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - ">="
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: bundler
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - "~>"
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '1.3'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - "~>"
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '1.3'
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: rake
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - ">="
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '0'
|
|
90
|
+
type: :development
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - ">="
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: '0'
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
name: guard
|
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - ">="
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: '0'
|
|
104
|
+
type: :development
|
|
105
|
+
prerelease: false
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - ">="
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: '0'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: guard-bundler
|
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - ">="
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '0'
|
|
118
|
+
type: :development
|
|
119
|
+
prerelease: false
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
requirements:
|
|
122
|
+
- - ">="
|
|
123
|
+
- !ruby/object:Gem::Version
|
|
124
|
+
version: '0'
|
|
125
|
+
- !ruby/object:Gem::Dependency
|
|
126
|
+
name: guard-rspec
|
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
|
128
|
+
requirements:
|
|
129
|
+
- - ">="
|
|
130
|
+
- !ruby/object:Gem::Version
|
|
131
|
+
version: '0'
|
|
132
|
+
type: :development
|
|
133
|
+
prerelease: false
|
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
+
requirements:
|
|
136
|
+
- - ">="
|
|
137
|
+
- !ruby/object:Gem::Version
|
|
138
|
+
version: '0'
|
|
139
|
+
description: Tool to generate a CloudFormation parameters json formatted file
|
|
140
|
+
email:
|
|
141
|
+
- tongueroo@gmail.com
|
|
142
|
+
executables:
|
|
143
|
+
- lono-params
|
|
144
|
+
extensions: []
|
|
145
|
+
extra_rdoc_files: []
|
|
146
|
+
files:
|
|
147
|
+
- ".gitignore"
|
|
148
|
+
- ".rspec"
|
|
149
|
+
- Gemfile
|
|
150
|
+
- Gemfile.lock
|
|
151
|
+
- Guardfile
|
|
152
|
+
- LICENSE.txt
|
|
153
|
+
- README.md
|
|
154
|
+
- Rakefile
|
|
155
|
+
- bin/lono-params
|
|
156
|
+
- lib/lono-params.rb
|
|
157
|
+
- lib/lono_params/cli.rb
|
|
158
|
+
- lib/lono_params/cli/help.rb
|
|
159
|
+
- lib/lono_params/generator.rb
|
|
160
|
+
- lib/lono_params/version.rb
|
|
161
|
+
- lono_params.gemspec
|
|
162
|
+
- spec/fixtures/my_project/params/my-stack.txt
|
|
163
|
+
- spec/lib/cli_spec.rb
|
|
164
|
+
- spec/spec_helper.rb
|
|
165
|
+
homepage: https://github.com/tongueroo/lono-params
|
|
166
|
+
licenses:
|
|
167
|
+
- MIT
|
|
168
|
+
metadata: {}
|
|
169
|
+
post_install_message:
|
|
170
|
+
rdoc_options: []
|
|
171
|
+
require_paths:
|
|
172
|
+
- lib
|
|
173
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
174
|
+
requirements:
|
|
175
|
+
- - ">="
|
|
176
|
+
- !ruby/object:Gem::Version
|
|
177
|
+
version: '0'
|
|
178
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
179
|
+
requirements:
|
|
180
|
+
- - ">="
|
|
181
|
+
- !ruby/object:Gem::Version
|
|
182
|
+
version: '0'
|
|
183
|
+
requirements: []
|
|
184
|
+
rubyforge_project:
|
|
185
|
+
rubygems_version: 2.6.4
|
|
186
|
+
signing_key:
|
|
187
|
+
specification_version: 4
|
|
188
|
+
summary: Tool to generate a CloudFormation parameters json formatted file
|
|
189
|
+
test_files:
|
|
190
|
+
- spec/fixtures/my_project/params/my-stack.txt
|
|
191
|
+
- spec/lib/cli_spec.rb
|
|
192
|
+
- spec/spec_helper.rb
|