veracodecli 0.1.1 → 0.1.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
  SHA1:
3
- metadata.gz: 0d86671ebe7e7e93e6b99fa5f5721077f83bc914
4
- data.tar.gz: 0302d869bf676c5a9a13c80f1b9b824c5aa036f4
3
+ metadata.gz: 74b3b2fddb38344c96cd938c9f27ec1ba5642125
4
+ data.tar.gz: 3d2934ffea90f22732d1be2d5861e3e371d41993
5
5
  SHA512:
6
- metadata.gz: cce72b0d8a252b2871740809e137cda2f59c55f74ab0a416f69ca53e25d820ddc95c302d7018115f878968b4cb745709a6483172ed8f675e33fc3ca05ecce661
7
- data.tar.gz: 4fd15c923437ede2bd593d88ad9402ee428752ef6b634e086698426da319079f36a78f666ce695452fea6f11cab8b01e22f1bd51f42b5e1b1cb83d56b7bc61ae
6
+ metadata.gz: 4a97bfed947f96df61ca3f142243fc7861ffbcdd248e846d3832c08ee7903a2314052d81df6880b4a20a23696c700be9ce4738fde91c995f2cb81688179104ce
7
+ data.tar.gz: fe856103bdbd2a8946710fec5ecb6209146de7770f3fe68bae41f7fb7b0fcfb6ee9d7f92f53196018a3421eb82792fa1cdf3b5eb4244b262a19b3793faea405a
data/README.md CHANGED
@@ -33,6 +33,11 @@ This gem uses [jeweler](https://github.com/technicalpickles/jeweler) for develop
33
33
  * Commit and push until you are happy with your contribution.
34
34
  * Make a pull request to this repo.
35
35
 
36
+ ## Roadmap
37
+ Ideas for future development.
38
+
39
+ * Config file: Make this cli scanner/tool agnostic. Should work with rest api services from other tools
40
+
36
41
  ## License
37
42
 
38
43
  [MIT](https://tldrlegal.com/license/mit-license)
data/bin/veracodecli CHANGED
@@ -3,6 +3,8 @@
3
3
  require 'commander'
4
4
  require 'veracodecli'
5
5
  include VeracodeApiResults
6
+ include VeracodeApiScan
7
+ include VeracodeApiBase
6
8
 
7
9
  Commander.configure do
8
10
  program :name, 'veracodecli'
@@ -10,9 +12,8 @@ Commander.configure do
10
12
  program :description, 'CLI for automating veracode api requests'
11
13
  program :help, 'Author', 'Isaiah Thiessen <isaiah.thiessen@telus.com>'
12
14
 
13
-
14
15
  command :scan do |c|
15
- c.syntax = 'veracodecli scan [hostname] [archive_path]'
16
+ c.syntax = 'veracodecli scan [app_name] [archive_path]'
16
17
  c.description = 'Submits a scan request to Veracode.'
17
18
  c.action do |args|
18
19
  fail 'Specify application Name.' if args.first.nil?
@@ -32,7 +33,7 @@ Commander.configure do
32
33
 
33
34
  command :get_status do |c|
34
35
  c.syntax = 'veracodecli get-status [app_id]'
35
- c.description = 'Gets scan state of current build from Veracode.'
36
+ c.description = 'Gets scan state from Veracode.'
36
37
  c.action do |args|
37
38
  fail 'Specify app_id.' if args.first.nil?
38
39
  VeracodeApiResults.get_build_status args.first
@@ -9,22 +9,9 @@ module VeracodeApiBase
9
9
 
10
10
  def veracode_api_request(api_call, api_version: '4.0', **params)
11
11
  check_environment_login_variables
12
- # puts "Making call to #{api_call}"
13
12
  response = RestClient.get "https://#{ENV['VERACODE_USERNAME']}:#{ENV['VERACODE_PASSWORD']}@analysiscenter.veracode.com/api/#{api_version}/#{api_call}", { params: params }
14
13
  response.body
15
14
  end
16
-
17
- def xml_to_json(string)
18
- json = Hash.from_xml(string).to_json
19
- JSON.parse json
20
- end
21
-
22
- def write(data, to_file:)
23
- data = xml_to_json data
24
- f = File.open "../testdata/#{to_file}.json", 'w'
25
- f.write JSON.pretty_generate data
26
- f.close
27
- end
28
15
  end
29
16
 
30
17
  module VeracodeApiScan
@@ -38,25 +25,22 @@ module VeracodeApiScan
38
25
  return app_list.scan(/app_id=\"(.+)\" app_name=\"#{of}\"/)[0][0]
39
26
  else
40
27
  puts 'Record not found, creating one'
41
- create_app_result = veracode_api_request 'createapp.do', app_name: of, description: "Static Scanning profile for #{of}.", business_criticality: 'High', business_unit: 'TELUS Digital', web_application: 'true', teams: "#{ENV['VERACODE_TEAM']}"
28
+ create_app_result = veracode_api_request 'createapp.do', app_name: of, description: "Static Scanning profile for #{of}.", business_criticality: 'High', business_unit: "#{ENV['VERACODE_TEAM']}", web_application: 'true', teams: "#{ENV['VERACODE_TEAM']}"
42
29
  app_id = create_app_result.scan(/app_id=\"(.+)\" app_name=\"#{of}\"/)[0][0]
43
30
  puts "Record successfully created, app_id is #{app_id}"
44
31
  return app_id
45
32
  end
46
33
  end
47
34
 
48
- def submit_scan(hostname, archive_path)
49
- app_id = validate_existance of: hostname
50
- # NOTE: curl must be used here because of a bug in the Veracode api. Ruby cannot be used while this bug is present.
35
+ def submit_scan(app_name, archive_path)
36
+ app_id = validate_existance of: app_name
37
+ # NOTE: curl must be used here because of a bug in the Veracode api. rest-client cannot be used while this bug is present.
51
38
  # NOTE: preferred code: upload_result = veracode_api_request 'uploadfile.do', app_id: app_id, file: "#{archive_path}"
52
39
  upload_result = `curl --url "https://#{ENV['VERACODE_USERNAME']}:#{ENV['VERACODE_PASSWORD']}@analysiscenter.veracode.com/api/4.0/uploadfile.do" -F 'app_id=#{app_id}' -F 'file=@#{archive_path}'`
53
40
  puts upload_result
54
- # write upload_result, to_file: "#{app_id}_upload_result"
55
41
  prescan_submission_result = veracode_api_request 'beginprescan.do', app_id: app_id, auto_scan: 'true'
56
42
  puts prescan_submission_result
57
43
  puts "Submit complete for #{app_id}"
58
- # File.write 'VERACODE_SCAN_RESULT_CHECK_QUEUE', app_id
59
- # write prescan_submission_result, to_file: "#{app_id}_prescan_submission_result"
60
44
  end
61
45
  end
62
46
 
@@ -65,7 +49,6 @@ module VeracodeApiResults
65
49
 
66
50
  def get_most_recent_build_id(using:)
67
51
  build_list = veracode_api_request 'getbuildlist.do', app_id: using
68
- # write build_list, to_file: "#{using}_build_list"
69
52
  build_list.scan(/build_id="(.*?)"/).last[0]
70
53
  end
71
54
 
@@ -79,13 +62,12 @@ module VeracodeApiResults
79
62
  def get_prescan_results(app_id)
80
63
  results = veracode_api_request 'getprescanresults.do', app_id: app_id
81
64
  puts "Fetched prescan results for #{app_id}"
82
- # write results, to_file: "#{app_id}_prescan_results"
65
+ puts results
83
66
  end
84
67
 
85
68
  def get_scan_report(app_id)
86
69
  build_id = get_most_recent_build_id using: app_id
87
70
  report = veracode_api_request 'detailedreport.do', api_version: '3.0', build_id: build_id
88
- puts "Fetched report for #{app_id}, build #{build_id}"
89
- # write report, to_file: "#{app_id}_report"
71
+ puts report
90
72
  end
91
73
  end
@@ -1,7 +1,20 @@
1
- require 'helper'
1
+ require 'test/unit'
2
+ require 'shoulda/context'
3
+ require_relative '../lib/veracodecli/api'
4
+ include VeracodeApiScan
2
5
 
3
6
  class TestVeracodecli < Test::Unit::TestCase
4
- should "probably rename this file and start testing for real" do
5
- flunk "hey buddy, you should probably rename this file and start testing for real"
7
+ context 'VeracodeApi' do
8
+
9
+ setup do
10
+ ENV['VERACODE_USERNAME'] = 'foo'
11
+ ENV['VERACODE_PASSWORD'] = 'bar'
12
+ ENV['VERACODE_TEAM'] = 'foobar'
13
+ end
14
+
15
+ should 'Return HTTP 401' do
16
+ assert_equal response.code, veracode_api_request('getapplist.do', '')
17
+ end
18
+
6
19
  end
7
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: veracodecli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - isaiah thiessen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-28 00:00:00.000000000 Z
11
+ date: 2015-09-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -178,20 +178,6 @@ dependencies:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
180
  version: 2.1.0
181
- - !ruby/object:Gem::Dependency
182
- name: rubocop
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - "~>"
186
- - !ruby/object:Gem::Version
187
- version: 0.32.1
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - "~>"
193
- - !ruby/object:Gem::Version
194
- version: 0.32.1
195
181
  description: Ruby based CLI for accessing veracode's api
196
182
  email: isaiah.thiessen@telus.com
197
183
  executables:
@@ -201,21 +187,14 @@ extra_rdoc_files:
201
187
  - LICENSE.txt
202
188
  - README.md
203
189
  files:
204
- - ".document"
205
- - ".gitignore"
206
- - Gemfile
207
- - Gemfile.lock
208
190
  - LICENSE.txt
209
191
  - README.md
210
- - Rakefile
211
- - VERSION
212
192
  - bin/veracodecli
213
193
  - lib/veracodecli.rb
214
194
  - lib/veracodecli/api.rb
215
195
  - test/API.rb
216
196
  - test/helper.rb
217
197
  - test/test_veracodecli.rb
218
- - veracodecli.gemspec
219
198
  homepage: http://github.com/isand3r/veracodecli
220
199
  licenses:
221
200
  - MIT
@@ -240,4 +219,8 @@ rubygems_version: 2.4.8
240
219
  signing_key:
241
220
  specification_version: 4
242
221
  summary: Ruby based CLI for accessing veracode's api
243
- test_files: []
222
+ test_files:
223
+ - test/API.rb
224
+ - test/helper.rb
225
+ - test/test_veracodecli.rb
226
+ has_rdoc:
data/.document DELETED
@@ -1,5 +0,0 @@
1
- lib/**/*.rb
2
- bin/*
3
- -
4
- features/**/*.feature
5
- LICENSE.txt
data/.gitignore DELETED
@@ -1,49 +0,0 @@
1
- # rcov generated
2
- coverage
3
- coverage.data
4
-
5
- # rdoc generated
6
- rdoc
7
-
8
- # yard generated
9
- doc
10
- .yardoc
11
-
12
- # bundler
13
- .bundle
14
-
15
- # jeweler generated
16
- pkg
17
-
18
- # Have editor/IDE/OS specific files you need to ignore? Consider using a global gitignore:
19
- #
20
- # * Create a file at ~/.gitignore
21
- # * Include files you want ignored
22
- # * Run: git config --global core.excludesfile ~/.gitignore
23
- #
24
- # After doing this, these files will be ignored in all your git projects,
25
- # saving you from having to 'pollute' every project you touch with them
26
- #
27
- # Not sure what to needs to be ignored for particular editors/OSes? Here's some ideas to get you started. (Remember, remove the leading # of the line)
28
- #
29
- # For MacOS:
30
- #
31
- #.DS_Store
32
-
33
- # For TextMate
34
- #*.tmproj
35
- #tmtags
36
-
37
- # For emacs:
38
- #*~
39
- #\#*
40
- #.\#*
41
-
42
- # For vim:
43
- #*.swp
44
-
45
- # For redcar:
46
- #.redcar
47
-
48
- # For rubinius:
49
- #*.rbc
data/Gemfile DELETED
@@ -1,18 +0,0 @@
1
- source "http://rubygems.org"
2
-
3
- gem 'json'
4
- gem 'activesupport'
5
- gem 'rest-client'
6
- gem 'commander'
7
-
8
- group :development do
9
- gem "shoulda", ">= 0"
10
- gem "yard", "~> 0.7"
11
- gem "rdoc", "~> 3.12"
12
- gem "bundler", "~> 1.0"
13
- gem "jeweler", "~> 2.0.1"
14
- gem "simplecov", ">= 0"
15
- gem "reek", "~> 1.2.8"
16
- gem "roodi", "~> 2.1.0"
17
- gem "rubocop", "~> 0.32.1"
18
- end
data/Gemfile.lock DELETED
@@ -1,136 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- activesupport (4.2.4)
5
- i18n (~> 0.7)
6
- json (~> 1.7, >= 1.7.7)
7
- minitest (~> 5.1)
8
- thread_safe (~> 0.3, >= 0.3.4)
9
- tzinfo (~> 1.1)
10
- addressable (2.3.8)
11
- ast (2.0.0)
12
- astrolabe (1.3.1)
13
- parser (~> 2.2)
14
- builder (3.2.2)
15
- commander (4.3.5)
16
- highline (~> 1.7.2)
17
- descendants_tracker (0.0.4)
18
- thread_safe (~> 0.3, >= 0.3.1)
19
- docile (1.1.5)
20
- domain_name (0.5.24)
21
- unf (>= 0.0.5, < 1.0.0)
22
- faraday (0.9.1)
23
- multipart-post (>= 1.2, < 3)
24
- git (1.2.9.1)
25
- github_api (0.12.4)
26
- addressable (~> 2.3)
27
- descendants_tracker (~> 0.0.4)
28
- faraday (~> 0.8, < 0.10)
29
- hashie (>= 3.4)
30
- multi_json (>= 1.7.5, < 2.0)
31
- nokogiri (~> 1.6.6)
32
- oauth2
33
- hashie (3.4.2)
34
- highline (1.7.6)
35
- http-cookie (1.0.2)
36
- domain_name (~> 0.5)
37
- i18n (0.7.0)
38
- jeweler (2.0.1)
39
- builder
40
- bundler (>= 1.0)
41
- git (>= 1.2.5)
42
- github_api
43
- highline (>= 1.6.15)
44
- nokogiri (>= 1.5.10)
45
- rake
46
- rdoc
47
- json (1.8.3)
48
- jwt (1.5.1)
49
- mime-types (2.6.2)
50
- mini_portile (0.6.2)
51
- minitest (5.8.0)
52
- multi_json (1.11.2)
53
- multi_xml (0.5.5)
54
- multipart-post (2.0.0)
55
- netrc (0.10.3)
56
- nokogiri (1.6.6.2)
57
- mini_portile (~> 0.6.0)
58
- oauth2 (1.0.0)
59
- faraday (>= 0.8, < 0.10)
60
- jwt (~> 1.0)
61
- multi_json (~> 1.3)
62
- multi_xml (~> 0.5)
63
- rack (~> 1.2)
64
- parser (2.2.2.6)
65
- ast (>= 1.1, < 3.0)
66
- powerpack (0.1.1)
67
- rack (1.6.4)
68
- rainbow (2.0.0)
69
- rake (10.4.2)
70
- rdoc (3.12.2)
71
- json (~> 1.4)
72
- reek (1.2.13)
73
- ripper_ruby_parser (~> 0.0.7)
74
- ruby2ruby (~> 1.2.5)
75
- ruby_parser (~> 2.0)
76
- sexp_processor (~> 3.0)
77
- rest-client (1.8.0)
78
- http-cookie (>= 1.0.2, < 2.0)
79
- mime-types (>= 1.16, < 3.0)
80
- netrc (~> 0.7)
81
- ripper_ruby_parser (0.0.8)
82
- sexp_processor (~> 3.0)
83
- roodi (2.1.0)
84
- ruby_parser
85
- rubocop (0.32.1)
86
- astrolabe (~> 1.3)
87
- parser (>= 2.2.2.5, < 3.0)
88
- powerpack (~> 0.1)
89
- rainbow (>= 1.99.1, < 3.0)
90
- ruby-progressbar (~> 1.4)
91
- ruby-progressbar (1.7.5)
92
- ruby2ruby (1.2.5)
93
- ruby_parser (~> 2.0)
94
- sexp_processor (~> 3.0)
95
- ruby_parser (2.3.1)
96
- sexp_processor (~> 3.0)
97
- sexp_processor (3.2.0)
98
- shoulda (3.5.0)
99
- shoulda-context (~> 1.0, >= 1.0.1)
100
- shoulda-matchers (>= 1.4.1, < 3.0)
101
- shoulda-context (1.2.1)
102
- shoulda-matchers (2.8.0)
103
- activesupport (>= 3.0.0)
104
- simplecov (0.10.0)
105
- docile (~> 1.1.0)
106
- json (~> 1.8)
107
- simplecov-html (~> 0.10.0)
108
- simplecov-html (0.10.0)
109
- thread_safe (0.3.5)
110
- tzinfo (1.2.2)
111
- thread_safe (~> 0.1)
112
- unf (0.1.4)
113
- unf_ext
114
- unf_ext (0.0.7.1)
115
- yard (0.8.7.6)
116
-
117
- PLATFORMS
118
- ruby
119
-
120
- DEPENDENCIES
121
- activesupport
122
- bundler (~> 1.0)
123
- commander
124
- jeweler (~> 2.0.1)
125
- json
126
- rdoc (~> 3.12)
127
- reek (~> 1.2.8)
128
- rest-client
129
- roodi (~> 2.1.0)
130
- rubocop (~> 0.32.1)
131
- shoulda
132
- simplecov
133
- yard (~> 0.7)
134
-
135
- BUNDLED WITH
136
- 1.10.6
data/Rakefile DELETED
@@ -1,67 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'bundler'
5
- begin
6
- Bundler.setup(:default, :development)
7
- rescue Bundler::BundlerError => e
8
- $stderr.puts e.message
9
- $stderr.puts "Run `bundle install` to install missing gems"
10
- exit e.status_code
11
- end
12
- require 'rake'
13
-
14
- require 'jeweler'
15
- Jeweler::Tasks.new do |gem|
16
- # gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
17
- gem.name = "veracodecli"
18
- gem.homepage = "http://github.com/isand3r/veracodecli"
19
- gem.license = "MIT"
20
- gem.summary = %Q{Ruby based CLI for accessing veracode's api}
21
- gem.description = %Q{Ruby based CLI for accessing veracode's api}
22
- gem.email = "isaiah.thiessen@telus.com"
23
- gem.authors = ["isaiah thiessen"]
24
- gem.files = `git ls-files`.split("\n")
25
- gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
26
- gem.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
27
- gem.require_paths = ['lib']
28
- # dependencies defined in Gemfile
29
- end
30
- Jeweler::RubygemsDotOrgTasks.new
31
-
32
- require 'rake/testtask'
33
- Rake::TestTask.new(:test) do |test|
34
- test.libs << 'lib' << 'test'
35
- test.pattern = 'test/**/test_*.rb'
36
- test.verbose = true
37
- end
38
-
39
- require 'rubocop/rake_task'
40
- RuboCop::RakeTask.new(:rubocop) do |task|
41
- task.patterns = ['lib/**/*.rb']
42
- task.fail_on_error = false
43
- end
44
-
45
- desc "Code coverage detail"
46
- task :simplecov do
47
- ENV['COVERAGE'] = "true"
48
- Rake::Task['test'].execute
49
- end
50
-
51
- require 'reek/rake/task'
52
- Reek::Rake::Task.new do |t|
53
- t.fail_on_error = true
54
- t.verbose = false
55
- t.source_files = 'lib/**/*.rb'
56
- end
57
-
58
- require 'roodi'
59
- require 'roodi_task'
60
- RoodiTask.new do |t|
61
- t.verbose = false
62
- end
63
-
64
- task :default => :test
65
-
66
- require 'yard'
67
- YARD::Rake::YardocTask.new
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.1.1
data/veracodecli.gemspec DELETED
@@ -1,78 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
- # stub: veracodecli 0.1.1 ruby lib
6
-
7
- Gem::Specification.new do |s|
8
- s.name = "veracodecli"
9
- s.version = "0.1.1"
10
-
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.require_paths = ["lib"]
13
- s.authors = ["isaiah thiessen"]
14
- s.date = "2015-09-22"
15
- s.description = "Ruby based CLI for accessing veracode's api"
16
- s.email = "isaiah.thiessen@telus.com"
17
- s.executables = ["veracodecli"]
18
- s.extra_rdoc_files = [
19
- "LICENSE.txt",
20
- "README.md"
21
- ]
22
- s.files = [
23
- "bin/veracodecli",
24
- "lib/veracodecli.rb",
25
- "lib/veracodecli/api.rb"
26
- ]
27
- s.homepage = "http://github.com/isand3r/veracodecli"
28
- s.licenses = ["MIT"]
29
- s.rubygems_version = "2.4.6"
30
- s.summary = "Ruby based CLI for accessing veracode's api"
31
- s.test_files = ["test/API.rb", "test/helper.rb", "test/test_veracodecli.rb"]
32
-
33
- if s.respond_to? :specification_version then
34
- s.specification_version = 4
35
-
36
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
37
- s.add_runtime_dependency(%q<json>, [">= 0"])
38
- s.add_runtime_dependency(%q<activesupport>, [">= 0"])
39
- s.add_runtime_dependency(%q<rest-client>, [">= 0"])
40
- s.add_runtime_dependency(%q<commander>, [">= 0"])
41
- s.add_development_dependency(%q<shoulda>, [">= 0"])
42
- s.add_development_dependency(%q<yard>, ["~> 0.7"])
43
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
44
- s.add_development_dependency(%q<bundler>, ["~> 1.0"])
45
- s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
46
- s.add_development_dependency(%q<simplecov>, [">= 0"])
47
- s.add_development_dependency(%q<reek>, ["~> 1.2.8"])
48
- s.add_development_dependency(%q<roodi>, ["~> 2.1.0"])
49
- else
50
- s.add_dependency(%q<json>, [">= 0"])
51
- s.add_dependency(%q<activesupport>, [">= 0"])
52
- s.add_dependency(%q<rest-client>, [">= 0"])
53
- s.add_dependency(%q<commander>, [">= 0"])
54
- s.add_dependency(%q<shoulda>, [">= 0"])
55
- s.add_dependency(%q<yard>, ["~> 0.7"])
56
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
57
- s.add_dependency(%q<bundler>, ["~> 1.0"])
58
- s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
59
- s.add_dependency(%q<simplecov>, [">= 0"])
60
- s.add_dependency(%q<reek>, ["~> 1.2.8"])
61
- s.add_dependency(%q<roodi>, ["~> 2.1.0"])
62
- end
63
- else
64
- s.add_dependency(%q<json>, [">= 0"])
65
- s.add_dependency(%q<activesupport>, [">= 0"])
66
- s.add_dependency(%q<rest-client>, [">= 0"])
67
- s.add_dependency(%q<commander>, [">= 0"])
68
- s.add_dependency(%q<shoulda>, [">= 0"])
69
- s.add_dependency(%q<yard>, ["~> 0.7"])
70
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
71
- s.add_dependency(%q<bundler>, ["~> 1.0"])
72
- s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
73
- s.add_dependency(%q<simplecov>, [">= 0"])
74
- s.add_dependency(%q<reek>, ["~> 1.2.8"])
75
- s.add_dependency(%q<roodi>, ["~> 2.1.0"])
76
- end
77
- end
78
-