mongrel_config 0.2.1 → 0.3

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 (79) hide show
  1. data/Rakefile +3 -4
  2. data/doc/rdoc/classes/ConfigTool.html +174 -0
  3. data/doc/rdoc/classes/ConfigTool.src/M000001.html +33 -0
  4. data/doc/rdoc/classes/ConfigTool.src/M000002.html +28 -0
  5. data/doc/rdoc/classes/ConfigTool.src/M000003.html +45 -0
  6. data/doc/rdoc/classes/Configure/Controllers/ClearLogs.html +137 -0
  7. data/doc/rdoc/classes/Configure/Controllers/ClearLogs.src/M000043.html +21 -0
  8. data/doc/rdoc/classes/Configure/Controllers/Delete.html +137 -0
  9. data/doc/rdoc/classes/Configure/Controllers/Delete.src/M000036.html +20 -0
  10. data/doc/rdoc/classes/Configure/Controllers/Index.html +156 -0
  11. data/doc/rdoc/classes/Configure/Controllers/Index.src/M000027.html +18 -0
  12. data/doc/rdoc/classes/Configure/Controllers/Index.src/M000028.html +19 -0
  13. data/doc/rdoc/classes/Configure/Controllers/Info.html +137 -0
  14. data/doc/rdoc/classes/Configure/Controllers/Info.src/M000035.html +19 -0
  15. data/doc/rdoc/classes/Configure/Controllers/Install.html +182 -0
  16. data/doc/rdoc/classes/Configure/Controllers/Install.src/M000039.html +18 -0
  17. data/doc/rdoc/classes/Configure/Controllers/Install.src/M000040.html +43 -0
  18. data/doc/rdoc/classes/Configure/Controllers/Install.src/M000041.html +18 -0
  19. data/doc/rdoc/classes/Configure/Controllers/Install.src/M000042.html +18 -0
  20. data/doc/rdoc/classes/Configure/Controllers/Kill.html +137 -0
  21. data/doc/rdoc/classes/Configure/Controllers/Kill.src/M000029.html +32 -0
  22. data/doc/rdoc/classes/Configure/Controllers/Logs.html +162 -0
  23. data/doc/rdoc/classes/Configure/Controllers/Logs.src/M000037.html +19 -0
  24. data/doc/rdoc/classes/Configure/Controllers/Logs.src/M000038.html +18 -0
  25. data/doc/rdoc/classes/Configure/Controllers/Start.html +171 -0
  26. data/doc/rdoc/classes/Configure/Controllers/Start.src/M000032.html +18 -0
  27. data/doc/rdoc/classes/Configure/Controllers/Start.src/M000033.html +19 -0
  28. data/doc/rdoc/classes/Configure/Controllers/Start.src/M000034.html +27 -0
  29. data/doc/rdoc/classes/Configure/Controllers/Stop.html +156 -0
  30. data/doc/rdoc/classes/Configure/Controllers/Stop.src/M000030.html +18 -0
  31. data/doc/rdoc/classes/Configure/Controllers/Stop.src/M000031.html +26 -0
  32. data/doc/rdoc/classes/Configure/Controllers.html +123 -0
  33. data/doc/rdoc/classes/Configure/Views.html +360 -0
  34. data/doc/rdoc/classes/Configure/Views.src/M000011.html +24 -0
  35. data/doc/rdoc/classes/Configure/Views.src/M000012.html +25 -0
  36. data/doc/rdoc/classes/Configure/Views.src/M000013.html +26 -0
  37. data/doc/rdoc/classes/Configure/Views.src/M000014.html +20 -0
  38. data/doc/rdoc/classes/Configure/Views.src/M000015.html +31 -0
  39. data/doc/rdoc/classes/Configure/Views.src/M000016.html +27 -0
  40. data/doc/rdoc/classes/Configure/Views.src/M000017.html +32 -0
  41. data/doc/rdoc/classes/Configure/Views.src/M000018.html +18 -0
  42. data/doc/rdoc/classes/Configure/Views.src/M000019.html +18 -0
  43. data/doc/rdoc/classes/Configure/Views.src/M000020.html +29 -0
  44. data/doc/rdoc/classes/Configure/Views.src/M000021.html +42 -0
  45. data/doc/rdoc/classes/Configure/Views.src/M000022.html +34 -0
  46. data/doc/rdoc/classes/Configure/Views.src/M000023.html +25 -0
  47. data/doc/rdoc/classes/Configure/Views.src/M000024.html +35 -0
  48. data/doc/rdoc/classes/Configure/Views.src/M000025.html +23 -0
  49. data/doc/rdoc/classes/Configure/Views.src/M000026.html +20 -0
  50. data/doc/rdoc/classes/Configure.html +112 -0
  51. data/doc/rdoc/classes/W32Support.html +258 -0
  52. data/doc/rdoc/classes/W32Support.src/M000004.html +18 -0
  53. data/doc/rdoc/classes/W32Support.src/M000005.html +18 -0
  54. data/doc/rdoc/classes/W32Support.src/M000006.html +33 -0
  55. data/doc/rdoc/classes/W32Support.src/M000007.html +20 -0
  56. data/doc/rdoc/classes/W32Support.src/M000008.html +20 -0
  57. data/doc/rdoc/classes/W32Support.src/M000009.html +18 -0
  58. data/doc/rdoc/classes/W32Support.src/M000010.html +28 -0
  59. data/doc/rdoc/created.rid +1 -0
  60. data/doc/rdoc/files/COPYING.html +756 -0
  61. data/doc/rdoc/files/LICENSE.html +756 -0
  62. data/doc/rdoc/files/README.html +110 -0
  63. data/doc/rdoc/files/lib/mongrel_config/app_rb.html +110 -0
  64. data/doc/rdoc/files/lib/mongrel_config/init_rb.html +112 -0
  65. data/doc/rdoc/files/lib/mongrel_config/win32_app_rb.html +113 -0
  66. data/doc/rdoc/files/lib/mongrel_config/win32_rb.html +108 -0
  67. data/doc/rdoc/fr_class_index.html +40 -0
  68. data/doc/rdoc/fr_file_index.html +33 -0
  69. data/doc/rdoc/fr_method_index.html +69 -0
  70. data/doc/rdoc/index.html +24 -0
  71. data/doc/rdoc/rdoc-style.css +208 -0
  72. data/lib/mongrel_config/init.rb +32 -15
  73. data/lib/mongrel_config/win32.rb +85 -0
  74. data/lib/mongrel_config/win32_app.rb +251 -0
  75. data/resources/index_win32.html +68 -0
  76. data/resources/style.css +6 -1
  77. data/test/test_config.rb +48 -2
  78. data/tools/rakehelp.rb +2 -1
  79. metadata +95 -4
