jettywrapper 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,2 +1,6 @@
1
+ 1.2.0
2
+ Added per environment configuration
3
+ Fixes for JRuby
4
+
1
5
  1.1.0
2
6
  Added quiet mode, so you don't see log messages on jetty startup.
data/config/jetty.yml CHANGED
@@ -1,5 +1,5 @@
1
- jetty_port: 8983
2
- java_opts:
3
- - "-XX:MaxPermSize=128m"
4
- - "-Xmx256m"
5
-
1
+ default:
2
+ jetty_port: 8983
3
+ java_opts:
4
+ - "-XX:MaxPermSize=128m"
5
+ - "-Xmx256m"
data/lib/jettywrapper.rb CHANGED
@@ -56,7 +56,8 @@ class Jettywrapper
56
56
  file ||= YAML.load_file(File.join(File.dirname(__FILE__),"../config/jetty.yml"))
57
57
  #raise "Unable to load: #{file}" unless file
58
58
  end
59
- file.with_indifferent_access
59
+ config = file.with_indifferent_access
60
+ config[config_name] || config[:default]
60
61
  end
61
62
 
62
63
 
@@ -210,8 +211,7 @@ class Jettywrapper
210
211
 
211
212
  # What command is being run to invoke jetty?
212
213
  def jetty_command
213
- opts = (java_variables + java_opts).join(' ')
214
- "java #{opts} -jar start.jar"
214
+ ["java", java_variables, java_opts, "-jar", "start.jar"].flatten
215
215
  end
216
216
 
217
217
  def java_variables
@@ -231,7 +231,7 @@ class Jettywrapper
231
231
  logger.debug "Starting jetty with these values: "
232
232
  logger.debug "jetty_home: #{@jetty_home}"
233
233
  logger.debug "solr_home: #{@solr_home}"
234
- logger.debug "jetty_command: #{jetty_command}"
234
+ logger.debug "jetty_command: #{jetty_command.join(' ')}"
235
235
 
236
236
  # Check to see if we can start.
237
237
  # 1. If there is a pid, check to see if it is really running
@@ -263,7 +263,7 @@ class Jettywrapper
263
263
 
264
264
  def process
265
265
  @process ||= begin
266
- process = ChildProcess.build(jetty_command)
266
+ process = ChildProcess.build(*jetty_command)
267
267
  if self.quiet
268
268
  process.io.stderr = File.open("jettywrapper.log", "w+")
269
269
  process.io.stdout = process.io.stderr
@@ -289,11 +289,12 @@ class Jettywrapper
289
289
  def stop
290
290
  logger.debug "Instance stop method called for pid '#{pid}'"
291
291
  if pid
292
- process = ChildProcess.new
293
- process.instance_variable_set(:@pid, pid)
294
- process.instance_variable_set(:@started, true)
292
+ if @process
293
+ @process.stop
294
+ else
295
+ Process.kill("KILL", pid) rescue nil
296
+ end
295
297
 
296
- process.stop
297
298
  begin
298
299
  File.delete(pid_path)
299
300
  rescue
@@ -1 +1 @@
1
- GEMVERSION = "1.1.0"
1
+ GEMVERSION = "1.2.0"
@@ -1,7 +1,6 @@
1
1
  require 'spec_helper'
2
2
  require 'rubygems'
3
3
 
4
- module Hydra
5
4
  describe Jettywrapper do
6
5
 
7
6
  # JETTY1 =
@@ -16,6 +15,34 @@ module Hydra
16
15
  :java_opts => ["-Xmx256mb"]
17
16
  }
18
17
  end
18
+
19
+ context "config" do
20
+ it "loads the application jetty.yml first" do
21
+ YAML.expects(:load_file).with('./config/jetty.yml').once.returns({})
22
+ config = Jettywrapper.load_config
23
+ end
24
+
25
+ it "falls back on the distributed jetty.yml" do
26
+ fallback_seq = sequence('fallback sequence')
27
+ YAML.expects(:load_file).in_sequence(fallback_seq).with('./config/jetty.yml').raises(Exception)
28
+ YAML.expects(:load_file).in_sequence(fallback_seq).with { |value| value =~ /jetty.yml/ }.returns({})
29
+ config = Jettywrapper.load_config
30
+ end
31
+
32
+ it "supports per-environment configuration" do
33
+ ENV['environment'] = 'test'
34
+ YAML.expects(:load_file).with('./config/jetty.yml').once.returns({:test => {:a => 2 }, :default => { :a => 1 }})
35
+ config = Jettywrapper.load_config
36
+ config[:a].should == 2
37
+ end
38
+
39
+ it "falls back on a 'default' environment configuration" do
40
+ ENV['environment'] = 'test'
41
+ YAML.expects(:load_file).with('./config/jetty.yml').once.returns({:default => { :a => 1 }})
42
+ config = Jettywrapper.load_config
43
+ config[:a].should == 1
44
+ end
45
+ end
19
46
 
20
47
  context "instantiation" do
21
48
  it "can be instantiated" do
@@ -223,4 +250,3 @@ module Hydra
223
250
  end
224
251
  end
225
252
  end
226
- end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jettywrapper
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 31
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
- - 1
8
+ - 2
9
9
  - 0
10
- version: 1.1.0
10
+ version: 1.2.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Bess Sadler
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-11-22 00:00:00 -06:00
18
+ date: 2011-11-29 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency