jettywrapper 1.2.1 → 1.3.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.
- data/Gemfile +4 -1
- data/Rakefile +10 -4
- data/jettywrapper.gemspec +2 -1
- data/lib/jettywrapper.rb +43 -21
- data/lib/jettywrapper/version.rb +1 -1
- data/spec/lib/jettywrapper_integration_spec.rb +14 -12
- data/spec/lib/jettywrapper_spec.rb +25 -15
- data/spec/spec_helper.rb +15 -0
- metadata +150 -154
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -20,11 +20,17 @@ Spec::Rake::SpecTask.new(:spec) do |spec|
|
|
20
20
|
spec.spec_files = FileList['spec/**/*_spec.rb']
|
21
21
|
end
|
22
22
|
|
23
|
-
Spec::Rake::SpecTask.new(:
|
23
|
+
Spec::Rake::SpecTask.new(:coverage) do |spec|
|
24
24
|
spec.libs << 'lib' << 'spec'
|
25
25
|
spec.pattern = 'spec/**/*_spec.rb'
|
26
|
-
|
27
|
-
|
26
|
+
|
27
|
+
ruby_engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : "ruby"
|
28
|
+
ENV['COVERAGE'] = 'true' unless ruby_engine == 'jruby'
|
29
|
+
|
30
|
+
if ENV['COVERAGE'] and RUBY_VERSION =~ /^1.8/
|
31
|
+
spec.rcov = true
|
32
|
+
spec.rcov_opts = %w{--exclude spec\/*,gems\/*,ruby\/* --aggregate coverage.data}
|
33
|
+
end
|
28
34
|
end
|
29
35
|
|
30
36
|
task :clean do
|
@@ -51,4 +57,4 @@ rescue LoadError
|
|
51
57
|
end
|
52
58
|
end
|
53
59
|
|
54
|
-
task :default => [:
|
60
|
+
task :default => [:coverage, :doc]
|
data/jettywrapper.gemspec
CHANGED
@@ -29,7 +29,8 @@ Gem::Specification.new do |s|
|
|
29
29
|
# It will not add these as dependencies if you require lyber-core for other projects
|
30
30
|
s.add_development_dependency "rspec", "< 2.0" # We're not ready to upgrade to rspec 2
|
31
31
|
s.add_development_dependency 'mocha'
|
32
|
-
s.add_development_dependency '
|
32
|
+
s.add_development_dependency 'rake'
|
33
|
+
|
33
34
|
|
34
35
|
s.add_development_dependency 'yard', '0.6.5' # Yard > 0.6.5 won't generate docs.
|
35
36
|
# I don't know why & don't have time to
|
data/lib/jettywrapper.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
# Jettywrapper is a Singleton class, so you can only create one jetty instance at a time.
|
2
1
|
require 'loggable'
|
3
2
|
require 'singleton'
|
4
3
|
require 'fileutils'
|
@@ -7,23 +6,25 @@ require 'socket'
|
|
7
6
|
require 'timeout'
|
8
7
|
require 'childprocess'
|
9
8
|
require 'active_support/core_ext/hash'
|
9
|
+
require 'erb'
|
10
10
|
|
11
11
|
Dir[File.expand_path(File.join(File.dirname(__FILE__),"tasks/*.rake"))].each { |ext| load ext } if defined?(Rake)
|
12
12
|
|
13
13
|
|
14
|
+
# Jettywrapper is a Singleton class, so you can only create one jetty instance at a time.
|
14
15
|
class Jettywrapper
|
15
16
|
|
16
17
|
include Singleton
|
17
18
|
include Loggable
|
18
19
|
|
19
|
-
attr_accessor :
|
20
|
-
attr_accessor :
|
21
|
-
attr_accessor :startup_wait #
|
22
|
-
attr_accessor :quiet #
|
23
|
-
attr_accessor :solr_home #
|
20
|
+
attr_accessor :jetty_home # Jetty's home directory
|
21
|
+
attr_accessor :port # Jetty's port. Default is 8888. Note that attribute is named port, but params passed in expect :jetty_port
|
22
|
+
attr_accessor :startup_wait # How many seconds to wait for jetty to spin up. Default is 5.
|
23
|
+
attr_accessor :quiet # true (default) to reduce Jetty's output
|
24
|
+
attr_accessor :solr_home # Solr's home directory. Default is jetty_home/solr
|
24
25
|
attr_accessor :base_path # The root of the application. Used for determining where log files and PID files should go.
|
25
26
|
attr_accessor :java_opts # Options to pass to java (ex. ["-Xmx512mb", "-Xms128mb"])
|
26
|
-
attr_accessor :
|
27
|
+
attr_accessor :jetty_opts # Options to pass to jetty (ex. ["etc/my_jetty.xml", "etc/other.xml"] as in http://wiki.eclipse.org/Jetty/Reference/jetty.xml_usage
|
27
28
|
|
28
29
|
# configure the singleton with some defaults
|
29
30
|
def initialize(params = {})
|
@@ -49,27 +50,44 @@ class Jettywrapper
|
|
49
50
|
app_root = ENV['APP_ROOT']
|
50
51
|
app_root ||= '.'
|
51
52
|
end
|
52
|
-
|
53
|
+
|
54
|
+
jetty_file = "#{app_root}/config/jetty.yml"
|
55
|
+
|
56
|
+
unless File.exists?(jetty_file)
|
57
|
+
logger.warn "Didn't find expected jettywrapper config file at #{jetty_file}, using default file instead."
|
58
|
+
jetty_file = File.expand_path("../config/jetty.yml", File.dirname(__FILE__))
|
59
|
+
end
|
60
|
+
|
53
61
|
begin
|
54
|
-
|
62
|
+
@jetty_erb = ERB.new(IO.read(jetty_file)).result(binding)
|
55
63
|
rescue Exception => e
|
56
|
-
|
57
|
-
file ||= YAML.load_file(File.join(File.dirname(__FILE__),"../config/jetty.yml"))
|
58
|
-
#raise "Unable to load: #{file}" unless file
|
64
|
+
raise("jetty.yml was found, but could not be parsed with ERB. \n#{$!.inspect}")
|
59
65
|
end
|
60
|
-
|
66
|
+
|
67
|
+
begin
|
68
|
+
@jetty_yml = YAML::load(@jetty_erb)
|
69
|
+
rescue StandardError => e
|
70
|
+
raise("jetty.yml was found, but could not be parsed.\n")
|
71
|
+
end
|
72
|
+
|
73
|
+
if @jetty_yml.nil? || !@jetty_yml.is_a?(Hash)
|
74
|
+
raise("jetty.yml was found, but was blank or malformed.\n")
|
75
|
+
end
|
76
|
+
|
77
|
+
config = @jetty_yml.with_indifferent_access
|
61
78
|
config[config_name] || config[:default]
|
62
79
|
end
|
63
80
|
|
64
81
|
|
65
82
|
# Set the jetty parameters. It accepts a Hash of symbols.
|
66
83
|
# @param [Hash<Symbol>] params
|
67
|
-
#
|
68
|
-
#
|
69
|
-
#
|
70
|
-
#
|
71
|
-
#
|
72
|
-
#
|
84
|
+
# :jetty_home Required. Jetty's home direcotry
|
85
|
+
# :jetty_port Jetty's port. Default is 8888. Note that attribute is named port, but params passed in expect :jetty_port
|
86
|
+
# :startup_wait How many seconds to wait for jetty to spin up. Default is 5. If jetty doesn't finish spinning up, tests can fail because they can't reach jetty.
|
87
|
+
# :solr_home Solr's home directory. Default is jetty_home/solr
|
88
|
+
# :quiet Keep True(default) to reduce jetty's output
|
89
|
+
# :java_opts options to pass to the jvm (ex. ["-Xmx512mb", "-Xms128mb"])
|
90
|
+
# :jetty_opts options to pass to jetty (ex. ["etc/my_jetty.xml", "etc/other.xml"] as in http://wiki.eclipse.org/Jetty/Reference/jetty.xml_usage
|
73
91
|
def configure(params = {})
|
74
92
|
jetty_server = self.instance
|
75
93
|
jetty_server.reset_process!
|
@@ -86,6 +104,7 @@ class Jettywrapper
|
|
86
104
|
jetty_server.port = params[:jetty_port] || 8888
|
87
105
|
jetty_server.startup_wait = params[:startup_wait] || 5
|
88
106
|
jetty_server.java_opts = params[:java_opts] || []
|
107
|
+
jetty_server.jetty_opts = params[:jetty_opts] || []
|
89
108
|
return jetty_server
|
90
109
|
end
|
91
110
|
|
@@ -100,7 +119,8 @@ class Jettywrapper
|
|
100
119
|
# :jetty_home => "/path/to/jetty",
|
101
120
|
# :quiet => false,
|
102
121
|
# :jetty_port => 8983,
|
103
|
-
# :startup_wait => 30
|
122
|
+
# :startup_wait => 30,
|
123
|
+
# :jetty_opts => "/etc/jetty.xml"
|
104
124
|
# }
|
105
125
|
# error = Jettywrapper.wrap(jetty_params) do
|
106
126
|
# Rake::Task["rake:spec"].invoke
|
@@ -123,6 +143,8 @@ class Jettywrapper
|
|
123
143
|
jetty_server.stop
|
124
144
|
end
|
125
145
|
|
146
|
+
raise error if error
|
147
|
+
|
126
148
|
return error
|
127
149
|
end
|
128
150
|
|
@@ -211,7 +233,7 @@ class Jettywrapper
|
|
211
233
|
|
212
234
|
# What command is being run to invoke jetty?
|
213
235
|
def jetty_command
|
214
|
-
["java", java_variables, java_opts, "-jar", "start.jar"].flatten
|
236
|
+
["java", java_variables, java_opts, "-jar", "start.jar", jetty_opts].flatten
|
215
237
|
end
|
216
238
|
|
217
239
|
def java_variables
|
data/lib/jettywrapper/version.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
GEMVERSION = "1.
|
1
|
+
GEMVERSION = "1.3.0"
|
@@ -13,7 +13,8 @@ module Hydra
|
|
13
13
|
it "starts" do
|
14
14
|
jetty_params = {
|
15
15
|
:jetty_home => File.expand_path("#{File.dirname(__FILE__)}/../../jetty"),
|
16
|
-
:startup_wait => 30
|
16
|
+
:startup_wait => 30,
|
17
|
+
:jetty_port => TEST_JETTY_PORTS.first
|
17
18
|
}
|
18
19
|
Jettywrapper.configure(jetty_params)
|
19
20
|
ts = Jettywrapper.instance
|
@@ -26,7 +27,7 @@ module Hydra
|
|
26
27
|
|
27
28
|
# Can we connect to solr?
|
28
29
|
require 'net/http'
|
29
|
-
response = Net::HTTP.get_response(URI.parse("http://localhost:
|
30
|
+
response = Net::HTTP.get_response(URI.parse("http://localhost:#{jetty_params[:jetty_port]}/solr/development/admin/"))
|
30
31
|
response.code.should eql("200")
|
31
32
|
ts.stop
|
32
33
|
|
@@ -35,7 +36,8 @@ module Hydra
|
|
35
36
|
it "won't start if it's already running" do
|
36
37
|
jetty_params = {
|
37
38
|
:jetty_home => File.expand_path("#{File.dirname(__FILE__)}/../../jetty"),
|
38
|
-
:startup_wait => 30
|
39
|
+
:startup_wait => 30,
|
40
|
+
:jetty_port => TEST_JETTY_PORTS.first
|
39
41
|
}
|
40
42
|
Jettywrapper.configure(jetty_params)
|
41
43
|
ts = Jettywrapper.instance
|
@@ -43,30 +45,30 @@ module Hydra
|
|
43
45
|
ts.stop
|
44
46
|
ts.start
|
45
47
|
ts.logger.debug "Jetty started from rspec at #{ts.pid}"
|
46
|
-
response = Net::HTTP.get_response(URI.parse("http://localhost:
|
48
|
+
response = Net::HTTP.get_response(URI.parse("http://localhost:#{jetty_params[:jetty_port]}/solr/development/admin/"))
|
47
49
|
response.code.should eql("200")
|
48
50
|
lambda { ts.start }.should raise_exception(/Server is already running/)
|
49
51
|
ts.stop
|
50
52
|
end
|
51
53
|
|
52
54
|
it "can check to see whether a port is already in use" do
|
53
|
-
|
55
|
+
jetty_params = {
|
54
56
|
:jetty_home => File.expand_path("#{File.dirname(__FILE__)}/../../jetty"),
|
55
|
-
:jetty_port =>
|
57
|
+
:jetty_port => TEST_JETTY_PORTS.last,
|
56
58
|
:startup_wait => 30
|
57
59
|
}
|
58
|
-
Jettywrapper.stop(
|
60
|
+
Jettywrapper.stop(jetty_params)
|
59
61
|
sleep 10
|
60
|
-
Jettywrapper.is_port_in_use?(
|
61
|
-
Jettywrapper.start(
|
62
|
-
Jettywrapper.is_port_in_use?(
|
63
|
-
Jettywrapper.stop(
|
62
|
+
Jettywrapper.is_port_in_use?(jetty_params[:jetty_port]).should eql(false)
|
63
|
+
Jettywrapper.start(jetty_params)
|
64
|
+
Jettywrapper.is_port_in_use?(jetty_params[:jetty_port]).should eql(true)
|
65
|
+
Jettywrapper.stop(jetty_params)
|
64
66
|
end
|
65
67
|
|
66
68
|
it "raises an error if you try to start a jetty that is already running" do
|
67
69
|
jetty_params = {
|
68
70
|
:jetty_home => File.expand_path("#{File.dirname(__FILE__)}/../../jetty"),
|
69
|
-
:jetty_port =>
|
71
|
+
:jetty_port => TEST_JETTY_PORTS.first,
|
70
72
|
:startup_wait => 30
|
71
73
|
}
|
72
74
|
ts = Jettywrapper.configure(jetty_params)
|
@@ -9,36 +9,43 @@ require 'rubygems'
|
|
9
9
|
@jetty_params = {
|
10
10
|
:quiet => false,
|
11
11
|
:jetty_home => "/path/to/jetty",
|
12
|
-
:jetty_port =>
|
12
|
+
:jetty_port => TEST_JETTY_PORTS.first,
|
13
13
|
:solr_home => "/path/to/solr",
|
14
14
|
:startup_wait => 0,
|
15
|
-
:java_opts => ["-Xmx256mb"]
|
15
|
+
:java_opts => ["-Xmx256mb"],
|
16
|
+
:jetty_opts => ["/path/to/jetty_xml", "/path/to/other_jetty_xml"]
|
16
17
|
}
|
17
18
|
end
|
18
19
|
|
19
20
|
context "config" do
|
20
21
|
it "loads the application jetty.yml first" do
|
21
|
-
|
22
|
+
IO.expects(:read).with('./config/jetty.yml').once.returns("default:\n")
|
22
23
|
config = Jettywrapper.load_config
|
23
24
|
end
|
24
25
|
|
26
|
+
it "loads the application jetty.yml using erb parsing" do
|
27
|
+
IO.expects(:read).with('./config/jetty.yml').once.returns("default:\n a: <%= 123 %>")
|
28
|
+
config = Jettywrapper.load_config
|
29
|
+
config[:a] == 123
|
30
|
+
end
|
31
|
+
|
25
32
|
it "falls back on the distributed jetty.yml" do
|
26
33
|
fallback_seq = sequence('fallback sequence')
|
27
|
-
|
28
|
-
|
34
|
+
File.expects(:exists?).in_sequence(fallback_seq).with('./config/jetty.yml').returns(false)
|
35
|
+
IO.expects(:read).in_sequence(fallback_seq).with { |value| value =~ /jetty.yml/ }.returns("default:\n")
|
29
36
|
config = Jettywrapper.load_config
|
30
37
|
end
|
31
38
|
|
32
39
|
it "supports per-environment configuration" do
|
33
40
|
ENV['environment'] = 'test'
|
34
|
-
|
41
|
+
IO.expects(:read).with('./config/jetty.yml').once.returns("default:\n a: 1\ntest:\n a: 2")
|
35
42
|
config = Jettywrapper.load_config
|
36
43
|
config[:a].should == 2
|
37
44
|
end
|
38
45
|
|
39
46
|
it "falls back on a 'default' environment configuration" do
|
40
47
|
ENV['environment'] = 'test'
|
41
|
-
|
48
|
+
IO.expects(:read).with('./config/jetty.yml').once.returns("default:\n a: 1")
|
42
49
|
config = Jettywrapper.load_config
|
43
50
|
config[:a].should == 1
|
44
51
|
end
|
@@ -54,9 +61,10 @@ require 'rubygems'
|
|
54
61
|
ts = Jettywrapper.configure(@jetty_params)
|
55
62
|
ts.quiet.should == false
|
56
63
|
ts.jetty_home.should == "/path/to/jetty"
|
57
|
-
ts.port.should ==
|
64
|
+
ts.port.should == @jetty_params[:jetty_port]
|
58
65
|
ts.solr_home.should == '/path/to/solr'
|
59
66
|
ts.startup_wait.should == 0
|
67
|
+
ts.jetty_opts.should == @jetty_params[:jetty_opts]
|
60
68
|
end
|
61
69
|
|
62
70
|
# passing in a hash is no longer optional
|
@@ -70,7 +78,8 @@ require 'rubygems'
|
|
70
78
|
:jetty_home => '/path/to/jetty',
|
71
79
|
:jetty_port => nil,
|
72
80
|
:solr_home => nil,
|
73
|
-
:startup_wait => nil
|
81
|
+
:startup_wait => nil,
|
82
|
+
:jetty_opts => nil
|
74
83
|
}
|
75
84
|
|
76
85
|
ts = Jettywrapper.configure(jetty_params)
|
@@ -79,6 +88,7 @@ require 'rubygems'
|
|
79
88
|
ts.port.should == 8888
|
80
89
|
ts.solr_home.should == File.join(ts.jetty_home, "solr")
|
81
90
|
ts.startup_wait.should == 5
|
91
|
+
ts.jetty_opts.should == []
|
82
92
|
end
|
83
93
|
|
84
94
|
it "passes all the expected values to jetty during startup" do
|
@@ -87,6 +97,8 @@ require 'rubygems'
|
|
87
97
|
command.should include("-Dsolr.solr.home=#{@jetty_params[:solr_home]}")
|
88
98
|
command.should include("-Djetty.port=#{@jetty_params[:jetty_port]}")
|
89
99
|
command.should include("-Xmx256mb")
|
100
|
+
command.should include("start.jar")
|
101
|
+
command.slice(command.index('start.jar')+1, 2).should == @jetty_params[:jetty_opts]
|
90
102
|
end
|
91
103
|
|
92
104
|
it "escapes the :solr_home parameter" do
|
@@ -215,9 +227,9 @@ require 'rubygems'
|
|
215
227
|
ts = Jettywrapper.instance
|
216
228
|
ts.quiet.should == @jetty_params[:quiet]
|
217
229
|
ts.jetty_home.should == "/path/to/jetty"
|
218
|
-
ts.port.should ==
|
230
|
+
ts.port.should == @jetty_params[:jetty_port]
|
219
231
|
ts.solr_home.should == "/path/to/solr"
|
220
|
-
ts.startup_wait.should == 0
|
232
|
+
ts.startup_wait.should == 0
|
221
233
|
end
|
222
234
|
error.should eql(false)
|
223
235
|
end
|
@@ -225,11 +237,9 @@ require 'rubygems'
|
|
225
237
|
it "captures any errors produced" do
|
226
238
|
Jettywrapper.any_instance.stubs(:start).returns(true)
|
227
239
|
Jettywrapper.any_instance.stubs(:stop).returns(true)
|
228
|
-
error = Jettywrapper.wrap(@jetty_params) do
|
240
|
+
expect { error = Jettywrapper.wrap(@jetty_params) do
|
229
241
|
raise "this is an expected error message"
|
230
|
-
end
|
231
|
-
error.class.should eql(RuntimeError)
|
232
|
-
error.message.should eql("this is an expected error message")
|
242
|
+
end }.to raise_error "this is an expected error message"
|
233
243
|
end
|
234
244
|
|
235
245
|
end # end of wrapping context
|
data/spec/spec_helper.rb
CHANGED
@@ -1,4 +1,13 @@
|
|
1
1
|
$: << File.join(File.dirname(__FILE__), "/../../lib")
|
2
|
+
|
3
|
+
if ENV['COVERAGE'] and RUBY_VERSION =~ /^1.9/
|
4
|
+
require 'simplecov'
|
5
|
+
require 'simplecov-rcov'
|
6
|
+
|
7
|
+
SimpleCov.formatter = SimpleCov::Formatter::RcovFormatter
|
8
|
+
SimpleCov.start
|
9
|
+
end
|
10
|
+
|
2
11
|
require 'spec/autorun'
|
3
12
|
# require 'spec/rails'
|
4
13
|
require 'jettywrapper'
|
@@ -6,3 +15,9 @@ require 'jettywrapper'
|
|
6
15
|
Spec::Runner.configure do |config|
|
7
16
|
config.mock_with :mocha
|
8
17
|
end
|
18
|
+
|
19
|
+
unless ENV.select { |k,v| k =~ /TEST_JETTY_PORT/ }.empty?
|
20
|
+
TEST_JETTY_PORTS = ENV.select { |k,v| k =~ /TEST_JETTY_PORT/ }.sort_by { |k,v| k }.map { |k,v| v }
|
21
|
+
else
|
22
|
+
TEST_JETTY_PORTS = [8983, 8984,9999,8888]
|
23
|
+
end
|
metadata
CHANGED
@@ -1,178 +1,184 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: jettywrapper
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.3.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 2
|
9
|
-
- 1
|
10
|
-
version: 1.2.1
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Bess Sadler
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
dependencies:
|
21
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-06-06 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
22
15
|
name: logger
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
23
22
|
type: :runtime
|
24
23
|
prerelease: false
|
25
|
-
version_requirements:
|
26
|
-
none: false
|
27
|
-
requirements:
|
28
|
-
- -
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
|
31
|
-
|
32
|
-
- 0
|
33
|
-
version: "0"
|
34
|
-
requirement: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
36
31
|
name: mediashelf-loggable
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
37
38
|
type: :runtime
|
38
39
|
prerelease: false
|
39
|
-
version_requirements:
|
40
|
-
none: false
|
41
|
-
requirements:
|
42
|
-
- -
|
43
|
-
- !ruby/object:Gem::Version
|
44
|
-
|
45
|
-
|
46
|
-
- 0
|
47
|
-
version: "0"
|
48
|
-
requirement: *id002
|
49
|
-
- !ruby/object:Gem::Dependency
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
50
47
|
name: childprocess
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
51
54
|
type: :runtime
|
52
55
|
prerelease: false
|
53
|
-
version_requirements:
|
54
|
-
none: false
|
55
|
-
requirements:
|
56
|
-
- -
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
|
59
|
-
|
60
|
-
- 0
|
61
|
-
version: "0"
|
62
|
-
requirement: *id003
|
63
|
-
- !ruby/object:Gem::Dependency
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
64
63
|
name: i18n
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
65
70
|
type: :runtime
|
66
71
|
prerelease: false
|
67
|
-
version_requirements:
|
68
|
-
none: false
|
69
|
-
requirements:
|
70
|
-
- -
|
71
|
-
- !ruby/object:Gem::Version
|
72
|
-
|
73
|
-
|
74
|
-
- 0
|
75
|
-
version: "0"
|
76
|
-
requirement: *id004
|
77
|
-
- !ruby/object:Gem::Dependency
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
78
79
|
name: activesupport
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 3.0.0
|
79
86
|
type: :runtime
|
80
87
|
prerelease: false
|
81
|
-
version_requirements:
|
82
|
-
none: false
|
83
|
-
requirements:
|
84
|
-
- -
|
85
|
-
- !ruby/object:Gem::Version
|
86
|
-
hash: 7
|
87
|
-
segments:
|
88
|
-
- 3
|
89
|
-
- 0
|
90
|
-
- 0
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
91
93
|
version: 3.0.0
|
92
|
-
|
93
|
-
- !ruby/object:Gem::Dependency
|
94
|
+
- !ruby/object:Gem::Dependency
|
94
95
|
name: rspec
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - <
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '2.0'
|
95
102
|
type: :development
|
96
103
|
prerelease: false
|
97
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
98
105
|
none: false
|
99
|
-
requirements:
|
106
|
+
requirements:
|
100
107
|
- - <
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
|
103
|
-
|
104
|
-
- 2
|
105
|
-
- 0
|
106
|
-
version: "2.0"
|
107
|
-
requirement: *id006
|
108
|
-
- !ruby/object:Gem::Dependency
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '2.0'
|
110
|
+
- !ruby/object:Gem::Dependency
|
109
111
|
name: mocha
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
110
118
|
type: :development
|
111
119
|
prerelease: false
|
112
|
-
version_requirements:
|
113
|
-
none: false
|
114
|
-
requirements:
|
115
|
-
- -
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: rake
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ! '>='
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '0'
|
124
134
|
type: :development
|
125
135
|
prerelease: false
|
126
|
-
version_requirements:
|
127
|
-
none: false
|
128
|
-
requirements:
|
129
|
-
- -
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
|
132
|
-
|
133
|
-
- 0
|
134
|
-
version: "0"
|
135
|
-
requirement: *id008
|
136
|
-
- !ruby/object:Gem::Dependency
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '0'
|
142
|
+
- !ruby/object:Gem::Dependency
|
137
143
|
name: yard
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
146
|
+
requirements:
|
147
|
+
- - '='
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: 0.6.5
|
138
150
|
type: :development
|
139
151
|
prerelease: false
|
140
|
-
version_requirements:
|
141
|
-
none: false
|
142
|
-
requirements:
|
143
|
-
- -
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
hash: 13
|
146
|
-
segments:
|
147
|
-
- 0
|
148
|
-
- 6
|
149
|
-
- 5
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - '='
|
156
|
+
- !ruby/object:Gem::Version
|
150
157
|
version: 0.6.5
|
151
|
-
|
152
|
-
- !ruby/object:Gem::Dependency
|
158
|
+
- !ruby/object:Gem::Dependency
|
153
159
|
name: RedCloth
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
162
|
+
requirements:
|
163
|
+
- - ! '>='
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '0'
|
154
166
|
type: :development
|
155
167
|
prerelease: false
|
156
|
-
version_requirements:
|
157
|
-
none: false
|
158
|
-
requirements:
|
159
|
-
- -
|
160
|
-
- !ruby/object:Gem::Version
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
requirement: *id010
|
166
|
-
description: Spin up a jetty instance (e.g., the one at https://github.com/projecthydra/hydra-jetty) and wrap test in it. This lets us run tests against a real copy of solr and fedora.
|
167
|
-
email:
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
170
|
+
requirements:
|
171
|
+
- - ! '>='
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
174
|
+
description: Spin up a jetty instance (e.g., the one at https://github.com/projecthydra/hydra-jetty)
|
175
|
+
and wrap test in it. This lets us run tests against a real copy of solr and fedora.
|
176
|
+
email:
|
168
177
|
- bess@stanford.edu
|
169
178
|
executables: []
|
170
|
-
|
171
179
|
extensions: []
|
172
|
-
|
173
180
|
extra_rdoc_files: []
|
174
|
-
|
175
|
-
files:
|
181
|
+
files:
|
176
182
|
- .gitignore
|
177
183
|
- .gitmodules
|
178
184
|
- .rvmrc
|
@@ -190,41 +196,31 @@ files:
|
|
190
196
|
- spec/lib/jettywrapper_spec.rb
|
191
197
|
- spec/spec_helper.rb
|
192
198
|
- tasks/jettywrapper.rake
|
193
|
-
has_rdoc: true
|
194
199
|
homepage: https://github.com/projecthydra/jettywrapper
|
195
200
|
licenses: []
|
196
|
-
|
197
201
|
post_install_message:
|
198
202
|
rdoc_options: []
|
199
|
-
|
200
|
-
require_paths:
|
203
|
+
require_paths:
|
201
204
|
- lib
|
202
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
205
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
203
206
|
none: false
|
204
|
-
requirements:
|
205
|
-
- -
|
206
|
-
- !ruby/object:Gem::Version
|
207
|
-
|
208
|
-
segments:
|
207
|
+
requirements:
|
208
|
+
- - ! '>='
|
209
|
+
- !ruby/object:Gem::Version
|
210
|
+
version: '0'
|
211
|
+
segments:
|
209
212
|
- 0
|
210
|
-
|
211
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
213
|
+
hash: 463771772989334870
|
214
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
215
|
none: false
|
213
|
-
requirements:
|
214
|
-
- -
|
215
|
-
- !ruby/object:Gem::Version
|
216
|
-
hash: 23
|
217
|
-
segments:
|
218
|
-
- 1
|
219
|
-
- 3
|
220
|
-
- 6
|
216
|
+
requirements:
|
217
|
+
- - ! '>='
|
218
|
+
- !ruby/object:Gem::Version
|
221
219
|
version: 1.3.6
|
222
220
|
requirements: []
|
223
|
-
|
224
221
|
rubyforge_project:
|
225
|
-
rubygems_version: 1.
|
222
|
+
rubygems_version: 1.8.24
|
226
223
|
signing_key:
|
227
224
|
specification_version: 3
|
228
225
|
summary: Convenience tasks for working with jetty from within a ruby project.
|
229
226
|
test_files: []
|
230
|
-
|