@@ -0,0 +1,251 @@
1
+ require 'erb'
2
+ require 'camping'
3
+ require 'mongrel/camping'
4
+ require 'yaml'
5
+ require 'thread'
6
+
7
+ Camping.goes :Configure
8
+
9
+ require 'mongrel_config/win32'
10
+
11
+ $service_group = ThreadGroup.new
12
+ $service_logs = ""
13
+
14
+ module Configure
15
+ module Controllers
16
+ class Index < R '/'
17
+ def get
18
+ @services = W32Support.list
19
+ render :list
20
+ end
21
+ end
22
+
23
+ class Info < R '/info/(\w+)'
24
+ def get(name)
25
+ @services = W32Support.list.select {|s| s.service_name == name }
26
+ render :info
27
+ end
28
+ end
29
+
30
+ class Start < R '/start/(\w+)'
31
+ def get(service)
32
+ runner = Thread.new do
33
+ W32Support.start(service) do |status|
34
+ $service_logs << "Starting #{service}: #{status}\n"
35
+ sleep 1
36
+ end
37
+ end
38
+
39
+ $service_group.add(runner)
40
+
41
+ redirect Index
42
+ end
43
+ end
44
+
45
+ class Stop < R '/stop/(\w+)'
46
+ def get(service)
47
+ runner = Thread.new do
48
+ W32Support.stop(service) do |status|
49
+ $service_logs << "Starting #{service}: #{status}\n"
50
+ sleep 1
51
+ end
52
+ end
53
+
54
+ $service_group.add(runner)
55
+ redirect Index
56
+ end
57
+ end
58
+
59
+ # eventually this will also let you see a particular service's logs
60
+ class Logs < R '/logs'
61
+ def get
62
+ render :service_logs
63
+ end
64
+ end
65
+
66
+ class ClearLogs < R '/clear_logs'
67
+ def get
68
+ $service_logs = ""
69
+ $service_logs << "#{Time.now}: CLEARED"
70
+
71
+ redirect Logs
72
+ end
73
+ end
74
+
75
+ class Install < R '/install'
76
+ def get
77
+ render :install_form
78
+ end
79
+
80
+ def post
81
+ options = []
82
+ if bad?(input.service_name) or bad?(input.root) or bad?(input.environment) or bad?(input.address) or bad?(input.port)
83
+ @result = "ERROR: You must fill out all mandatory (*) fields."
84
+ render :install_result
85
+ else
86
+ options << ["-n", input.service_name]
87
+ options << ["-r", '"' + input.root + '"']
88
+ options << ["-e", input.environment]
89
+ options << ["-b", input.address]
90
+ options << ["-p", input.port]
91
+ options << ["-d", input.display_name] if good? input.display_name
92
+ options << ["-m", '"' + input.mime + '"'] if good? input.mime
93
+ options << ["-P", input.num_procs] if good? input.num_procs
94
+ options << ["-t", input.timeout] if good? input.timeout
95
+ options << ["-c", input.cpu] if good? input.cpu
96
+
97
+ begin
98
+ @result = `ruby #$mongrel_rails_service install #{options.join(' ')}`
99
+ $service_logs << @result
100
+ rescue
101
+ @result = "Failed to start #{input.service_name}: #$!"
102
+ $service_logs << @result
103
+ end
104
+
105
+ render :install_result
106
+ end
107
+ end
108
+
109
+ def good?(field)
110
+ field and not field.strip.empty?
111
+ end
112
+
113
+ def bad?(field)
114
+ not good? field
115
+ end
116
+ end
117
+
118
+
119
+ class Delete < R '/delete/(\w+)'
120
+ def get(name)
121
+ W32Support.delete(name)
122
+ $service_logs << "Deleted #{name}\n"
123
+ redirect Index
124
+ end
125
+ end
126
+ end
127
+
128
+
129
+ module Views
130
+ def layout
131
+ links = [
132
+ ["/config", "Status"],
133
+ ["/config/install", "Install"],
134
+ ["/config/logs", "Logs"]
135
+ ]
136
+ body_content = yield
137
+ currently_running = _running_procs
138
+
139
+ open(GemPlugin::Manager.instance.resource("mongrel_config", "/index_win32.html")) do |f|
140
+ template = ERB.new(f.read)
141
+ self << template.result(binding)
142
+ end
143
+ end
144
+
145
+
146
+ def list
147
+ div :id=>"viewport" do
148
+ table do
149
+ tr { th { "Service"}; th { "Status"}; th { "Control" }; th { "Delete" } }
150
+ @services.each do |s|
151
+ status = W32Support.status(s.service_name)
152
+ tr {
153
+ td { a(s.service_name, :href => "/info/#{s.service_name}") }
154
+ td { status.capitalize }
155
+ td {
156
+ if status =~ /stopped/
157
+ a("start",:href => "/start/#{s.service_name}")
158
+ elsif status =~ /running/
159
+ a("stop",:href => "/stop/#{s.service_name}")
160
+ else
161
+ b { "in progress" }
162
+ end
163
+ }
164
+ td {
165
+ a("delete!",:href => "/delete/#{s.service_name}",
166
+ :onclick=>"return confirm('Delete #{s.service_name}?') == '1'")
167
+ }
168
+ }
169
+ end
170
+ end
171
+ end
172
+ end
173
+
174
+
175
+ def info
176
+ div :id=>"viewport" do
177
+ @services.each do |s|
178
+
179
+ h2 { "#{s.service_name} service information" }
180
+ table do
181
+ tr { th {"Attribute"}; th {"Value"} }
182
+
183
+ s.each_pair do |memb,obj|
184
+ name = memb.to_s.tr("_"," ").capitalize
185
+ tr {
186
+ td { b { "#{name}: " } }
187
+ td { obj.inspect }
188
+ }
189
+ end
190
+ end
191
+ end
192
+ end
193
+ end
194
+
195
+ def service_logs
196
+ h2 { "Latest Service Activity Logs" }
197
+ a("[clear logs]", :href => "/clear_logs")
198
+
199
+ div :id=>"viewport" do
200
+ pre :style=>"font-size: 10pt;" do
201
+ self << $service_logs
202
+ end
203
+ end
204
+ end
205
+
206
+ def install_form
207
+ div do
208
+ h2 { "Install New Mongrel Service" }
209
+ p { "Items with an * are mandatory. Leave an item blank to not specify it." }
210
+ form :action=>"/install", :method=>"POST" do
211
+ b { "* Service Name: "}; input :name => "service_name"; br
212
+ b { "* Root: "}; input :name => "root"; br
213
+ b { "* Environment: "}; input :name => "environment", :value => "development"; br
214
+ b { "*Address: "}; input :name => "address", :value => "0.0.0.0"; br
215
+ b { "*Port: "}; input :name => "port", :value => "4000", :size => 6; br
216
+ b { "Display Name: "}; input :name => "display_name"; br
217
+ b { "MIME Map File: "}; input :name => "mime"; br
218
+ b { "Number Processor Threads: "}; input :name => "num_procs", :size => 3; br
219
+ b { "Request Timeout: "}; input :name => "timeout", :size => 3; br
220
+ b { "Assigned CPU: " }; input :name => "cpu", :size => 2; br
221
+
222
+ p { input :type=>"submit", :value => "INSTALL" }
223
+ end
224
+ end
225
+ end
226
+
227
+
228
+ def install_result
229
+ div :id=>"viewport" do
230
+ h2 { "Install Results"}
231
+ pre do
232
+ self << @result
233
+ end
234
+ end
235
+ end
236
+
237
+ def _running_procs
238
+ running = []
239
+ W32Support.list.each {|s| running << s.service_name if s.current_state =~ /running/}
240
+ running
241
+ end
242
+
243
+ end
244
+ end
245
+
246
+
247
+
248
+
249
+
250
+
251
+
@@ -0,0 +1,68 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html>
3
+ <head>
4
+ <title>Mongrel Config Tool</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
6
+ <link href="/config/resources/style.css" rel="stylesheet" type="text/css" />
7
+ </head>
8
+ <body>
9
+ <div id="container">
10
+ <div id="top">
11
+ <div id="title">Mongrel Config Tool</div>
12
+ </div>
13
+ <div id="middle">
14
+ <div id="nav">
15
+ <ul>
16
+ <% links.each do |uri,text| %>
17
+ <li><a href="<%= uri %>"><%= text %></a></li>
18
+ <%end%>
19
+ </ul>
20
+ </div>
21
+ <div id="content">
22
+ <div id="side">
23
+ <% if currently_running.length > 0 %>
24
+ <strong>Running Services</strong> <br />
25
+ <br />
26
+ <%= currently_running.join(",") %>
27
+ <% else %>
28
+ <strong>No services running.</strong><br />
29
+ <% end %>
30
+ <br /><br />
31
+ <br />
32
+ <strong>Documentation</strong><br />
33
+ <br />
34
+ <a href="http://mongrel.rubyforge.org">Mongrel Home</a> <br />
35
+ <br />
36
+
37
+ <a href="http://mongrel.rubyforge.org/news.html">News</a><br />
38
+ <br />
39
+
40
+ <a href="http://mongrel.rubyforge.org/docs/started.html">Getting Started</a> <br />
41
+ <br />
42
+
43
+ <a href="http://mongrel.rubyforge.org/docs/win32.html">Win32 Guide</a><br />
44
+ <br />
45
+
46
+ <a href="http://mongrel.rubyforge.org/docs/lighttpd.html">Lighttpd Guide</a><br />
47
+ <br />
48
+
49
+ <a href="http://mongrel.rubyforge.org/rdoc/index.html">Mongrel API</a><br />
50
+ <br />
51
+
52
+ <a href="http://api.rubyonrails.org/">Ruby On Rails API</a><br />
53
+ <br />
54
+
55
+ <br /><br />
56
+ </div>
57
+
58
+ <%= body_content %>
59
+
60
+ </div>
61
+ </div>
62
+ </div>
63
+
64
+ <div id="bottom">&nbsp;</div>
65
+
66
+ <div id="footertext">Copyright 2006 &copy; Zed A. Shaw &nbsp; | &nbsp; Design by Kenneth Barbour.</div>
67
+ </body>
68
+ </html>
data/resources/style.css CHANGED
@@ -6,7 +6,6 @@ body {
6
6
  background-position: top;
7
7
  font-family: "Lucida Grande", Verdana, Halvetica, sans-serif;
8
8
  text-align: center;
9
-
10
9
  }
