runit-man 1.8.4 → 1.9.0
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/runit-man/app.rb +17 -0
- data/lib/runit-man/runner.rb +3 -0
- data/lib/runit-man/service_info.rb +1 -1
- data/lib/runit-man/service_status.rb +1 -0
- metadata +4 -4
data/lib/runit-man/app.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'base64'
|
1
2
|
require 'ftools'
|
2
3
|
require 'json'
|
3
4
|
require 'erubis'
|
@@ -160,10 +161,26 @@ class RunitMan < Sinatra::Base
|
|
160
161
|
files_to_view << File.expand_path(file_location, '/')
|
161
162
|
end
|
162
163
|
|
164
|
+
def add_user(name, password)
|
165
|
+
allowed_users[name] = password
|
166
|
+
end
|
167
|
+
|
163
168
|
def files_to_view
|
164
169
|
@files_to_view ||= []
|
165
170
|
end
|
166
171
|
|
172
|
+
def allowed_users
|
173
|
+
@allowed_users ||= {}
|
174
|
+
end
|
175
|
+
|
176
|
+
def prepare_to_run
|
177
|
+
unless allowed_users.empty?
|
178
|
+
use Rack::Auth::Basic do |username, password|
|
179
|
+
allowed_users.include?(username) && allowed_users[username] == password
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
167
184
|
private
|
168
185
|
def create_run_script(dir)
|
169
186
|
script_name = File.join(dir, 'run')
|
data/lib/runit-man/runner.rb
CHANGED
@@ -14,6 +14,7 @@ OptionParser.new { |op|
|
|
14
14
|
op.on('-f all_services_directory (/etc/sv by default)') { |val| RunitMan.set :all_services_directory, val }
|
15
15
|
op.separator 'View options:'
|
16
16
|
op.on('-v file_location', 'Enables view of specified file through runit-man') { |val| RunitMan.enable_view_of(val) }
|
17
|
+
op.on('-u user:password', 'Requires user name with given password to auth') { |val| RunitMan.add_user(*(val.split(':', 2))) }
|
17
18
|
op.separator 'Configuration options:'
|
18
19
|
op.on_tail('-r', '--register', 'Register as runit service') do
|
19
20
|
RunitMan.register_as_runit_service
|
@@ -21,5 +22,7 @@ OptionParser.new { |op|
|
|
21
22
|
end
|
22
23
|
}.parse!(ARGV.dup)
|
23
24
|
|
25
|
+
RunitMan.prepare_to_run
|
26
|
+
|
24
27
|
RunitMan.run!
|
25
28
|
|
metadata
CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease: false
|
5
5
|
segments:
|
6
6
|
- 1
|
7
|
-
-
|
8
|
-
-
|
9
|
-
version: 1.
|
7
|
+
- 9
|
8
|
+
- 0
|
9
|
+
version: 1.9.0
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Akzhan Abdulin
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-07-19 00:00:00 +04:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|