devserver 0.0.4 → 0.0.5
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/lib/devserver/cli.rb +20 -0
- data/lib/devserver/command_manager.rb +23 -2
- data/lib/devserver/version.rb +1 -1
- metadata +4 -4
data/lib/devserver/cli.rb
CHANGED
@@ -90,6 +90,21 @@ module Devserver
|
|
90
90
|
end
|
91
91
|
end
|
92
92
|
|
93
|
+
# exits with error if the specified web server gem is not available
|
94
|
+
def gem_error(server)
|
95
|
+
if(!server.command_available?)
|
96
|
+
puts "ERROR: The #{server.server} gem does not appear to be installed"
|
97
|
+
exit(1)
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
# prints out a warning message if the specified web server gem is not available
|
102
|
+
def gem_warning(server)
|
103
|
+
if(!server.command_available?)
|
104
|
+
puts "WARNING: The #{server.server} gem does not appear to be installed"
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
93
108
|
def print_defaults
|
94
109
|
puts "default_settings:\n"
|
95
110
|
config_keys = @@default_settings.keys.map{|k|k.to_s}
|
@@ -121,6 +136,7 @@ module Devserver
|
|
121
136
|
def start
|
122
137
|
rails_error
|
123
138
|
the_server = Devserver::CommandManager.new(options)
|
139
|
+
gem_error(the_server)
|
124
140
|
if(the_server.is_port_open?)
|
125
141
|
puts "Another process is running on Port: #{the_server.port}"
|
126
142
|
puts "Running stop command: #{the_server.command('stop')}"
|
@@ -138,6 +154,7 @@ module Devserver
|
|
138
154
|
def debug
|
139
155
|
rails_error
|
140
156
|
the_server = Devserver::CommandManager.new(options)
|
157
|
+
gem_error(the_server)
|
141
158
|
if(the_server.is_port_open?)
|
142
159
|
puts "Another process is running on Port: #{the_server.port}"
|
143
160
|
puts "Running stop command: #{the_server.command(stop)}"
|
@@ -150,7 +167,9 @@ module Devserver
|
|
150
167
|
method_option :pid_file,:default => @@default_settings[:pid_file], :aliases => "-P", :desc => "Web server pid file"
|
151
168
|
def stop
|
152
169
|
rails_error
|
170
|
+
gem_error(the_server)
|
153
171
|
the_server = Devserver::CommandManager.new(options)
|
172
|
+
gem_error(the_server)
|
154
173
|
the_server.stop_devserver
|
155
174
|
end
|
156
175
|
|
@@ -166,6 +185,7 @@ module Devserver
|
|
166
185
|
def command
|
167
186
|
rails_warning
|
168
187
|
the_server = Devserver::CommandManager.new(options)
|
188
|
+
gem_warning(the_server)
|
169
189
|
if(options[:start])
|
170
190
|
puts "start command: #{the_server.command('start')}"
|
171
191
|
end
|
@@ -11,6 +11,7 @@
|
|
11
11
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
|
+
require 'rubygems'
|
14
15
|
require 'socket'
|
15
16
|
require 'timeout'
|
16
17
|
|
@@ -111,6 +112,22 @@ module Devserver
|
|
111
112
|
raise DevserverError, "Unrecognized mode: #{mode}"
|
112
113
|
end
|
113
114
|
end
|
115
|
+
|
116
|
+
# returns true/false if the gem corresponding to self.server is installed
|
117
|
+
#
|
118
|
+
# @return [Boolean] whether the gem is installed or not
|
119
|
+
def command_available?
|
120
|
+
case self.server
|
121
|
+
when 'passenger'
|
122
|
+
Gem.available?('passenger')
|
123
|
+
when 'thin'
|
124
|
+
Gem.available?('thin')
|
125
|
+
when 'mongrel'
|
126
|
+
Gem.available?('mongrel')
|
127
|
+
else
|
128
|
+
raise DevserverError, "Unrecognized web server: #{self.server}"
|
129
|
+
end
|
130
|
+
end
|
114
131
|
|
115
132
|
# check to see if anything is still running on @port
|
116
133
|
#
|
@@ -132,11 +149,15 @@ module Devserver
|
|
132
149
|
end
|
133
150
|
|
134
151
|
def start_devserver(mode = self.mode)
|
135
|
-
|
152
|
+
if(self.command_available?)
|
153
|
+
system("#{self.start_command(mode)}")
|
154
|
+
end
|
136
155
|
end
|
137
156
|
|
138
157
|
def stop_devserver
|
139
|
-
|
158
|
+
if(self.command_available?)
|
159
|
+
system("#{self.stop_command}")
|
160
|
+
end
|
140
161
|
end
|
141
162
|
|
142
163
|
end
|
data/lib/devserver/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devserver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 21
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 5
|
10
|
+
version: 0.0.5
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Jason Adam Young
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-01-
|
18
|
+
date: 2011-01-16 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|