11
10
  a:hover {
12
11
  color: #990000;
@@ -148,6 +147,12 @@ a {
148
147
  text-decoration: underline;
149
148
  }
150
149
 
150
+ b { font-size: 10pt; }
151
+
152
+ #viewport {
153
+ overflow: auto; width: 400px; height: 320px;
154
+ }
155
+
151
156
  table {
152
157
  border-collapse: collapsed;
153
158
  }
data/test/test_config.rb CHANGED
@@ -1,7 +1,53 @@
1
1
  require 'test/unit'
2
+ require 'mongrel_config/init'
3
+
4
+ class CommandTest < Test::Unit::TestCase
5
+ def setup
6
+ @pmgr = GemPlugin::Manager.instance
7
+ end
8
+
9
+ def test_command_loaded
10
+ assert @pmgr.create("/commands/configtool", "configtool not loaded")
11
+ end
12
+
13
+ end
14
+
15
+
16
+ # these are only run if we're running on windows
17
+ if RUBY_PLATFORM =~ /mswin/
18
+ require 'mongrel_config/win32'
19
+
20
+ class Win32Test < Test::Unit::TestCase
21
+
22
+ def test_list
23
+ svcs = W32Support.list
24
+ assert svcs.length > 0, "No services returned. Make sure you have one mongrel installed."
25
+ end
26
+
27
+ def test_display_name
28
+ svcs = W32Support.list
29
+ svcs.each { |s| W32Support.display(s.service_name) }
30
+ end
31
+
32
+ def test_start_stop
33
+ svcs = W32Support.list
34
+ svcs.each { |s|
35
+ puts "Starting #{W32Support.display(s.service_name)} (might take a while)"
36
+ i = 1
37
+ W32Support.start(s.service_name) do |status|
38
+ print "Starting #{s.service_name}: #{status} (#{i} seconds)\r"
39
+ sleep 1
40
+ i += 1
41
+ end
42
+
43
+ W32Support.stop(s.service_name) do |status|
44
+ puts "Stopping #{s.service_name}: #{status}"
45
+ sleep 1
46
+ end
47
+ }
48
+ end
2
49
 
