forked from rubber/rubber
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote branch 'nirvdrum/master' into pull
- Loading branch information
Showing
8 changed files
with
282 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
56 changes: 56 additions & 0 deletions
56
generators/vulcanize/templates/jetty/config/rubber/deploy-jetty.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
|
||
namespace :rubber do | ||
|
||
namespace :jetty do | ||
|
||
rubber.allow_optional_tasks(self) | ||
|
||
after "rubber:install_packages", "rubber:jetty:custom_install" | ||
|
||
task :custom_install, :roles => :jetty do | ||
rubber.sudo_script 'install_jetty', <<-ENDSCRIPT | ||
if [[ -z `ls #{rubber_env.jetty_dir} 2> /dev/null` ]]; then | ||
wget -q http://ftp.osuosl.org/pub/eclipse/jetty/#{rubber_env.jetty_version}/dist/jetty-distribution-#{rubber_env.jetty_version}.tar.gz | ||
tar -zxf jetty-distribution-#{rubber_env.jetty_version}.tar.gz | ||
# Install to appropriate location. | ||
mv jetty-distribution-#{rubber_env.jetty_version} #{rubber_env.jetty_prefix} | ||
ln -s #{rubber_env.jetty_prefix}/jetty-distribution-#{rubber_env.jetty_version} #{rubber_env.jetty_dir} | ||
chmod 744 #{rubber_env.jetty_dir}/bin/*.sh | ||
# Cleanup the jetty distribution | ||
rm #{rubber_env.jetty_dir}/webapps/* | ||
rm -r #{rubber_env.jetty_dir}/contexts/test.d/ | ||
mv #{rubber_env.jetty_dir}/contexts/demo.xml #{rubber_env.jetty_dir}/contexts/demo.xml.example | ||
mv #{rubber_env.jetty_dir}/contexts/javadoc.xml #{rubber_env.jetty_dir}/contexts/javadoc.xml.example | ||
# Cleanup after ourselves. | ||
rm jetty-distribution-#{rubber_env.jetty_version}.tar.gz | ||
fi | ||
ENDSCRIPT | ||
end | ||
|
||
after "rubber:setup_app_permissions", "rubber:jetty:setup_jetty_permissions" | ||
|
||
task :setup_jetty_permissions, :roles => :jetty do | ||
run "chown -R #{rubber_env.app_user}:#{rubber_env.app_user} #{rubber_env.jetty_dir}" | ||
end | ||
|
||
before "deploy:stop", "rubber:jetty:stop" | ||
after "deploy:start", "rubber:jetty:start" | ||
after "deploy:restart", "rubber:jetty:restart" | ||
|
||
task :restart, :roles => :jetty do | ||
run "#{rubber_env.jetty_dir}/bin/jetty.sh restart" | ||
end | ||
|
||
task :stop, :roles => :jetty do | ||
run "#{rubber_env.jetty_dir}/bin/jetty.sh stop" | ||
end | ||
|
||
task :start, :roles => :jetty do | ||
run "#{rubber_env.jetty_dir}/bin/jetty.sh start" | ||
end | ||
|
||
end | ||
end |
199 changes: 199 additions & 0 deletions
199
generators/vulcanize/templates/jetty/config/rubber/role/jetty/jetty.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,199 @@ | ||
<%- | ||
@path = "#{rubber_env.jetty_dir}/etc/jetty.xml" | ||
%><?xml version="1.0"?> | ||
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd"> | ||
|
||
<!-- =============================================================== --> | ||
<!-- Configure the Jetty Server --> | ||
<!-- --> | ||
<!-- Documentation of this file format can be found at: --> | ||
<!-- http://docs.codehaus.org/display/JETTY/jetty.xml --> | ||
<!-- --> | ||
<!-- =============================================================== --> | ||
|
||
|
||
<Configure id="Server" class="org.eclipse.jetty.server.Server"> | ||
|
||
<!-- =========================================================== --> | ||
<!-- Server Thread Pool --> | ||
<!-- =========================================================== --> | ||
<Set name="ThreadPool"> | ||
<!-- Default queued blocking threadpool | ||
--> | ||
<New class="org.eclipse.jetty.util.thread.QueuedThreadPool"> | ||
<Set name="minThreads">10</Set> | ||
<Set name="maxThreads">200</Set> | ||
</New> | ||
|
||
<!-- Optional Java 5 bounded threadpool with job queue | ||
<New class="org.eclipse.thread.concurrent.ThreadPool"> | ||
<Set name="corePoolSize">50</Set> | ||
<Set name="maximumPoolSize">50</Set> | ||
</New> | ||
--> | ||
</Set> | ||
|
||
|
||
|
||
<!-- =========================================================== --> | ||
<!-- Set connectors --> | ||
<!-- =========================================================== --> | ||
|
||
<Call name="addConnector"> | ||
<Arg> | ||
<New class="org.eclipse.jetty.server.nio.SelectChannelConnector"> | ||
<Set name="host"><SystemProperty name="jetty.host" /></Set> | ||
<Set name="port"><SystemProperty name="jetty.port" default="<%= rubber_env.jetty_port %>"/></Set> | ||
<Set name="maxIdleTime">300000</Set> | ||
<Set name="Acceptors">2</Set> | ||
<Set name="statsOn">false</Set> | ||
<Set name="confidentialPort">8443</Set> | ||
<Set name="lowResourcesConnections">20000</Set> | ||
<Set name="lowResourcesMaxIdleTime">5000</Set> | ||
</New> | ||
</Arg> | ||
</Call> | ||
|
||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | ||
<!-- To add a HTTPS SSL connector --> | ||
<!-- mixin jetty-ssl.xml: --> | ||
<!-- java -jar start.jar etc/jetty.xml etc/jetty-ssl.xml --> | ||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | ||
|
||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | ||
<!-- To add a HTTP blocking connector --> | ||
<!-- mixin jetty-bio.xml: --> | ||
<!-- java -jar start.jar etc/jetty.xml etc/jetty-bio.xml --> | ||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | ||
|
||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | ||
<!-- To allow Jetty to be started from xinetd --> | ||
<!-- mixin jetty-xinetd.xml: --> | ||
<!-- java -jar start.jar etc/jetty.xml etc/jetty-xinetd.xml --> | ||
<!-- --> | ||
<!-- See jetty-xinetd.xml for further instructions. --> | ||
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | ||
|
||
<!-- =========================================================== --> | ||
<!-- Set handler Collection Structure --> | ||
<!-- =========================================================== --> | ||
<Set name="handler"> | ||
<New id="Handlers" class="org.eclipse.jetty.server.handler.HandlerCollection"> | ||
<Set name="handlers"> | ||
<Array type="org.eclipse.jetty.server.Handler"> | ||
<Item> | ||
<New id="Contexts" class="org.eclipse.jetty.server.handler.ContextHandlerCollection"/> | ||
</Item> | ||
<Item> | ||
<New id="DefaultHandler" class="org.eclipse.jetty.server.handler.DefaultHandler"/> | ||
</Item> | ||
<Item> | ||
<New id="RequestLog" class="org.eclipse.jetty.server.handler.RequestLogHandler"/> | ||
</Item> | ||
</Array> | ||
</Set> | ||
</New> | ||
</Set> | ||
|
||
<!-- =========================================================== --> | ||
<!-- Configure the context deployer --> | ||
<!-- A context deployer will deploy contexts described in --> | ||
<!-- configuration files discovered in a directory. --> | ||
<!-- The configuration directory can be scanned for hot --> | ||
<!-- deployments at the configured scanInterval. --> | ||
<!-- --> | ||
<!-- This deployer is configured to deploy contexts configured --> | ||
<!-- in the $JETTY_HOME/contexts directory --> | ||
<!-- --> | ||
<!-- =========================================================== --> | ||
<Call name="addBean"> | ||
<Arg> | ||
<New class="org.eclipse.jetty.deploy.ContextDeployer"> | ||
<Set name="contexts"><Ref id="Contexts"/></Set> | ||
<Set name="configurationDir"><SystemProperty name="jetty.home" default="."/>/contexts</Set> | ||
<Set name="scanInterval">5</Set> | ||
<Call name="setAttribute"> | ||
<Arg>org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern</Arg> | ||
<Arg>.*/jsp-api-[^/]*\.jar$|.*/jsp-[^/]*\.jar$</Arg> | ||
</Call> | ||
</New> | ||
</Arg> | ||
</Call> | ||
|
||
<!-- =========================================================== --> | ||
<!-- Configure the webapp deployer. --> | ||
<!-- A webapp deployer will deploy standard webapps discovered --> | ||
<!-- in a directory at startup, without the need for additional --> | ||
<!-- configuration files. It does not support hot deploy or --> | ||
<!-- non standard contexts (see ContextDeployer above). --> | ||
<!-- --> | ||
<!-- This deployer is configured to deploy webapps from the --> | ||
<!-- $JETTY_HOME/webapps directory --> | ||
<!-- --> | ||
<!-- Normally only one type of deployer need be used. --> | ||
<!-- --> | ||
<!-- =========================================================== --> | ||
<Call name="addBean"> | ||
<Arg> | ||
<New class="org.eclipse.jetty.deploy.WebAppDeployer"> | ||
<Set name="contexts"><Ref id="Contexts"/></Set> | ||
<Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set> | ||
<Set name="parentLoaderPriority">false</Set> | ||
<Set name="extract">true</Set> | ||
<Set name="allowDuplicates">false</Set> | ||
<Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set> | ||
<Call name="setAttribute"> | ||
<Arg>org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern</Arg> | ||
<Arg>.*/jsp-api-[^/]*\.jar$|.*/jsp-[^/]*\.jar$</Arg> | ||
</Call> | ||
</New> | ||
</Arg> | ||
</Call> | ||
|
||
<!-- =========================================================== --> | ||
<!-- Configure Authentication Login Service --> | ||
<!-- Realms may be configured for the entire server here, or --> | ||
<!-- they can be configured for a specific web app in a context --> | ||
<!-- configuration (see $(jetty.home)/contexts/test.xml for an --> | ||
<!-- example). --> | ||
<!-- =========================================================== --> | ||
<Call name="addBean"> | ||
<Arg> | ||
<New class="org.eclipse.jetty.security.HashLoginService"> | ||
<Set name="name">Test Realm</Set> | ||
<Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set> | ||
<Set name="refreshInterval">0</Set> | ||
</New> | ||
</Arg> | ||
</Call> | ||
|
||
<!-- =========================================================== --> | ||
<!-- Configure Request Log --> | ||
<!-- Request logs may be configured for the entire server here, --> | ||
<!-- or they can be configured for a specific web app in a --> | ||
<!-- contexts configuration (see $(jetty.home)/contexts/test.xml --> | ||
<!-- for an example). --> | ||
<!-- =========================================================== --> | ||
<Ref id="RequestLog"> | ||
<Set name="requestLog"> | ||
<New id="RequestLogImpl" class="org.eclipse.jetty.server.NCSARequestLog"> | ||
<Set name="filename"><SystemProperty name="jetty.home" default="."/>/logs/yyyy_mm_dd.request.log</Set> | ||
<Set name="filenameDateFormat">yyyy_MM_dd</Set> | ||
<Set name="retainDays">90</Set> | ||
<Set name="append">true</Set> | ||
<Set name="extended">false</Set> | ||
<Set name="logCookies">false</Set> | ||
<Set name="LogTimeZone">GMT</Set> | ||
</New> | ||
</Set> | ||
</Ref> | ||
|
||
<!-- =========================================================== --> | ||
<!-- extra options --> | ||
<!-- =========================================================== --> | ||
<Set name="stopAtShutdown">true</Set> | ||
<Set name="sendServerVersion">true</Set> | ||
<Set name="sendDateHeader">true</Set> | ||
<Set name="gracefulShutdown">1000</Set> | ||
|
||
</Configure> |
9 changes: 9 additions & 0 deletions
9
generators/vulcanize/templates/jetty/config/rubber/role/jetty/monit-jetty.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
<% | ||
@path = '/etc/monit/monit.d/monit-jetty.conf' | ||
%> | ||
<% PIDFILE = "/var/run/jetty.pid" %> | ||
check process jetty with pidfile <%= PIDFILE %> | ||
group jetty-<%= RUBBER_ENV %> | ||
start program = "<%= rubber_env.jetty_dir %>/bin/jetty.sh start" | ||
stop program = "<%= rubber_env.jetty_dir %>/bin/jetty.sh stop" | ||
if failed host <%= rubber_env.host %> port <%= rubber_env.jetty_port %> with timeout 10 seconds for 10 cycles then restart |
8 changes: 8 additions & 0 deletions
8
generators/vulcanize/templates/jetty/config/rubber/rubber-jetty.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
jetty_version: 7.0.0.v20091005 | ||
jetty_prefix: /opt | ||
jetty_dir: "#{jetty_prefix}/jetty" | ||
jetty_port: 8080 | ||
|
||
roles: | ||
jetty: | ||
packages: [openjdk-6-jdk] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
description: Jetty HTTP server and servlet container module |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters