warbler 1.4.8 → 1.4.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/History.txt +4 -0
- data/Mavenfile +2 -1
- data/README.rdoc +53 -51
- data/ext/JarMain.java +58 -12
- data/ext/WarMain.java +5 -5
- data/lib/warbler/traits/gemspec.rb +22 -5
- data/lib/warbler/version.rb +1 -1
- data/lib/warbler_jar.jar +0 -0
- data/pom.xml +2 -2
- data/spec/warbler/web_server_spec.rb +2 -2
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 62857e66b600cbaa2a79c76f1f184cbd73c33171
|
4
|
+
data.tar.gz: d2758474c41625d2d5d61b779e6d7d8c50545791
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 37bcb9035a8bc0723c2faa6ca06e00f2e339581c811360dbc1fadb7cc9adc0bfdc46cbee7292c9513c60242a59d76188ba8672b2f3e4dc81721e2452e8646350
|
7
|
+
data.tar.gz: 12637d24a34f8b5568ea74e6f480ee02a539f59bd7b1067079d49c299dac7d2ea0b16a8fee8ab164c3fb3bcf57632109067169f7576c0f5fe1b3a1148abad55e
|
data/Gemfile
CHANGED
data/History.txt
CHANGED
data/Mavenfile
CHANGED
@@ -7,7 +7,8 @@ gemspec( :jar => 'warbler_jar.jar',
|
|
7
7
|
|
8
8
|
# just dump the POM as pom.xml as read-only file
|
9
9
|
properties( 'tesla.dump.pom' => 'pom.xml',
|
10
|
-
'tesla.dump.readOnly' => true
|
10
|
+
'tesla.dump.readOnly' => true,
|
11
|
+
'jruby.plugins.version' => '1.0.10' )
|
11
12
|
|
12
13
|
# dependencies needed for compilation
|
13
14
|
scope :provided do
|
data/README.rdoc
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
= Warbler {<img src="https://badge.fury.io/rb/warbler.svg" alt="Gem Version" />}[http://badge.fury.io/rb/warbler] {<img src="https://travis-ci.org/jruby/warbler.png" />}[https://travis-ci.org/jruby/warbler]
|
2
2
|
|
3
|
-
Warbler is a gem to make a Java jar or war file out of any Ruby, Rails or Rack
|
4
|
-
application. Warbler provides a minimal, flexible, Ruby-like way to bundle up
|
3
|
+
Warbler is a gem to make a Java jar or war file out of any Ruby, Rails or Rack
|
4
|
+
application. Warbler provides a minimal, flexible, Ruby-like way to bundle up
|
5
5
|
all of your application files for deployment to a Java environment.
|
6
6
|
|
7
7
|
Warbler provides a sane set of out-of-the box defaults that should allow most
|
@@ -18,7 +18,7 @@ Version 1.4.x of Warbler supports versions of JRuby up to 1.7.x. The {2.x-dev br
|
|
18
18
|
3. Choose one:
|
19
19
|
|
20
20
|
* For a web project, deploy your +myapp.war+ file to your favorite Java application server.
|
21
|
-
|
21
|
+
|
22
22
|
* For a standalone applications, just run it: <tt>java -jar myapp.jar</tt>.
|
23
23
|
|
24
24
|
== Usage
|
@@ -43,9 +43,9 @@ Type <tt>warble</tt> to create the jar or war file.
|
|
43
43
|
|
44
44
|
== Features
|
45
45
|
|
46
|
-
Warbler "features" are small Rake tasks that run before the creation of the war
|
47
|
-
file and make manipulations to the archive structure. For instance, the
|
48
|
-
+executable+ feature makes your war file capable of running on its own,
|
46
|
+
Warbler "features" are small Rake tasks that run before the creation of the war
|
47
|
+
file and make manipulations to the archive structure. For instance, the
|
48
|
+
+executable+ feature makes your war file capable of running on its own,
|
49
49
|
without a servlet container (using an embedded web server) :
|
50
50
|
|
51
51
|
warble executable war
|
@@ -64,73 +64,73 @@ Currently, the following features are available :
|
|
64
64
|
number of files in the .war. This is mostly useful for Google
|
65
65
|
AppEngine where the number of files per application has a limit.
|
66
66
|
(Note: not applicable for jar-based applications.)
|
67
|
-
* +runnable+: This makes a (standard Java) runnable .war archive thus you can
|
68
|
-
execute binary bundled (gem) commands e.g. "rake". You should use the -S
|
69
|
-
switch to specify the binary followed by any arguments in takes e.g.
|
67
|
+
* +runnable+: This makes a (standard Java) runnable .war archive thus you can
|
68
|
+
execute binary bundled (gem) commands e.g. "rake". You should use the -S
|
69
|
+
switch to specify the binary followed by any arguments in takes e.g.
|
70
70
|
<tt>java -jar myrailsapp.war -S rake db:migrate</tt>.
|
71
|
-
* +executable+: This bundles an embedded web server into the .war so that it
|
72
|
-
can either be deployed into a traditional java web server or run as a
|
71
|
+
* +executable+: This bundles an embedded web server into the .war so that it
|
72
|
+
can either be deployed into a traditional java web server or run as a
|
73
73
|
standalone application using <tt>java -jar myapp.war</tt>.
|
74
74
|
(Note: jar-based applications are executable by default.)
|
75
75
|
* +compiled+: This uses +jrubyc+ to precompile all .rb files in your application
|
76
|
-
to .class files and includes those in the .war instead of the Ruby sources.
|
77
|
-
NOTE: The war file will still contain .rb files, but they will be short stubs
|
76
|
+
to .class files and includes those in the .war instead of the Ruby sources.
|
77
|
+
NOTE: The war file will still contain .rb files, but they will be short stubs
|
78
78
|
containing the following code : <tt>load __FILE__.sub(/\.rb$/, '.class')</tt>
|
79
79
|
|
80
|
-
Features may form the basis for a third-party plugin system (in the future)
|
80
|
+
Features may form the basis for a third-party plugin system (in the future)
|
81
81
|
if there is demand.
|
82
82
|
|
83
|
-
NOTE: Feature tasks must be included in the same command invocation and
|
84
|
-
inserted before the +war+ task in order to take effect. For example,
|
85
|
-
<tt>warble compiled; warble war</tt> does not compile and obfuscate +.rb+
|
86
|
-
sources because the second invocation of +warble+ does not run the +compiled+
|
83
|
+
NOTE: Feature tasks must be included in the same command invocation and
|
84
|
+
inserted before the +war+ task in order to take effect. For example,
|
85
|
+
<tt>warble compiled; warble war</tt> does not compile and obfuscate +.rb+
|
86
|
+
sources because the second invocation of +warble+ does not run the +compiled+
|
87
87
|
feature and creates a basic war with the sources included, make sure you run :
|
88
88
|
|
89
89
|
warble compiled war
|
90
90
|
|
91
|
-
or, if it's important that the war always be compiled, use the option above to
|
91
|
+
or, if it's important that the war always be compiled, use the option above to
|
92
92
|
put the feature in your <tt>config/warble.rb</tt>.
|
93
93
|
|
94
94
|
== War or Jar?
|
95
95
|
|
96
|
-
War-based projects are for Rails, Merb, or Rack-based web applications.
|
97
|
-
They usually contain a +config/environment.rb+ file, a +config/init.rb+ file,
|
96
|
+
War-based projects are for Rails, Merb, or Rack-based web applications.
|
97
|
+
They usually contain a +config/environment.rb+ file, a +config/init.rb+ file,
|
98
98
|
or a +config.ru+ file.
|
99
|
-
The presence of these files are used to determine if the project is a web
|
99
|
+
The presence of these files are used to determine if the project is a web
|
100
100
|
application, and thus a Java EE compatible war file is built for the project.
|
101
101
|
|
102
|
-
Jar-based projects are for standalone Ruby applications. Usually a Ruby
|
103
|
-
application has a launcher script in the +bin+ directory and Ruby code
|
104
|
-
in the <tt>lib</tt> directory. Warbler packages the application so that
|
102
|
+
Jar-based projects are for standalone Ruby applications. Usually a Ruby
|
103
|
+
application has a launcher script in the +bin+ directory and Ruby code
|
104
|
+
in the <tt>lib</tt> directory. Warbler packages the application so that
|
105
105
|
<tt>java -jar myapp.jar</tt> runs the launcher script.
|
106
106
|
|
107
107
|
== Jar Files
|
108
108
|
|
109
109
|
=== Gem Specification (gemspec) Files
|
110
110
|
|
111
|
-
If your project has a <tt>.gemspec</tt> file in the top directory, it will be
|
112
|
-
used to configure the project's dependencies, launcher script, require paths,
|
113
|
-
and the files to be included in the archive. For best results make sure your
|
111
|
+
If your project has a <tt>.gemspec</tt> file in the top directory, it will be
|
112
|
+
used to configure the project's dependencies, launcher script, require paths,
|
113
|
+
and the files to be included in the archive. For best results make sure your
|
114
114
|
gemspec specifies all of the following attributes:
|
115
115
|
|
116
116
|
* +executables+
|
117
117
|
* +require_paths+
|
118
118
|
* runtime dependencies added with +add_dependency+
|
119
119
|
|
120
|
-
If your project do not have a <tt>.gemspec</tt>, Warbler will attempt to guess
|
121
|
-
the launcher from the contents of the <tt>bin</tt> directory and use the
|
122
|
-
<tt>lib</tt> directory as the lone require path. All files in the project
|
120
|
+
If your project do not have a <tt>.gemspec</tt>, Warbler will attempt to guess
|
121
|
+
the launcher from the contents of the <tt>bin</tt> directory and use the
|
122
|
+
<tt>lib</tt> directory as the lone require path. All files in the project
|
123
123
|
will be included in the archive.
|
124
124
|
|
125
125
|
=== Bundler
|
126
126
|
|
127
|
-
Applications that use Bundler[http://gembundler.com/], detected via presence of
|
128
|
-
a +Gemfile+, will have the gems packaged up into the archive along with the
|
129
|
-
Gemfile. The Bundler groups named ":development", ":test" and ":assets" will be
|
130
|
-
excluded by default, unless you specify with <tt>config.bundle_without</tt> in
|
127
|
+
Applications that use Bundler[http://gembundler.com/], detected via presence of
|
128
|
+
a +Gemfile+, will have the gems packaged up into the archive along with the
|
129
|
+
Gemfile. The Bundler groups named ":development", ":test" and ":assets" will be
|
130
|
+
excluded by default, unless you specify with <tt>config.bundle_without</tt> in
|
131
131
|
+config/warble.rb+.
|
132
132
|
|
133
|
-
Warbler supports Bundler for gems and git repositories, but not for plain path
|
133
|
+
Warbler supports Bundler for gems and git repositories, but not for plain path
|
134
134
|
components. Warbler will warn when a +:path+ component is found in the +Gemfile+
|
135
135
|
and will refuse to include it in the archive.
|
136
136
|
|
@@ -146,18 +146,18 @@ via presence of a +Jarfile+, will have the jars packaged up into the archive. th
|
|
146
146
|
Rails applications are detected automatically and configured appropriately.
|
147
147
|
The following items are set up for you:
|
148
148
|
|
149
|
-
* Your application runs in the +production+ environment by default.
|
149
|
+
* Your application runs in the +production+ environment by default.
|
150
150
|
Change it in +config/warble.rb+ (see below).
|
151
151
|
* The Rails gem is packaged if you haven't vendored Rails (Rails <= 2.x).
|
152
152
|
* Other gems configured in Rails.configuration.gems are packaged (2.1 - 2.3)
|
153
|
-
* Multi-thread-safe execution (as introduced in Rails 2.2) is detected and
|
153
|
+
* Multi-thread-safe execution (as introduced in Rails 2.2) is detected and
|
154
154
|
runtime pooling is disabled.
|
155
155
|
|
156
156
|
=== Other Rack-based applications
|
157
157
|
|
158
|
-
If you have a +config.ru+ file in the top directory or one of the immediate
|
159
|
-
subdirectories of your application, it will be included and used as the rackup
|
160
|
-
script for your Rack-based application. You will probably need to specify
|
158
|
+
If you have a +config.ru+ file in the top directory or one of the immediate
|
159
|
+
subdirectories of your application, it will be included and used as the rackup
|
160
|
+
script for your Rack-based application. You will probably need to specify
|
161
161
|
framework and application gems in +config/warble.rb+ unless you're using Bundler
|
162
162
|
to manage your gems. <tt>ENV['RACK_ENV']</tt> will be set to +production+.
|
163
163
|
|
@@ -166,13 +166,13 @@ of how to configure Warbler to package Camping and Sinatra apps.
|
|
166
166
|
|
167
167
|
=== Configuration auto-detect notes
|
168
168
|
|
169
|
-
* Warbler will load the +environment+ Rake task in a Rails application to try
|
170
|
-
to detect some configuration. If you don't have database access in the
|
171
|
-
environment where you package your application, you may wish to set
|
172
|
-
<tt>Warbler.framework_detection = false</tt> at the top of +config.rb+.
|
173
|
-
In this case you may need to specify additional details such as booter, gems
|
169
|
+
* Warbler will load the +environment+ Rake task in a Rails application to try
|
170
|
+
to detect some configuration. If you don't have database access in the
|
171
|
+
environment where you package your application, you may wish to set
|
172
|
+
<tt>Warbler.framework_detection = false</tt> at the top of +config.rb+.
|
173
|
+
In this case you may need to specify additional details such as booter, gems
|
174
174
|
and other settings that would normally be gleaned from the app configuration.
|
175
|
-
* Is it possible to more generally detect what gems an application uses?
|
175
|
+
* Is it possible to more generally detect what gems an application uses?
|
176
176
|
<tt>Gem.loaded_specs</tt> is available, but the application needs to be
|
177
177
|
loaded first before its contents are reliable.
|
178
178
|
|
@@ -185,7 +185,7 @@ doing this. With the gem, simply run
|
|
185
185
|
|
186
186
|
warble config
|
187
187
|
|
188
|
-
Finally, edit the +config/warble.rb+ to your taste. The generated file is
|
188
|
+
Finally, edit the +config/warble.rb+ to your taste. The generated file is
|
189
189
|
fully-documented with the available options and default values.
|
190
190
|
|
191
191
|
=== War layout
|
@@ -244,7 +244,7 @@ lock the <tt>rubyzip</tt> gem to a version before 1.0.0.
|
|
244
244
|
|
245
245
|
== Troubleshooting
|
246
246
|
|
247
|
-
If Warbler isn't packaging the files you were expecting, use the +war:debug+
|
247
|
+
If Warbler isn't packaging the files you were expecting, use the +war:debug+
|
248
248
|
task to give you more insight into what's going on.
|
249
249
|
|
250
250
|
If you think you found a bug, please file one at
|
@@ -262,7 +262,7 @@ https://github.com/jruby/warbler/tarball/master.
|
|
262
262
|
|
263
263
|
== Development
|
264
264
|
|
265
|
-
You can develop Warbler with any implementation of Ruby. To write Warbler code
|
265
|
+
You can develop Warbler with any implementation of Ruby. To write Warbler code
|
266
266
|
and run specs, you need to have Bundler installed and run <tt>bundle</tt> once.
|
267
267
|
|
268
268
|
After that, simply run <tt>rake</tt>.
|
@@ -284,6 +284,8 @@ http://maven.apache.org/ Be aware the homebrew installs 3.0.5, which doesn't wor
|
|
284
284
|
|
285
285
|
Warbler is provided under the terms of the MIT license.
|
286
286
|
|
287
|
-
Warbler (c)
|
287
|
+
Warbler (c) 2013-2015 The JRuby project
|
288
|
+
|
289
|
+
Warbler (c) 2010-2012 Engine Yard, Inc.
|
288
290
|
|
289
291
|
Warbler (c) 2007-2009 Sun Microsystems, Inc.
|
data/ext/JarMain.java
CHANGED
@@ -28,8 +28,6 @@ public class JarMain implements Runnable {
|
|
28
28
|
|
29
29
|
static final String MAIN = "/" + JarMain.class.getName().replace('.', '/') + ".class";
|
30
30
|
|
31
|
-
final boolean debug = isDebug();
|
32
|
-
|
33
31
|
protected final String[] args;
|
34
32
|
protected final String archive;
|
35
33
|
private final String path;
|
@@ -126,7 +124,7 @@ public class JarMain implements Runnable {
|
|
126
124
|
}
|
127
125
|
|
128
126
|
protected Object newScriptingContainer(final URL[] jars) throws Exception {
|
129
|
-
|
127
|
+
setSystemProperty("org.jruby.embed.class.path", "");
|
130
128
|
classLoader = new URLClassLoader(jars);
|
131
129
|
Class scriptingContainerClass = Class.forName("org.jruby.embed.ScriptingContainer", true, classLoader);
|
132
130
|
Object scriptingContainer = scriptingContainerClass.newInstance();
|
@@ -164,12 +162,12 @@ public class JarMain implements Runnable {
|
|
164
162
|
}
|
165
163
|
|
166
164
|
protected void debug(String msg, Throwable t) {
|
167
|
-
if (
|
168
|
-
if (
|
165
|
+
if ( isDebug() ) System.out.println(msg);
|
166
|
+
if ( isDebug() && t != null ) t.printStackTrace(System.out);
|
169
167
|
}
|
170
168
|
|
171
169
|
protected static void debug(Throwable t) {
|
172
|
-
if (isDebug()) t.printStackTrace(System.out);
|
170
|
+
if ( isDebug() ) t.printStackTrace(System.out);
|
173
171
|
}
|
174
172
|
|
175
173
|
protected void warn(String msg) {
|
@@ -225,9 +223,9 @@ public class JarMain implements Runnable {
|
|
225
223
|
}
|
226
224
|
|
227
225
|
protected static void doStart(final JarMain main) {
|
226
|
+
int exit;
|
228
227
|
try {
|
229
|
-
|
230
|
-
if (isSystemExitEnabled()) System.exit(exit);
|
228
|
+
exit = main.start();
|
231
229
|
}
|
232
230
|
catch (Exception e) {
|
233
231
|
Throwable t = e;
|
@@ -235,7 +233,13 @@ public class JarMain implements Runnable {
|
|
235
233
|
t = t.getCause();
|
236
234
|
}
|
237
235
|
error(e.toString(), t);
|
238
|
-
|
236
|
+
exit = 1;
|
237
|
+
}
|
238
|
+
try {
|
239
|
+
if ( isSystemExitEnabled() ) System.exit(exit);
|
240
|
+
}
|
241
|
+
catch (SecurityException e) {
|
242
|
+
debug(e);
|
239
243
|
}
|
240
244
|
}
|
241
245
|
|
@@ -262,17 +266,59 @@ public class JarMain implements Runnable {
|
|
262
266
|
}
|
263
267
|
}
|
264
268
|
|
265
|
-
static boolean
|
266
|
-
|
269
|
+
private static final boolean debug;
|
270
|
+
static {
|
271
|
+
debug = Boolean.parseBoolean( getSystemProperty("warbler.debug", "false") );
|
267
272
|
}
|
268
273
|
|
274
|
+
static boolean isDebug() { return debug; }
|
275
|
+
|
269
276
|
/**
|
270
277
|
* if warbler.skip_system_exit system property is defined, we will not
|
271
278
|
* call System.exit in the normal flow. System.exit can cause problems
|
272
279
|
* for wrappers like procrun
|
273
280
|
*/
|
274
281
|
private static boolean isSystemExitEnabled(){
|
275
|
-
return
|
282
|
+
return getSystemProperty("warbler.skip_system_exit") == null; //omission enables System.exit use
|
283
|
+
}
|
284
|
+
|
285
|
+
static String getSystemProperty(final String name) {
|
286
|
+
return getSystemProperty(name, null);
|
287
|
+
}
|
288
|
+
|
289
|
+
static String getSystemProperty(final String name, final String defaultValue) {
|
290
|
+
try {
|
291
|
+
return System.getProperty(name, defaultValue);
|
292
|
+
}
|
293
|
+
catch (SecurityException e) {
|
294
|
+
return defaultValue;
|
295
|
+
}
|
296
|
+
}
|
297
|
+
|
298
|
+
static boolean setSystemProperty(final String name, final String value) {
|
299
|
+
try {
|
300
|
+
System.setProperty(name, value);
|
301
|
+
return true;
|
302
|
+
}
|
303
|
+
catch (SecurityException e) {
|
304
|
+
return false;
|
305
|
+
}
|
306
|
+
}
|
307
|
+
|
308
|
+
static String getENV(final String name) {
|
309
|
+
return getENV(name, null);
|
310
|
+
}
|
311
|
+
|
312
|
+
static String getENV(final String name, final String defaultValue) {
|
313
|
+
try {
|
314
|
+
if ( System.getenv().containsKey(name) ) {
|
315
|
+
return System.getenv().get(name);
|
316
|
+
}
|
317
|
+
return defaultValue;
|
318
|
+
}
|
319
|
+
catch (SecurityException e) {
|
320
|
+
return defaultValue;
|
321
|
+
}
|
276
322
|
}
|
277
323
|
|
278
324
|
}
|
data/ext/WarMain.java
CHANGED
@@ -140,12 +140,12 @@ public class WarMain extends JarMain {
|
|
140
140
|
if ( is != null ) props.load(is);
|
141
141
|
} catch (Exception e) { }
|
142
142
|
|
143
|
-
String port =
|
143
|
+
String port = getSystemProperty("warbler.port", getENV("PORT"));
|
144
144
|
port = port == null ? "8080" : port;
|
145
|
-
String webserverConfig =
|
145
|
+
String webserverConfig = getSystemProperty("warbler.webserver_config", getENV("WARBLER_WEBSERVER_CONFIG"));
|
146
146
|
String embeddedWebserverConfig = new URI("jar", entryPath(WEBSERVER_CONFIG), null).toURL().toString();
|
147
147
|
webserverConfig = webserverConfig == null ? embeddedWebserverConfig : webserverConfig;
|
148
|
-
for (Map.Entry entry : props.entrySet()) {
|
148
|
+
for ( Map.Entry entry : props.entrySet() ) {
|
149
149
|
String val = (String) entry.getValue();
|
150
150
|
val = val.replace("{{warfile}}", archive).
|
151
151
|
replace("{{port}}", port).
|
@@ -156,8 +156,8 @@ public class WarMain extends JarMain {
|
|
156
156
|
|
157
157
|
if (props.getProperty("props") != null) {
|
158
158
|
String[] propsToSet = props.getProperty("props").split(",");
|
159
|
-
for (String key : propsToSet) {
|
160
|
-
|
159
|
+
for ( String key : propsToSet ) {
|
160
|
+
setSystemProperty(key, props.getProperty(key));
|
161
161
|
}
|
162
162
|
}
|
163
163
|
|
@@ -55,15 +55,32 @@ module Warbler
|
|
55
55
|
|
56
56
|
def default_executable
|
57
57
|
if !@spec.executables.empty?
|
58
|
-
|
58
|
+
bundler_version =
|
59
|
+
Gem.loaded_specs.include?("bundler") ?
|
60
|
+
Gem.loaded_specs["bundler"].version :
|
61
|
+
Gem::Version.create("0.0.0")
|
62
|
+
if (bundler_version <=> Gem::Version.create("1.8.0")) < 0
|
63
|
+
"bin/#{@spec.executables.first}"
|
64
|
+
else
|
65
|
+
exe_script = @spec.executables.first
|
66
|
+
if File.exists?("exe/#{exe_script}")
|
67
|
+
"exe/#{exe_script}"
|
68
|
+
elsif File.exists?("bin/#{exe_script}")
|
69
|
+
"bin/#{exe_script}"
|
70
|
+
else
|
71
|
+
raise "No `#{exe_script}` executable script found"
|
72
|
+
end
|
73
|
+
end
|
74
|
+
elsif exe = Dir['bin/*'].sort.first
|
75
|
+
warn "No default executable found in #{@spec_file}, using bin/#{exe}"
|
76
|
+
exe
|
77
|
+
elsif exe = Dir['exe/*'].sort.first
|
78
|
+
warn "No default executable found in #{@spec_file}, using exe/#{exe}"
|
79
|
+
exe
|
59
80
|
else
|
60
|
-
exe = Dir['bin/*'].sort.first
|
61
81
|
raise "No executable script found" unless exe
|
62
|
-
warn "No default executable found in #{@spec_file}, using #{exe}"
|
63
|
-
exe
|
64
82
|
end
|
65
83
|
end
|
66
|
-
|
67
84
|
end
|
68
85
|
end
|
69
86
|
end
|
data/lib/warbler/version.rb
CHANGED
data/lib/warbler_jar.jar
CHANGED
Binary file
|
data/pom.xml
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
<modelVersion>4.0.0</modelVersion>
|
5
5
|
<groupId>rubygems</groupId>
|
6
6
|
<artifactId>warbler</artifactId>
|
7
|
-
<version>1.4.8
|
7
|
+
<version>1.4.8</version>
|
8
8
|
<packaging>gem</packaging>
|
9
9
|
<name>Warbler chirpily constructs .war files of your Rails applications.</name>
|
10
10
|
<description>Warbler is a gem to make a Java jar or war file out of any Ruby,
|
@@ -13,7 +13,7 @@ bundle up all of your application files for deployment to a Java environment.</d
|
|
13
13
|
<url>https://github.com/jruby/warbler</url>
|
14
14
|
<properties>
|
15
15
|
<tesla.dump.readOnly>true</tesla.dump.readOnly>
|
16
|
-
<jruby.plugins.version>1.0.
|
16
|
+
<jruby.plugins.version>1.0.10</jruby.plugins.version>
|
17
17
|
<tesla.dump.pom>pom.xml</tesla.dump.pom>
|
18
18
|
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
|
19
19
|
</properties>
|
@@ -29,13 +29,13 @@ describe Warbler::WebServer::Artifact do
|
|
29
29
|
it "uses default (maven) local repository" do
|
30
30
|
ENV['HOME'] = '/home/borg'
|
31
31
|
ENV.delete('M2_HOME'); ENV.delete('MAVEN_HOME')
|
32
|
-
|
32
|
+
sample_artifact.local_repository.should == "/home/borg/.m2/repository"
|
33
33
|
end
|
34
34
|
|
35
35
|
it "detects a custom maven repository setting" do
|
36
36
|
ENV['HOME'] = '/home/borg'
|
37
37
|
ENV['M2_HOME'] = File.expand_path('../m2_home', File.dirname(__FILE__))
|
38
|
-
|
38
|
+
sample_artifact.local_repository.should == '/usr/local/maven/repo'
|
39
39
|
end
|
40
40
|
|
41
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: warbler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nick Sieger
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-07-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -392,7 +392,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
392
392
|
version: '0'
|
393
393
|
requirements: []
|
394
394
|
rubyforge_project:
|
395
|
-
rubygems_version: 2.4.
|
395
|
+
rubygems_version: 2.4.8
|
396
396
|
signing_key:
|
397
397
|
specification_version: 4
|
398
398
|
summary: Warbler chirpily constructs .war files of your Rails applications.
|
@@ -563,4 +563,3 @@ test_files:
|
|
563
563
|
- spec/warbler/traits_spec.rb
|
564
564
|
- spec/warbler/war_spec.rb
|
565
565
|
- spec/warbler/web_server_spec.rb
|
566
|
-
has_rdoc:
|