rv 2.99 → 2.991

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.
Files changed (4) hide show
  1. data/CHANGELOG +1 -1
  2. data/README +24 -13
  3. data/lib/rv.rb +6 -5
  4. metadata +2 -2
data/CHANGELOG CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- v2.99. Gem'd; RDoc documentation; automated setup scripts; cluster support. Incompatible changes. Pre-release.
2
+ v2.991. Gem'd; RDoc documentation; automated setup scripts; cluster support. Incompatible changes. Pre-release.
3
3
 
4
4
  v2. Mongrel static directory handler.
5
5
 
data/README CHANGED
@@ -11,10 +11,12 @@ Copyright 2007 Cloudburst, LLC. See the included LICENSE file.
11
11
 
12
12
  * cluster support
13
13
  * custom database configuration
14
- * automated setup tasks
14
+ * interactive setup tasks
15
15
 
16
16
  Linux is required. Ubuntu is known to work; Gentoo should work; others should work with minor or no changes.
17
17
 
18
+ = Usage
19
+
18
20
  == Installation
19
21
 
20
22
  First, run:
@@ -35,10 +37,12 @@ On Gentoo, run:
35
37
  Each Camping app should live in its own directory. Traverse to this directory and run:
36
38
  sudo rv setup
37
39
 
38
- It will now start at boot. You can start it manually (along with your other Rv apps) by running:
40
+ The app will now start at boot. You can start it manually (along with your other Rv apps) by running:
39
41
  sudo /etc/init.d/rv start
40
-
41
- The script also responds to <tt>status</tt>, <tt>restart</tt>, and <tt>stop</tt>.
42
+
43
+ The script also responds to <tt>status</tt>, <tt>restart</tt>, and <tt>stop</tt>. You can adjust the app-specific configuration later by rerunning <tt>sudo rv setup</tt> or by editing <tt>/etc/rv/your_app.yml</tt>.
44
+
45
+ = Extras
42
46
 
43
47
  == Troubleshooting
44
48
 
@@ -66,17 +70,24 @@ If you're using Apache 2.2, here's how to configure it to see your Camping proxy
66
70
 
67
71
  If you configured a cluster, use a <tt>Proxy balancer</tt> instead:
68
72
 
69
- <Proxy balancer://myapp_custer>
70
- BalancerMember http://127.0.0.1:4000
71
- BalancerMember http://127.0.0.1:4001
72
- BalancerMember http://127.0.0.1:4002
73
- # etc.
74
- </Proxy>
73
+ <VirtualHost *:80>
74
+ ServerName myapp.example.com
75
75
 
76
- and then configure your <tt>ProxyPass</tt> to point to the balancer:
76
+ <Proxy balancer://myapp_custer>
77
+ BalancerMember http://127.0.0.1:4000
78
+ BalancerMember http://127.0.0.1:4001
79
+ BalancerMember http://127.0.0.1:4002
80
+ # etc.
81
+ </Proxy>
77
82
 
78
- ProxyPass / balancer://myapp_custer/
79
- ProxyPassReverse / balancer://myapp_custer/
83
+ ProxyPass / balancer://myapp_custer/
84
+ ProxyPassReverse / balancer://myapp_custer/
85
+ ProxyPreserveHost On
86
+
87
+ #Fix for Apache bug 39499
88
+ SetEnv force-proxy-request-1.0 1
89
+ SetEnv proxy-nokeepalive 1
90
+ </VirtualHost>
80
91
 
81
92
  Do not use the line <tt>ProxyRequests Off</tt>.
82
93
 
data/lib/rv.rb CHANGED
@@ -50,6 +50,7 @@ class Rv
50
50
  'ruby' => '/usr/bin/env ruby',
51
51
  'conf_dir' => '/etc/rv',
52
52
  'log' => '/var/log/rv.log',
53
+ 'harness' => 'rv_harness.rb',
53
54
  'null_stream' => '< /dev/null > /dev/null 2>&1',
54
55
  'log_stream' => '< /dev/null >> #{LOG} 2>&1',
55
56
  'max_tries' => 10
@@ -175,15 +176,15 @@ class Rv
175
176
  this_dir = `pwd`.chomp
176
177
  app_name = this_dir.split("/").last
177
178
  harness_source = "#{File.dirname(__FILE__)}/rv_harness.rb"
178
- harness_target = "#{this_dir}/rv_harness.rb"
179
+ harness_target = "#{this_dir}/#{options['harness']}"
179
180
 
180
181
  if !File.exist?(harness_target) or
181
182
  (File.open(harness_target).readlines[2] != File.open(harness_source).readlines[2] and
182
- agree("rv_harness.rb is out-of-date; overwrite? "))
183
- puts "Installing rv_harness.rb file."
183
+ agree("#{options['harness']} is out-of-date; overwrite? "))
184
+ puts "Installing #{options['harness']} file."
184
185
  File.copy harness_source, harness_target
185
186
  else
186
- puts "rv_harness.rb not changed."
187
+ puts "#{options['harness']} not changed."
187
188
  end
188
189
 
189
190
  defaults = {
@@ -233,7 +234,7 @@ class Rv
233
234
  exit_with "Couldn't write to '#{options['conf_dir']}'. Please rerun with 'sudo'."
234
235
  end
235
236
 
236
- exit_with "All done. Please double-check the database configuration in 'rv_harness.rb';\nthen run 'sudo /etc/init.d/rv start'."
237
+ exit_with "All done. Please double-check the database configuration in '#{options['harness']}';\nthen run 'sudo /etc/init.d/rv start'."
237
238
  end
238
239
 
239
240
  # Installs the 'rv' executable into /etc/init.d.
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.4
3
3
  specification_version: 1
4
4
  name: rv
5
5
  version: !ruby/object:Gem::Version
6
- version: "2.99"
7
- date: 2007-08-06 00:00:00 -04:00
6
+ version: "2.991"
7
+ date: 2007-08-07 00:00:00 -04:00
8
8
  summary: A little init.d system for running Camping apps.
9
9
  require_paths:
10
10
  - lib