3
- class EmptyTest < Test::Unit::TestCase
4
- def test_nothing
5
50
  end
6
51
  end
7
52
 
53
+
data/tools/rakehelp.rb CHANGED
@@ -93,7 +93,8 @@ def setup_gem(pkg_name, pkg_version)
93
93
 
94
94
  Rake::GemPackageTask.new(spec) do |p|
95
95
  p.gem_spec = spec
96
- p.need_tar = true
96
+ # win32 chokes on this
97
+ p.need_tar = true if RUBY_PLATFORM !~ /mswin/
97
98
  end
98
99
  end
99
100
 
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: mongrel_config
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.2.1
7
- date: 2006-03-12 00:00:00 -05:00
6
+ version: "0.3"
7
+ date: 2006-03-15 00:00:00 -05:00
8
8
  summary: Mongrel plugin that gives you web based config tool using Camping
9
9
  require_paths:
10
10
  - lib
@@ -32,14 +32,105 @@ files:
32
32
  - LICENSE
33
33
  - README
34
34
  - Rakefile
35
+ - doc/rdoc/classes
36
+ - doc/rdoc/created.rid
37
+ - doc/rdoc/files
38
+ - doc/rdoc/fr_class_index.html
39
+ - doc/rdoc/fr_file_index.html
40
+ - doc/rdoc/fr_method_index.html
41
+ - doc/rdoc/index.html
42
+ - doc/rdoc/rdoc-style.css
43
+ - doc/rdoc/classes/ConfigTool.html
44
+ - doc/rdoc/classes/ConfigTool.src
45
+ - doc/rdoc/classes/Configure
46
+ - doc/rdoc/classes/Configure.html
47
+ - doc/rdoc/classes/W32Support.html
48
+ - doc/rdoc/classes/W32Support.src
49
+ - doc/rdoc/classes/ConfigTool.src/M000001.html
50
+ - doc/rdoc/classes/ConfigTool.src/M000002.html
51
+ - doc/rdoc/classes/ConfigTool.src/M000003.html
52
+ - doc/rdoc/classes/Configure/Controllers
53
+ - doc/rdoc/classes/Configure/Controllers.html
54
+ - doc/rdoc/classes/Configure/Views.html
55
+ - doc/rdoc/classes/Configure/Views.src
56
+ - doc/rdoc/classes/Configure/Controllers/ClearLogs.html
57
+ - doc/rdoc/classes/Configure/Controllers/ClearLogs.src
58
+ - doc/rdoc/classes/Configure/Controllers/Delete.html
59
+ - doc/rdoc/classes/Configure/Controllers/Delete.src
60
+ - doc/rdoc/classes/Configure/Controllers/Index.html
61
+ - doc/rdoc/classes/Configure/Controllers/Index.src
62
+ - doc/rdoc/classes/Configure/Controllers/Info.html
63
+ - doc/rdoc/classes/Configure/Controllers/Info.src
64
+ - doc/rdoc/classes/Configure/Controllers/Install.html
65
+ - doc/rdoc/classes/Configure/Controllers/Install.src
66
+ - doc/rdoc/classes/Configure/Controllers/Kill.html
67
+ - doc/rdoc/classes/Configure/Controllers/Kill.src
68
+ - doc/rdoc/classes/Configure/Controllers/Logs.html
69
+ - doc/rdoc/classes/Configure/Controllers/Logs.src
70
+ - doc/rdoc/classes/Configure/Controllers/Start.html
71
+ - doc/rdoc/classes/Configure/Controllers/Start.src
72
+ - doc/rdoc/classes/Configure/Controllers/Stop.html
73
+ - doc/rdoc/classes/Configure/Controllers/Stop.src
74
+ - doc/rdoc/classes/Configure/Controllers/ClearLogs.src/M000043.html
75
+ - doc/rdoc/classes/Configure/Controllers/Delete.src/M000036.html
76
+ - doc/rdoc/classes/Configure/Controllers/Index.src/M000027.html
77
+ - doc/rdoc/classes/Configure/Controllers/Index.src/M000028.html
78
+ - doc/rdoc/classes/Configure/Controllers/Info.src/M000035.html
79
+ - doc/rdoc/classes/Configure/Controllers/Install.src/M000039.html
80
+ - doc/rdoc/classes/Configure/Controllers/Install.src/M000040.html
81
+ - doc/rdoc/classes/Configure/Controllers/Install.src/M000041.html
82
+ - doc/rdoc/classes/Configure/Controllers/Install.src/M000042.html
83
+ - doc/rdoc/classes/Configure/Controllers/Kill.src/M000029.html
84
+ - doc/rdoc/classes/Configure/Controllers/Logs.src/M000037.html
85
+ - doc/rdoc/classes/Configure/Controllers/Logs.src/M000038.html
86
+ - doc/rdoc/classes/Configure/Controllers/Start.src/M000032.html
87
+ - doc/rdoc/classes/Configure/Controllers/Start.src/M000033.html
88
+ - doc/rdoc/classes/Configure/Controllers/Start.src/M000034.html
89
+ - doc/rdoc/classes/Configure/Controllers/Stop.src/M000030.html
90
+ - doc/rdoc/classes/Configure/Controllers/Stop.src/M000031.html
91
+ - doc/rdoc/classes/Configure/Views.src/M000011.html
92
+ - doc/rdoc/classes/Configure/Views.src/M000012.html
93
+ - doc/rdoc/classes/Configure/Views.src/M000013.html
94
+ - doc/rdoc/classes/Configure/Views.src/M000014.html
95
+ - doc/rdoc/classes/Configure/Views.src/M000015.html
96
+ - doc/rdoc/classes/Configure/Views.src/M000016.html
97
+ - doc/rdoc/classes/Configure/Views.src/M000017.html
98
+ - doc/rdoc/classes/Configure/Views.src/M000018.html
99
+ - doc/rdoc/classes/Configure/Views.src/M000019.html
100
+ - doc/rdoc/classes/Configure/Views.src/M000020.html
101
+ - doc/rdoc/classes/Configure/Views.src/M000021.html
102
+ - doc/rdoc/classes/Configure/Views.src/M000022.html
103
+ - doc/rdoc/classes/Configure/Views.src/M000023.html
104
+ - doc/rdoc/classes/Configure/Views.src/M000024.html
105
+ - doc/rdoc/classes/Configure/Views.src/M000025.html
106
+ - doc/rdoc/classes/Configure/Views.src/M000026.html
107
+ - doc/rdoc/classes/W32Support.src/M000004.html
108
+ - doc/rdoc/classes/W32Support.src/M000005.html
109
+ - doc/rdoc/classes/W32Support.src/M000006.html
110
+ - doc/rdoc/classes/W32Support.src/M000007.html
111
+ - doc/rdoc/classes/W32Support.src/M000008.html
112
+ - doc/rdoc/classes/W32Support.src/M000009.html
113
+ - doc/rdoc/classes/W32Support.src/M000010.html
114
+ - doc/rdoc/files/COPYING.html
115
+ - doc/rdoc/files/lib
116
+ - doc/rdoc/files/LICENSE.html
117
+ - doc/rdoc/files/README.html
118
+ - doc/rdoc/files/lib/mongrel_config
119
+ - doc/rdoc/files/lib/mongrel_config/app_rb.html
120
+ - doc/rdoc/files/lib/mongrel_config/init_rb.html
121
+ - doc/rdoc/files/lib/mongrel_config/win32_app_rb.html
122
+ - doc/rdoc/files/lib/mongrel_config/win32_rb.html
35
123
  - test/test_config.rb
36
124
  - lib/mongrel_config
37
125
  - lib/mongrel_config/app.rb
38
126
  - lib/mongrel_config/init.rb
127
+ - lib/mongrel_config/win32.rb
128
+ - lib/mongrel_config/win32_app.rb
39
129
  - tools/rakehelp.rb
40
130
  - resources/defaults.yaml
41
131
  - resources/images
42
132
  - resources/index.html
133
+ - resources/index_win32.html
43
134
  - resources/style.css
44
135
  - resources/images/0170_bubble.png
45
136
  - resources/images/0171_new_page.png
@@ -68,7 +159,7 @@ dependencies:
68
159
  requirements:
69
160
  - - ">="
70
161
  - !ruby/object:Gem::Version
71
- version: 0.3.10.1
162
+ version: 0.3.11
72
163
  version:
73
164
  - !ruby/object:Gem::Dependency
74
165
  name: gem_plugin
@@ -77,7 +168,7 @@ dependencies:
77
168
  requirements:
78
169
  - - ">="
79
170
  - !ruby/object:Gem::Version
80
- version: "0.2"
171
+ version: 0.2.1
81
172
  version:
82
173
  - !ruby/object:Gem::Dependency
83
174
  name: camping