sml-rubber 0.9.3 → 0.9.4
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/VERSION +1 -1
- data/generators/vulcanize/templates/passenger/config/rubber/deploy-passenger.rb +36 -11
- data/generators/vulcanize/templates/passenger/config/rubber/role/web/passenger.conf +2 -2
- data/generators/vulcanize/templates/passenger/config/rubber/role/web/vhost.conf +27 -0
- data/generators/vulcanize/templates/passenger/config/rubber/rubber-passenger.yml +1 -1
- data/generators/vulcanize/templates/passenger/templates.yml +1 -1
- data/lib/rubber/recipes/rubber/utils.rb +12 -3
- metadata +5 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.9.
|
1
|
+
0.9.4
|
@@ -5,23 +5,48 @@ namespace :rubber do
|
|
5
5
|
|
6
6
|
rubber.allow_optional_tasks(self)
|
7
7
|
|
8
|
-
after "rubber:
|
8
|
+
after "rubber:install_gems", "rubber:passenger:custom_install"
|
9
9
|
|
10
10
|
task :custom_install, :roles => :web do
|
11
11
|
rubber.sudo_script 'install_passenger', <<-ENDSCRIPT
|
12
|
-
TMPDIR=`mktemp -d` || exit 1
|
13
|
-
cd $TMPDIR
|
14
|
-
# download and install current HEAD of passenger
|
15
|
-
wget -q --output-document=passenger.tgz http://github.com/FooBarWidget/passenger/tarball/master
|
16
|
-
tar -xvf passenger.tgz --strip-components 1
|
17
|
-
rake package:gem && gem install pkg/*gem --no-rdoc --no-ri
|
18
12
|
echo -en "\n\n\n\n" | passenger-install-apache2-module
|
19
|
-
wget -q http://rubyforge.org/frs/download.php/
|
20
|
-
dpkg -i ruby-enterprise_1.8.6-
|
21
|
-
#
|
22
|
-
a2enmod rewrite
|
13
|
+
wget -q http://rubyforge.org/frs/download.php/58679/ruby-enterprise_1.8.6-20090610_i386.deb
|
14
|
+
dpkg -i ruby-enterprise_1.8.6-20090610_i386.deb
|
15
|
+
# disable ubuntu default site
|
23
16
|
a2dissite default
|
24
17
|
ENDSCRIPT
|
25
18
|
end
|
19
|
+
|
20
|
+
# serial_task can only be called after roles defined - not normally a problem, but
|
21
|
+
# rubber auto-roles don't get defined till after all tasks are defined
|
22
|
+
on :load do
|
23
|
+
rubber.serial_task self, :serial_restart, :roles => :web do
|
24
|
+
run "/etc/init.d/apache2 restart"
|
25
|
+
end
|
26
|
+
rubber.serial_task self, :serial_reload, :roles => :web do
|
27
|
+
run "if ! ps ax | grep -v grep | grep -c apache2 &> /dev/null; then /etc/init.d/apache2 start; else /etc/init.d/apache2 reload; fi"
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
desc "Stops the apache web server"
|
32
|
+
task :stop, :roles => :web, :on_error => :continue do
|
33
|
+
run "/etc/init.d/apache2 stop"
|
34
|
+
end
|
35
|
+
|
36
|
+
desc "Starts the apache web server"
|
37
|
+
task :start, :roles => :web do
|
38
|
+
run "/etc/init.d/apache2 start"
|
39
|
+
end
|
40
|
+
|
41
|
+
desc "Restarts the apache web server"
|
42
|
+
task :restart, :roles => :web do
|
43
|
+
serial_restart
|
44
|
+
end
|
45
|
+
|
46
|
+
desc "Reloads the apache web server"
|
47
|
+
task :reload, :roles => :web do
|
48
|
+
serial_reload
|
49
|
+
end
|
50
|
+
|
26
51
|
end
|
27
52
|
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
@path = '/etc/apache2/mods-available/passenger.conf'
|
3
3
|
@post = 'cd /etc/apache2/mods-enabled && ln -fs ../mods-available/passenger.conf && /etc/init.d/apache2 restart'
|
4
4
|
%>
|
5
|
-
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.
|
6
|
-
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.
|
5
|
+
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4/ext/apache2/mod_passenger.so
|
6
|
+
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4
|
7
7
|
PassengerRuby /opt/ruby-enterprise/bin/ruby
|
8
8
|
PassengerUseGlobalQueue on
|
@@ -0,0 +1,27 @@
|
|
1
|
+
<%
|
2
|
+
@path = "/etc/apache2/sites-available/#{rubber_env.app_name}"
|
3
|
+
@post = "a2enmod rewrite && a2ensite #{rubber_env.app_name} && /etc/init.d/apache2 reload"
|
4
|
+
%>
|
5
|
+
<VirtualHost *:80>
|
6
|
+
ServerName <%= rubber_env.domain %>
|
7
|
+
ServerAlias <%= rubber_env.web_aliases.join(" ") %>
|
8
|
+
DocumentRoot <%= RUBBER_ROOT + "/public" %>
|
9
|
+
|
10
|
+
ErrorDocument 404 /404.html
|
11
|
+
ErrorDocument 500 /500.html
|
12
|
+
|
13
|
+
SetEnvIf User-Agent "^(.*MSIE.*)|(.*AppleWebKit.*)$" nokeepalive
|
14
|
+
|
15
|
+
RailsEnv <%= RUBBER_ENV %>
|
16
|
+
RailsAllowModRewrite on
|
17
|
+
|
18
|
+
RewriteEngine On
|
19
|
+
RewriteCond %{HTTP_HOST} ^<%= rubber_env.domain %>$
|
20
|
+
RewriteRule ^(.*)$ http://www.<%= rubber_env.domain %>$1 [R,L]
|
21
|
+
|
22
|
+
# Include <%= RUBBER_ROOT + "/public" %>/config/apache/rewrites.conf
|
23
|
+
|
24
|
+
RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f
|
25
|
+
RewriteCond %{SCRIPT_FILENAME} !maintenance.html
|
26
|
+
RewriteRule ^.*$ /system/maintenance.html [L]
|
27
|
+
</VirtualHost>
|
@@ -1 +1 @@
|
|
1
|
-
description: Phusion Passenger module
|
1
|
+
description: Phusion Passenger module (Apache2)
|
@@ -15,6 +15,15 @@ namespace :rubber do
|
|
15
15
|
instance_alias = ENV['ALIAS'] = rubber.get_env("ALIAS", "Hostname to use for staging instance", true, RUBBER_ENV)
|
16
16
|
default_roles = rubber_cfg.environment.bind().staging_roles || "*"
|
17
17
|
roles = ENV['ROLES'] = rubber.get_env("ROLES", "Roles to use for staging instance", true, default_roles)
|
18
|
+
|
19
|
+
# some bootstraps update code (bootstrap_db) but if you don't have that role, need to do it here
|
20
|
+
# Since release directory variable gets reused by cap, we have to just do the symlink here - doing
|
21
|
+
# a update again will fail
|
22
|
+
set :rubber_code_was_updated, false
|
23
|
+
after "deploy:update_code" do
|
24
|
+
set :rubber_code_was_updated, true
|
25
|
+
end
|
26
|
+
|
18
27
|
if rubber_cfg.instance[instance_alias]
|
19
28
|
logger.info "Instance already exists, skipping to bootstrap"
|
20
29
|
else
|
@@ -23,9 +32,9 @@ namespace :rubber do
|
|
23
32
|
rubber.bootstrap
|
24
33
|
# stop everything in case we have a bundled instance with monit, etc starting at boot
|
25
34
|
deploy.stop rescue nil
|
26
|
-
|
27
|
-
|
28
|
-
|
35
|
+
if ! rubber_code_was_updated
|
36
|
+
deploy.update_code
|
37
|
+
end
|
29
38
|
deploy.symlink
|
30
39
|
deploy.migrate
|
31
40
|
deploy.start
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sml-rubber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Conway
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-07
|
12
|
+
date: 2009-08-07 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -177,6 +177,7 @@ files:
|
|
177
177
|
- generators/vulcanize/templates/nginx/templates.yml
|
178
178
|
- generators/vulcanize/templates/passenger/config/rubber/deploy-passenger.rb
|
179
179
|
- generators/vulcanize/templates/passenger/config/rubber/role/web/passenger.conf
|
180
|
+
- generators/vulcanize/templates/passenger/config/rubber/role/web/vhost.conf
|
180
181
|
- generators/vulcanize/templates/passenger/config/rubber/rubber-passenger.yml
|
181
182
|
- generators/vulcanize/templates/passenger/templates.yml
|
182
183
|
- generators/vulcanize/templates/sphinx/config/rubber/common/sphinx.yml
|
@@ -214,6 +215,7 @@ files:
|
|
214
215
|
- lib/rubber/util.rb
|
215
216
|
has_rdoc: false
|
216
217
|
homepage: http://github.com/wr0ngway/rubber
|
218
|
+
licenses:
|
217
219
|
post_install_message:
|
218
220
|
rdoc_options:
|
219
221
|
- --charset=UTF-8
|
@@ -234,7 +236,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
234
236
|
requirements: []
|
235
237
|
|
236
238
|
rubyforge_project: rubber
|
237
|
-
rubygems_version: 1.
|
239
|
+
rubygems_version: 1.3.5
|
238
240
|
signing_key:
|
239
241
|
specification_version: 3
|
240
242
|
summary: A capistrano plugin for managing multi-instance deployments to the cloud (ec2)
|