yacli 0.1.8 → 0.2.0
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 +8 -8
- data/.rubocop.yml +38 -0
- data/Gemfile +1 -1
- data/README.md +2 -1
- data/Rakefile +13 -2
- data/bin/yacli +15 -1
- data/lib/yacli/base.rb +72 -9
- data/lib/yacli/cli.rb +9 -22
- data/lib/yacli/errors.rb +1 -1
- data/lib/yacli/run.rb +4 -5
- data/lib/yacli/version.rb +1 -1
- data/lib/yacli.rb +4 -5
- data/spec/cli_spec.rb +37 -0
- data/spec/run_spec.rb +8 -21
- data/spec/spec_helper.rb +4 -5
- data/yacli.gemspec +6 -4
- metadata +33 -30
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YTZlNzk5YzU1Y2FiNDk5NzNkMjllMzkyNDE2NmYzYjY2NDhhZTQ1Yw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZjMwY2NhMWFmNmNkYTI4NDcxNTE4MTg3YWE0OWQ2OWUyZDJlNDMyMQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MjMxZDI4NGUwYWU5N2QxZDNkN2JlOTc1NmQ4NjUxMzU3MDZjNzQwMzZhZDE2
|
10
|
+
NmU4ODE3NDZmNmQ1ZWZjYzBlMTc3NDJlMGZlNGMzYzZjOGUyNzk3YzVkMzBl
|
11
|
+
MmQ0MzljZjEwMmIzN2JhYzZkYWY4YTUzOWRlMDA2ZWQ5ZTAxMTk=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YzU0NGQzZWY1NThkMWFhMGI0YjZhZTI1YWRmM2NmYjM0YjZkZTNjNzQ5MTRh
|
14
|
+
MGU5M2I0M2Y0NmZiZWU1ZDFjZWMxMTBlYjQ5OWIzNjc5YTIxYzgwZDBhZDRm
|
15
|
+
MmMxNzk2NmVkZDY3NzcxNTkyMmNhNzlhMjA0OTkzOWMzMWNmODc=
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
Style/MutableConstant:
|
2
|
+
Enabled: false
|
3
|
+
|
4
|
+
Documentation:
|
5
|
+
Enabled: false
|
6
|
+
|
7
|
+
Metrics/LineLength:
|
8
|
+
Max: 225
|
9
|
+
|
10
|
+
Metrics/MethodLength:
|
11
|
+
Max: 100
|
12
|
+
|
13
|
+
Metrics/AbcSize:
|
14
|
+
Max: 50
|
15
|
+
|
16
|
+
SpecialGlobalVars:
|
17
|
+
Enabled: false
|
18
|
+
|
19
|
+
Style/AlignHash:
|
20
|
+
EnforcedHashRocketStyle: table
|
21
|
+
EnforcedColonStyle: table
|
22
|
+
|
23
|
+
Style/TrailingCommaInLiteral:
|
24
|
+
Enabled: true
|
25
|
+
EnforcedStyleForMultiline: comma
|
26
|
+
|
27
|
+
AllCops:
|
28
|
+
TargetRubyVersion: 2.2
|
29
|
+
UseCache: true
|
30
|
+
Include:
|
31
|
+
- '**/Gemfile*'
|
32
|
+
- '**/Rakefile*'
|
33
|
+
- '**/*.rake'
|
34
|
+
- '**/*.rb'
|
35
|
+
Exclude:
|
36
|
+
- 'gems/**/*'
|
37
|
+
- '**/*.lock'
|
38
|
+
- '**/gems/**/*'
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -3,11 +3,12 @@ yacli
|
|
3
3
|
[][gem]
|
4
4
|
[][travis]
|
5
5
|
[][coveralls]
|
6
|
+
[][codacy]
|
6
7
|
|
7
8
|
[gem]: https://rubygems.org/gems/yacli
|
8
9
|
[travis]: http://travis-ci.org/rombob/yacli
|
9
10
|
[coveralls]: https://coveralls.io/r/rombob/yacli
|
10
|
-
|
11
|
+
[codacy]: https://www.codacy.com/app/github_50/yacli
|
11
12
|
|
12
13
|
Prerequisites
|
13
14
|
-------------
|
data/Rakefile
CHANGED
@@ -1,8 +1,19 @@
|
|
1
|
-
require
|
1
|
+
require 'bundler/gem_tasks'
|
2
|
+
require 'rubocop/rake_task'
|
2
3
|
|
3
|
-
task :
|
4
|
+
task default: [:spec]
|
4
5
|
desc 'run Rspec specs'
|
5
6
|
task :spec do
|
6
7
|
sh 'rspec spec'
|
7
8
|
end
|
8
9
|
|
10
|
+
desc 'Run Rspec spec with reports'
|
11
|
+
task :spec_report do
|
12
|
+
sh 'rspec spec --format RspecJunitFormatter --out spec/reports/rspec.xml'
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'Run RuboCop on the lib directory'
|
16
|
+
RuboCop::RakeTask.new(:rubocop) do |task|
|
17
|
+
task.formatters = [%w(files offenses)]
|
18
|
+
task.fail_on_error = false
|
19
|
+
end
|
data/bin/yacli
CHANGED
@@ -1,4 +1,18 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
require 'bundler/setup'
|
2
3
|
|
4
|
+
puts "INFO: Running using ruby version: #{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}"
|
5
|
+
|
6
|
+
$LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
|
3
7
|
require 'yacli/cli'
|
4
|
-
|
8
|
+
begin
|
9
|
+
result = Yacli::Cli.start
|
10
|
+
puts "result: #{result}"
|
11
|
+
rescue StandardError => e
|
12
|
+
puts "ERROR: #{e}"
|
13
|
+
puts "ERROR: #{e.backtrace.join("\n")}"
|
14
|
+
|
15
|
+
exit 1
|
16
|
+
end
|
17
|
+
|
18
|
+
exit result == 0 ? 0 : 1
|
data/lib/yacli/base.rb
CHANGED
@@ -1,21 +1,47 @@
|
|
1
1
|
require 'logger'
|
2
2
|
require 'socket'
|
3
|
+
require 'open3'
|
4
|
+
|
5
|
+
module ToBoolean
|
6
|
+
def to_bool
|
7
|
+
return true if self == true || to_s.strip =~ /^(true|yes|y|1)$/i
|
8
|
+
false
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
class NilClass; include ToBoolean; end
|
13
|
+
class TrueClass; include ToBoolean; end
|
14
|
+
class FalseClass; include ToBoolean; end
|
15
|
+
class Numeric; include ToBoolean; end
|
16
|
+
class String; include ToBoolean; end
|
3
17
|
|
4
18
|
module Yacli
|
5
19
|
class Base
|
6
20
|
def init_logger(log_path = nil)
|
7
21
|
output_file = log_path.nil? ? STDOUT : log_path
|
8
22
|
logger = Logger.new(output_file)
|
9
|
-
logger.level =
|
23
|
+
logger.level = !ENV['DEBUG'].nil? ? Logger::DEBUG : Logger::INFO
|
10
24
|
logger.debug "logger.level: #{logger.level}"
|
11
25
|
logger
|
12
26
|
end
|
13
|
-
|
14
|
-
def
|
27
|
+
|
28
|
+
def initialize(opt = {})
|
29
|
+
@opt = opt
|
30
|
+
@log = init_logger
|
31
|
+
@log.debug "@opt: #{@opt.inspect}"
|
32
|
+
end
|
33
|
+
|
34
|
+
def error_exit(msg)
|
15
35
|
@log.error msg
|
16
36
|
raise ExecutionError
|
17
37
|
end
|
18
|
-
|
38
|
+
|
39
|
+
def init_opt(key, opt, default = '')
|
40
|
+
val = opt[key] || default
|
41
|
+
@log.debug "#{key}: #{val}"
|
42
|
+
val
|
43
|
+
end
|
44
|
+
|
19
45
|
def pass_cli(cmd, valid_out_pattern = nil)
|
20
46
|
cmd += ' 2>&1'
|
21
47
|
@log.debug "running cmd: #{cmd}"
|
@@ -23,13 +49,50 @@ module Yacli
|
|
23
49
|
success_exec = $?.success?
|
24
50
|
@log.info "cmd_out: #{cmd_out}"
|
25
51
|
@log.debug "success_exec: #{success_exec}"
|
26
|
-
|
52
|
+
|
27
53
|
valid_content = valid_out_pattern.nil? ? true : !cmd_out.match(/#{valid_out_pattern}/).nil?
|
28
54
|
@log.debug "valid_content: #{valid_content}"
|
29
|
-
|
30
|
-
raise InvalidExitCodeError
|
31
|
-
raise InvalidContentError
|
32
|
-
{ :
|
55
|
+
|
56
|
+
raise InvalidExitCodeError, cmd_out unless success_exec
|
57
|
+
raise InvalidContentError, cmd_out unless valid_content
|
58
|
+
{ success: success_exec, output: cmd_out }
|
59
|
+
end
|
60
|
+
|
61
|
+
def cli(opts = {})
|
62
|
+
cmd = init_opt(:cmd, opts, '')
|
63
|
+
valid_out_pattern = init_opt(:valid_out_pattern, opts, nil)
|
64
|
+
reverse_match = init_opt(:reverse_match, opts, false)
|
65
|
+
hide_output = init_opt(:hide_output, opts, false).to_bool
|
66
|
+
include_stderr = init_opt(:include_stderr, opts, true).to_bool
|
67
|
+
cmd += ' 2>&1' if include_stderr
|
68
|
+
@log.debug "running cmd: #{cmd}"
|
69
|
+
|
70
|
+
cmd_out = []
|
71
|
+
exit_code = nil
|
72
|
+
Open3.popen2(cmd) do |stdin, stdout, thread|
|
73
|
+
stdin.close
|
74
|
+
while line = stdout.gets
|
75
|
+
@log.info ">>> #{line.chomp}" unless hide_output
|
76
|
+
cmd_out << line.chomp
|
77
|
+
end
|
78
|
+
|
79
|
+
exit_code = thread.value
|
80
|
+
end
|
81
|
+
success_exec = exit_code.success?
|
82
|
+
cmd_out = cmd_out.join($INPUT_RECORD_SEPARATOR)
|
83
|
+
@log.debug "success_exec: #{success_exec.inspect}"
|
84
|
+
@log.debug "cmd_out: #{cmd_out.inspect}" unless hide_output
|
85
|
+
|
86
|
+
@log.debug "reverse_match: #{reverse_match.inspect}"
|
87
|
+
output_match = reverse_match ? cmd_out.match(/#{valid_out_pattern}/).nil? : !cmd_out.match(/#{valid_out_pattern}/).nil?
|
88
|
+
@log.debug "output_match: #{output_match.inspect}"
|
89
|
+
valid_content = valid_out_pattern.nil? ? true : output_match
|
90
|
+
@log.debug "valid_content: #{valid_content}"
|
91
|
+
|
92
|
+
raise InvalidExitCodeError, cmd_out unless success_exec
|
93
|
+
raise InvalidContentError, cmd_out unless valid_content
|
94
|
+
@log.debug "run result: #{{ success: success_exec, output: cmd_out }}"
|
95
|
+
exit_code
|
33
96
|
end
|
34
97
|
end
|
35
98
|
end
|
data/lib/yacli/cli.rb
CHANGED
@@ -1,31 +1,18 @@
|
|
1
1
|
require 'thor'
|
2
2
|
|
3
3
|
module Yacli
|
4
|
-
class
|
5
|
-
|
4
|
+
class Cli < Thor
|
6
5
|
def self.common_opts
|
7
|
-
method_option :
|
8
|
-
method_option :'config-path', :aliases => "-c", :required => false
|
9
|
-
method_option :'log-path', :aliases => "-l", :required => false
|
10
|
-
method_option :'dry-run', :aliases => "-d", :type => :boolean, :default => false
|
6
|
+
method_option :'dry-run', aliases: '-d', type: :boolean, default: false
|
11
7
|
end
|
12
|
-
|
13
|
-
desc
|
14
|
-
common_opts
|
15
|
-
def upload
|
16
|
-
require 's3rsync/sync'
|
17
|
-
sync = Sync.new(options)
|
18
|
-
exit sync.run(:upload)
|
19
|
-
end
|
20
|
-
|
21
|
-
desc "download", "sync from s3 to local"
|
8
|
+
|
9
|
+
desc 'cli', 'run cli'
|
22
10
|
common_opts
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
11
|
+
method_option :cmd, aliases: '-c', default: 'uname'
|
12
|
+
def cli
|
13
|
+
require 'yacli/base'
|
14
|
+
b = Base.new
|
15
|
+
b.cli(options)
|
27
16
|
end
|
28
|
-
|
29
17
|
end
|
30
|
-
|
31
18
|
end
|
data/lib/yacli/errors.rb
CHANGED
data/lib/yacli/run.rb
CHANGED
@@ -1,16 +1,15 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
1
|
+
require 'yacli'
|
2
|
+
require 'json'
|
3
|
+
require 'erb'
|
4
4
|
|
5
5
|
module Yacli
|
6
6
|
class Run < Base
|
7
|
-
|
8
7
|
def initialize(opt = {})
|
9
8
|
log_path = !opt['log-path'].nil? ? opt['log-path'] : nil
|
10
9
|
@log = init_logger(log_path)
|
11
10
|
@log.debug "opt: #{opt.inspect}"
|
12
11
|
end
|
13
|
-
|
12
|
+
|
14
13
|
def go(cmd = 'uname -a')
|
15
14
|
@log.debug "cmd: #{cmd}"
|
16
15
|
output = pass_cli cmd
|
data/lib/yacli/version.rb
CHANGED
data/lib/yacli.rb
CHANGED
data/spec/cli_spec.rb
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'yacli/run'
|
3
|
+
|
4
|
+
include Helpers
|
5
|
+
|
6
|
+
describe Yacli::Run do
|
7
|
+
context 'run is successfull' do
|
8
|
+
let(:opt) do
|
9
|
+
{
|
10
|
+
'cmd' => 'date',
|
11
|
+
'dry-run' => false,
|
12
|
+
}
|
13
|
+
end
|
14
|
+
let(:output) { 'Success' }
|
15
|
+
|
16
|
+
before do
|
17
|
+
allow_any_instance_of(Yacli::Run).to receive(:pass_cli).and_return(nil)
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'print date' do
|
21
|
+
cmd = 'date'
|
22
|
+
allow_any_instance_of(Yacli::Run).to receive(:pass_cli).with(cmd).and_return(output)
|
23
|
+
run = Yacli::Run.new(opt)
|
24
|
+
expect(run.go(cmd)).to eq output
|
25
|
+
end
|
26
|
+
|
27
|
+
# before do
|
28
|
+
# allow_any_instance_of(clazz).to receive(opts[:method]).and_return(true)
|
29
|
+
# Hecate::CLI.start
|
30
|
+
# end
|
31
|
+
|
32
|
+
# it "calls #{opts[:method]}" do
|
33
|
+
# cli = Hecate::CLI.new
|
34
|
+
# expect(cli.cli_cmd(class: opts[:class], method: opts[:method], opt: {})).to eq 0
|
35
|
+
# end
|
36
|
+
end
|
37
|
+
end
|
data/spec/run_spec.rb
CHANGED
@@ -5,36 +5,23 @@ include Helpers
|
|
5
5
|
|
6
6
|
describe Yacli::Run do
|
7
7
|
context 'run is successfull' do
|
8
|
-
let(:opt)
|
8
|
+
let(:opt) do
|
9
9
|
{
|
10
|
-
'cmd'
|
11
|
-
'dry-run'
|
10
|
+
'cmd' => 'date',
|
11
|
+
'dry-run' => false,
|
12
12
|
}
|
13
|
-
|
13
|
+
end
|
14
14
|
let(:output) { 'Success' }
|
15
|
-
|
15
|
+
|
16
16
|
before do
|
17
17
|
allow_any_instance_of(Yacli::Run).to receive(:pass_cli).and_return(nil)
|
18
18
|
end
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
end
|
23
|
-
|
24
|
-
before(:each) do
|
25
|
-
#Helpers::pre_run_helper
|
26
|
-
end
|
27
|
-
|
28
|
-
after(:each) do
|
29
|
-
# Nothing
|
30
|
-
end
|
31
|
-
|
32
|
-
it "print date" do
|
33
|
-
cmd = "date"
|
19
|
+
|
20
|
+
it 'print date' do
|
21
|
+
cmd = 'date'
|
34
22
|
allow_any_instance_of(Yacli::Run).to receive(:pass_cli).with(cmd).and_return(output)
|
35
23
|
run = Yacli::Run.new(opt)
|
36
24
|
expect(run.go(cmd)).to eq output
|
37
25
|
end
|
38
|
-
|
39
26
|
end
|
40
27
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require
|
1
|
+
require 'simplecov'
|
2
|
+
require 'coveralls'
|
3
|
+
require 'yacli'
|
4
|
+
require 'yacli/base'
|
5
5
|
|
6
6
|
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
|
7
7
|
SimpleCov::Formatter::HTMLFormatter,
|
@@ -14,5 +14,4 @@ SimpleCov.start do
|
|
14
14
|
end
|
15
15
|
|
16
16
|
module Helpers
|
17
|
-
|
18
17
|
end
|
data/yacli.gemspec
CHANGED
@@ -20,13 +20,15 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_dependency "thor", "0.19.1"
|
22
22
|
|
23
|
-
spec.add_development_dependency "
|
23
|
+
spec.add_development_dependency "rspec_junit_formatter", '0.2.3'
|
24
|
+
spec.add_development_dependency "simplecov", "0.10.0"
|
25
|
+
spec.add_development_dependency "bundler", "~> 1.7"
|
26
|
+
spec.add_development_dependency "rubocop", "0.40.0"
|
24
27
|
spec.add_development_dependency "rake"
|
25
28
|
spec.add_development_dependency "bump"
|
26
29
|
spec.add_development_dependency "rspec", "~> 3.0"
|
27
|
-
spec.add_development_dependency "simplecov"
|
28
30
|
spec.add_development_dependency "growl"
|
29
|
-
spec.add_development_dependency "guard"
|
30
|
-
spec.add_development_dependency "guard-rspec"
|
31
|
+
#spec.add_development_dependency "guard", "2.13.0"
|
32
|
+
#spec.add_development_dependency "guard-rspec"
|
31
33
|
spec.add_development_dependency "coveralls"
|
32
34
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yacli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- rombob
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-06-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -25,63 +25,63 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 0.19.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: rspec_junit_formatter
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 0.2.3
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 0.2.3
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: simplecov
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 0.10.0
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
54
|
+
version: 0.10.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '1.7'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ~>
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '1.7'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: rubocop
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 0.40.0
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 0.40.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: rake
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - ! '>='
|
@@ -95,7 +95,7 @@ dependencies:
|
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: bump
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - ! '>='
|
@@ -109,21 +109,21 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: rspec
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - ~>
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
117
|
+
version: '3.0'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - ~>
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: '0'
|
124
|
+
version: '3.0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: growl
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - ! '>='
|
@@ -159,6 +159,7 @@ extensions: []
|
|
159
159
|
extra_rdoc_files: []
|
160
160
|
files:
|
161
161
|
- .gitignore
|
162
|
+
- .rubocop.yml
|
162
163
|
- .ruby-version
|
163
164
|
- .travis.yml
|
164
165
|
- Gemfile
|
@@ -173,6 +174,7 @@ files:
|
|
173
174
|
- lib/yacli/errors.rb
|
174
175
|
- lib/yacli/run.rb
|
175
176
|
- lib/yacli/version.rb
|
177
|
+
- spec/cli_spec.rb
|
176
178
|
- spec/run_spec.rb
|
177
179
|
- spec/spec_helper.rb
|
178
180
|
- yacli.gemspec
|
@@ -201,5 +203,6 @@ signing_key:
|
|
201
203
|
specification_version: 4
|
202
204
|
summary: CLI wrapper library tool
|
203
205
|
test_files:
|
206
|
+
- spec/cli_spec.rb
|
204
207
|
- spec/run_spec.rb
|
205
208
|
- spec/spec_helper.rb
|