runit-man 2.4.0a2 → 2.4.0

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -2,5 +2,7 @@
2
2
  *.gem
3
3
  .bundle/
4
4
  .vagrant
5
+ .yardoc/
6
+ doc/
5
7
  Gemfile.lock
6
8
 
@@ -0,0 +1,14 @@
1
+ --markup markdown
2
+ --markup-provider redcarpet
3
+ --charset utf-8
4
+ --no-private
5
+ --readme README.md
6
+ --title "runit-man Documentation"
7
+ -
8
+ README.md
9
+ INSTALL.md
10
+ CHANGELOG.md
11
+ README_ru.md
12
+ LICENSE
13
+ DESCRIPTION
14
+
@@ -1,8 +1,13 @@
1
1
  ## Changes
2
2
 
3
+ ### Version 2.4.0
4
+
5
+ * LogLocationCache completely removed to keep codebase small and readable.
6
+ * Code refactoring to support multiple log file downloads and to avoid errors in case of file absence.
7
+
3
8
  ### Version 2.3.21
4
9
 
5
- * Running using <tt>bundle exec</tt> is fixed.
10
+ * Running using `bundle exec` is fixed.
6
11
  * Initial staging environment added using [http://vagrantup.com/](Vagrant "Vagrant").
7
12
  * Fix internal error when log downloads directory is absent.
8
13
 
@@ -23,8 +28,8 @@
23
28
 
24
29
  ### Version 2.3.8
25
30
 
26
- * Minor update of handling logger log directories (we should remove last character from log directory name if it's equal to ':').
27
- * Enabling of using 'bundle exec rake ...' command.
31
+ * Minor update of handling logger log directories (we should remove last character from log directory name if it equals to ':').
32
+ * Enable of using `bundle exec rake ...` command.
28
33
 
29
34
  ### Version 2.3.7
30
35
 
@@ -41,7 +46,7 @@
41
46
 
42
47
  ### Version 2.3.4
43
48
  * Rack::File used to serve static files in old Sinatra releases (Sinatra 1.3.0 have this functionality built-in). Requires Rack 1.3.0 or higher.
44
- * rainbows configuration now uses sendfile gem if it's available to decrease CPU usage on serving large files.
49
+ * rainbows configuration now uses sendfile gem if its available to decrease CPU usage on serving large files.
45
50
 
46
51
  ### Version 2.3.3
47
52
  * Typo (very old one).
@@ -99,7 +104,7 @@
99
104
  * Support for gzipped logs.
100
105
 
101
106
  ### Version 2.0.2
102
- * Fix log link hint, that's broken from 1.11.x (thanks to verm666).
107
+ * Fix log link hint, thats broken from 1.11.x (thanks to verm666).
103
108
 
104
109
  ### Version 2.0.1
105
110
  * Use Bundler to simplify development tasks.
@@ -216,7 +221,7 @@
216
221
  * runit-man now can show custom count of lines per log.
217
222
 
218
223
  ### Version 1.4.5
219
- * Fix error when ran on machine when it's name cannot be resolved by DNS.
224
+ * Fix error when ran on machine when its name cannot be resolved by DNS.
220
225
  * /services.json added to provide automation API.
221
226
 
222
227
  ### Version 1.4.3
@@ -224,7 +229,7 @@
224
229
  * Script renamed to runit-man without extension.
225
230
 
226
231
  ### Version 1.4.1
227
- * Workaround for rubygems behavior (sometimes it doesn't update binaries).
232
+ * Workaround for rubygems behavior (sometimes it doesnt update binaries).
228
233
 
229
234
  ### Version 1.4
230
235
  * Automated registration with given options.
@@ -254,3 +259,4 @@
254
259
 
255
260
  ### Version 0.1
256
261
  * First working release
262
+
data/Gemfile CHANGED
@@ -7,3 +7,7 @@ group :rainbows do
7
7
  gem "sendfile", :platforms => "mri_18"
8
8
  end
9
9
 
10
+ group :development do
11
+ gem "ripper", :platforms => "ruby_18"
12
+ end
13
+
@@ -0,0 +1,49 @@
1
+ ## Requirements
2
+
3
+ You need ruby 1.8.6 or above and rubygems installed.
4
+
5
+ ## Installation
6
+
7
+ Use following command to install runit-man:
8
+
9
+ ```bash
10
+ gem install runit-man
11
+ ```
12
+
13
+ Take a look at runit-man script options:
14
+
15
+ * -p - Port to listen (4567 by default)
16
+ * -b - IP Address to bind (0.0.0.0 by default)
17
+ * -a - Directory of activated services (/etc/service by default)
18
+ * -f - Directory of all known services (/etc/sv by default)
19
+ * -u - User and password delimited by ':' for HTTP authentication (disabled by default)
20
+ * -r - Register runit-man as runit service (as defined by other options)
21
+ * --rackup='command' - Runs specified command in folder where is runit'man's config.ru located.
22
+
23
+ ### Using thin
24
+
25
+ Usually you need thin gem to run runit-man effectively.
26
+
27
+ ```bash
28
+ gem install thin
29
+ ```
30
+
31
+ ### Using rainbows
32
+
33
+ When You need to handle large files (logs etc.) by runit-man script You need another setup:
34
+
35
+ * Install rainbows gem (it prevents memory consumption).
36
+ * Install sendfile gem if possible (It decreases CPU usage in combination with rainbows).
37
+ * Run runit-man as:
38
+
39
+ ```bash
40
+ runit-man --rackup='rainbows -E production -c rainbows.conf -p $PORT'
41
+ ```
42
+
43
+ Any localization can be done by editing of `./i18n/*.yml` locale files.
44
+ Contributions are welcome.
45
+
46
+ * [runit home page](http://smarden.org/runit/)
47
+ * [runit-man home page](https://github.com/Undev/runit-man)
48
+
49
+ Yours sincerely, Akzhan.
@@ -11,14 +11,20 @@ Server will run by **runit-man** script. Take a note that **runit-man** must hav
11
11
  ## Installation
12
12
 
13
13
  Usually You should install both **runit-man** and **thin** gems to run this tool fine.
14
- `gem install runit-man thin`
14
+
15
+ ```bash
16
+ gem install runit-man thin
17
+ ```
15
18
 
16
19
  Pragmatic approach is to setup runit-man as runit service like this:
17
- `runit-man -p 14500 -r`
18
20
 
19
- This command installs runit-man as runit service (using default folders */etc/sv/* and */etc/service/*).
21
+ ```bash
22
+ runit-man -p 14500 -r
23
+ ```
24
+
25
+ This command installs runit-man as runit service (using default folders `/etc/sv/` and `/etc/service/`).
20
26
 
21
- Look at INSTALL for details.
27
+ Look at {file:INSTALL.md} for details.
22
28
 
23
29
  ### rackup configuration
24
30
 
@@ -31,17 +37,17 @@ This tool can provide additional information or actions through it's Web page.
31
37
 
32
38
  ### View names and content of files that related to concrete service
33
39
 
34
- For each known runit service this tool looks for **./runit-man/files-to-view/** folder.
40
+ For each known runit service this tool looks for `./runit-man/files-to-view/` folder.
35
41
  Every symlink here will be shown as link to view target file content.
36
42
 
37
43
  ### Show links that related to concrete service
38
44
 
39
- For each known runit service this tool looks for **./runit-man/urls-to-view/** folder.
45
+ For each known runit service this tool looks for `./runit-man/urls-to-view/` folder.
40
46
  Every file ended with .url will be shown as link to view target location (location should be written as content of this file).
41
47
 
42
48
  ### Show buttons that send signals to concrete service
43
49
 
44
- For each known runit service this tool looks for **./runit-man/allowed-signals/** folder.
50
+ For each known runit service this tool looks for `./runit-man/allowed-signals/` folder.
45
51
  Each one-letter-named file declares that signal button should be shown in Web UI.
46
52
 
47
53
  Signal letters listed below in REST API section.
@@ -86,10 +92,17 @@ You can read tail of service log using
86
92
  `GET /<service name>/log/<count of tailing lines>.txt`
87
93
 
88
94
  Note that to use this feature You must do logging using
89
- `exec svlogd options log_directory_location`
95
+
96
+ ```bash
97
+ exec svlogd <options> $LOG_DIRECTORY_LOCATION
98
+ ```
90
99
 
91
100
  #### logger
92
101
  Use logger like:
93
- `exec logger -i -t "runit-man" -p local1.info`
94
- and use option -l "logger:/var/log/" where base logs directory shown after period.
102
+
103
+ ```bash
104
+ exec logger -i -t "runit-man" -p local1.info
105
+ ```
106
+
107
+ and use option `-l "logger:/var/log/"` where base logs directory shown after period.
95
108
 
@@ -11,14 +11,19 @@
11
11
  ## Инсталляция
12
12
 
13
13
  Обычно вам нужно поставить гемы **runit-man** и **thin** совместно, чтобы эта утилита работала эффективно.
14
- `gem install runit-man thin`
14
+
15
+ ```bash
16
+ gem install runit-man thin
17
+ ```
15
18
 
16
19
  Прагматично установить runit-man как один из сервисов runit, например, так:
17
- `runit-man -p 14500 -r`
20
+ ```bash
21
+ runit-man -p 14500 -r
22
+ ```
18
23
 
19
- Эта команда создаёт сервис runit-man, как один из обычных активных сервисов runit (используя каталоги */etc/sv/* and */etc/service/* по умолчанию).
24
+ Эта команда создаёт сервис runit-man, как один из обычных активных сервисов runit (используя каталоги `/etc/sv/` and `/etc/service/` по умолчанию).
20
25
 
21
- Подробнее смотрите файл INSTALL.
26
+ Подробнее смотрите файл {file:INSTALL.md}.
22
27
 
23
28
  ### Конфигурирование под Rack
24
29
 
@@ -31,17 +36,17 @@
31
36
 
32
37
  ### Просмотр имён и содержимого файлов, относящихся к конкретному сервису
33
38
 
34
- Для каждого известного сервиса runit эта утилита просматривает каталог **./runit-man/files-to-view/**.
39
+ Для каждого известного сервиса runit эта утилита просматривает каталог `./runit-man/files-to-view/`.
35
40
  Каждый симлинк в этом каталоге будет показан как ссылка на просмотр содержимого целевого файла.
36
41
 
37
42
  ### Показ ссылок, относящихся к конкретному сервису
38
43
 
39
- Для каждого известного сервиса runit эта утилита просматривает каталог **./runit-man/urls-to-view/**.
44
+ Для каждого известного сервиса runit эта утилита просматривает каталог `./runit-man/urls-to-view/`.
40
45
  Каждый файл, имеющий расширение .url, будет показан, как сылка на просмотр целевой локации (которая берётся как содержимое файла).
41
46
 
42
47
  ### Показ кнопок, которые посылают сигналы выбранному процессу
43
48
 
44
- Для каждого известного сервиса runit эта утилита просматривает каталог **./runit-man/allowed-signals/**.
49
+ Для каждого известного сервиса runit эта утилита просматривает каталог `./runit-man/allowed-signals/`.
45
50
  Каждый однобуквенно-именованный файл определяет, что кнопка для сигнала должна появиться в пользовательском интерфейсе.
46
51
 
47
52
  Соответствия между буквами и сигналами перечислены ниже, в секции REST API.
@@ -85,13 +90,19 @@
85
90
  Вы можете читать хвост лога сервиса, используя
86
91
  `GET /<service name>/log/<count of tailing lines>.txt`
87
92
 
88
- Учитывайте, что этот функционал работает, только если Вы логгируете сервис с использованием команды вида
89
- `exec svlogd options log_directory_location`
93
+ Учитывайте, что этот функционал работает, только если Вы логгируете сервис с использованием команды вида
94
+
95
+ ```bash
96
+ exec svlogd <options> $LOG_DIRECTORY_LOCATION
97
+ ```
90
98
 
91
99
  #### logger
92
100
 
93
101
  Если Вы предпочитаете logger, используйте его вот так:
94
- `exec logger -i -t "runit-man" -p local1.info`
95
102
 
96
- При этом нужно использовать опцию -l "logger:/var/log/", где после двоеточия надо указывать базовый каталог логов.
103
+ ```bash
104
+ exec logger -i -t "runit-man" -p local1.info
105
+ ```
106
+
107
+ При этом нужно использовать опцию `-l "logger:/var/log/"`, где после двоеточия надо указывать базовый каталог логов.
97
108
 
data/Rakefile CHANGED
@@ -1,6 +1,15 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  require 'rubygems'
4
+
5
+ begin
6
+ require 'bundler'
7
+ Bundler.setup(:default, :development, :test)
8
+ Bundler::GemHelper.install_tasks
9
+ rescue LoadError
10
+ $stderr.puts "Bundler not available. Install it with: gem install bundler"
11
+ end
12
+
4
13
  $LOAD_PATH.unshift('./lib')
5
14
 
6
15
  require 'runit-man/version'
@@ -23,10 +32,10 @@ rescue LoadError
23
32
  end
24
33
 
25
34
  begin
26
- require 'bundler'
27
- Bundler.setup(:default)
28
- Bundler::GemHelper.install_tasks
35
+ require 'yard'
36
+
37
+ YARD::Rake::YardocTask.new
29
38
  rescue LoadError
30
- $stderr.puts "Bundler not available. Install it with: gem install bundler"
39
+ $stderr.puts "YARD not available. Install it with: gem install yard"
31
40
  end
32
41
 
@@ -1,6 +1,8 @@
1
1
  # Namespace: Information about service
2
2
  module ServiceInfo
3
3
  class << self
4
+ # Actual descendant class used to instantiate service information instances.
5
+ # @return [Class] Actual descendant class.
4
6
  attr_accessor :klass
5
7
  end
6
8
  end
@@ -65,7 +65,7 @@ class ServiceInfo::Logger < ServiceInfo::Base
65
65
  label = "#{Utils.host_name}-#{subdirname}-#{filename}"
66
66
 
67
67
  stats = File.stat(filepath)
68
- stat_times = [stats.ctime.utc, stats.atime.utc, stats.mtime.utc]
68
+ stat_times = [stats.ctime.utc, stats.mtime.utc]
69
69
  min_time, max_time = stat_times.min, stat_times.max
70
70
 
71
71
  r << {
@@ -31,10 +31,16 @@ class ServiceInfo::Svlogd < ServiceInfo::Base
31
31
  next unless File.readable?(path)
32
32
 
33
33
  stats = File.stat(path)
34
- stat_times = [stats.ctime.utc, stats.atime.utc, stats.mtime.utc]
34
+ stat_times = [stats.ctime.utc, stats.mtime.utc]
35
35
  min_time, max_time = stat_times.min, stat_times.max
36
36
 
37
- label = "#{Utils.host_name}-#{self.name}-#{I18n.l(min_time)}-#{I18n.l(max_time)}.log"
37
+ if min_time != max_time
38
+ stat_times = "#{I18n.l(min_time)}-#{I18n.l(max_time)}"
39
+ else
40
+ stat_times = I18n.l(min_time)
41
+ end
42
+
43
+ label = "#{Utils.host_name}-#{self.name}-#{stat_times}.log"
38
44
  label = label.gsub(/[\:\s\,]/, '-').gsub(/[\\\/]/, '.')
39
45
  r << {
40
46
  :name => name,
@@ -1,8 +1,12 @@
1
1
  require 'socket'
2
2
  require 'i18n'
3
3
 
4
+ # Utilities.
4
5
  class Utils
5
6
  class << self
7
+ # Gets local host name.
8
+ # @return [String] Host name.
9
+ # @note Caches host name on first access.
6
10
  def host_name
7
11
  unless @host_name
8
12
  begin
@@ -15,8 +19,11 @@ class Utils
15
19
  @host_name
16
20
  end
17
21
 
22
+ # I18n.t shortcut.
23
+ # @return [String] Translated string.
18
24
  def t(*args)
19
25
  I18n.t(*args)
20
26
  end
21
27
  end
22
28
  end
29
+
@@ -1,4 +1,6 @@
1
+ # runit-man namespace.
1
2
  module RunitMan
2
- VERSION = '2.4.0a2'.freeze
3
+ # runit-man version.
4
+ VERSION = '2.4.0'.freeze
3
5
  end
4
6
 
@@ -13,8 +13,11 @@ spec = Gem::Specification.new do |s|
13
13
  s.requirements << 'none'
14
14
  s.require_path = 'lib'
15
15
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
16
+
16
17
  s.extra_rdoc_files = [
17
- "README.markdown"
18
+ "README.md",
19
+ "INSTALL.md",
20
+ "CHANGELOG.md"
18
21
  ]
19
22
  s.files = `git ls-files`.split("\n")
20
23
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -30,6 +33,8 @@ spec = Gem::Specification.new do |s|
30
33
  s.add_development_dependency 'rr'
31
34
  s.add_development_dependency 'rack-test'
32
35
  s.add_development_dependency 'bundler', ['~> 1.0', '> 1.0.10']
36
+ s.add_development_dependency 'yard', '~> 0.7.5'
37
+ s.add_development_dependency 'redcarpet', '~> 1.17.2'
33
38
  s.description = File.open(File.join(File.dirname(__FILE__), 'DESCRIPTION')).read
34
39
  end
35
40
 
metadata CHANGED
@@ -1,19 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runit-man
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.0a2
5
- prerelease: 5
4
+ version: 2.4.0
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Akzhan Abdulin
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-10 00:00:00.000000000 Z
12
+ date: 2012-04-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: yajl-ruby
16
- requirement: &2158419480 !ruby/object:Gem::Requirement
16
+ requirement: &2153692900 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2158419480
24
+ version_requirements: *2153692900
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: haml
27
- requirement: &2158418760 !ruby/object:Gem::Requirement
27
+ requirement: &2153692360 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '3.0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2158418760
35
+ version_requirements: *2153692360
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: sinatra
38
- requirement: &2158418300 !ruby/object:Gem::Requirement
38
+ requirement: &2153691880 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '1.3'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *2158418300
46
+ version_requirements: *2153691880
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: sinatra-content-for2
49
- requirement: &2158417420 !ruby/object:Gem::Requirement
49
+ requirement: &2153691360 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 0.2.4
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *2158417420
57
+ version_requirements: *2153691360
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: i18n
60
- requirement: &2158416360 !ruby/object:Gem::Requirement
60
+ requirement: &2153690820 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0.5'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *2158416360
68
+ version_requirements: *2153690820
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: file-tail
71
- requirement: &2158414440 !ruby/object:Gem::Requirement
71
+ requirement: &2153690260 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 1.0.7
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *2158414440
79
+ version_requirements: *2153690260
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: rake
82
- requirement: &2158413020 !ruby/object:Gem::Requirement
82
+ requirement: &2153689620 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -90,10 +90,10 @@ dependencies:
90
90
  version: 0.9.0
91
91
  type: :development
92
92
  prerelease: false
93
- version_requirements: *2158413020
93
+ version_requirements: *2153689620
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: rspec-core
96
- requirement: &2158412020 !ruby/object:Gem::Requirement
96
+ requirement: &2153688780 !ruby/object:Gem::Requirement
97
97
  none: false
98
98
  requirements:
99
99
  - - ! '>='
@@ -101,10 +101,10 @@ dependencies:
101
101
  version: '0'
102
102
  type: :development
103
103
  prerelease: false
104
- version_requirements: *2158412020
104
+ version_requirements: *2153688780
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: rspec-expectations
107
- requirement: &2158410660 !ruby/object:Gem::Requirement
107
+ requirement: &2153688140 !ruby/object:Gem::Requirement
108
108
  none: false
109
109
  requirements:
110
110
  - - ! '>='
@@ -112,10 +112,10 @@ dependencies:
112
112
  version: '0'
113
113
  type: :development
114
114
  prerelease: false
115
- version_requirements: *2158410660
115
+ version_requirements: *2153688140
116
116
  - !ruby/object:Gem::Dependency
117
117
  name: rr
118
- requirement: &2158410240 !ruby/object:Gem::Requirement
118
+ requirement: &2153686480 !ruby/object:Gem::Requirement
119
119
  none: false
120
120
  requirements:
121
121
  - - ! '>='
@@ -123,10 +123,10 @@ dependencies:
123
123
  version: '0'
124
124
  type: :development
125
125
  prerelease: false
126
- version_requirements: *2158410240
126
+ version_requirements: *2153686480
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: rack-test
129
- requirement: &2158409720 !ruby/object:Gem::Requirement
129
+ requirement: &2153685940 !ruby/object:Gem::Requirement
130
130
  none: false
131
131
  requirements:
132
132
  - - ! '>='
@@ -134,10 +134,10 @@ dependencies:
134
134
  version: '0'
135
135
  type: :development
136
136
  prerelease: false
137
- version_requirements: *2158409720
137
+ version_requirements: *2153685940
138
138
  - !ruby/object:Gem::Dependency
139
139
  name: bundler
140
- requirement: &2158408740 !ruby/object:Gem::Requirement
140
+ requirement: &2153685060 !ruby/object:Gem::Requirement
141
141
  none: false
142
142
  requirements:
143
143
  - - ~>
@@ -148,7 +148,29 @@ dependencies:
148
148
  version: 1.0.10
149
149
  type: :development
150
150
  prerelease: false
151
- version_requirements: *2158408740
151
+ version_requirements: *2153685060
152
+ - !ruby/object:Gem::Dependency
153
+ name: yard
154
+ requirement: &2153683440 !ruby/object:Gem::Requirement
155
+ none: false
156
+ requirements:
157
+ - - ~>
158
+ - !ruby/object:Gem::Version
159
+ version: 0.7.5
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: *2153683440
163
+ - !ruby/object:Gem::Dependency
164
+ name: redcarpet
165
+ requirement: &2153682560 !ruby/object:Gem::Requirement
166
+ none: false
167
+ requirements:
168
+ - - ~>
169
+ - !ruby/object:Gem::Version
170
+ version: 1.17.2
171
+ type: :development
172
+ prerelease: false
173
+ version_requirements: *2153682560
152
174
  description: ! 'Simple runit (http://smarden.org/runit/) web management tool with
153
175
  i18n.
154
176
 
@@ -164,17 +186,20 @@ executables:
164
186
  - runit-man
165
187
  extensions: []
166
188
  extra_rdoc_files:
167
- - README.markdown
189
+ - README.md
190
+ - INSTALL.md
191
+ - CHANGELOG.md
168
192
  files:
169
193
  - .gitignore
170
194
  - .gitmodules
171
- - CHANGELOG.markdown
195
+ - .yardopts
196
+ - CHANGELOG.md
172
197
  - DESCRIPTION
173
198
  - Gemfile
174
- - INSTALL
199
+ - INSTALL.md
175
200
  - LICENSE
176
- - README.markdown
177
- - README_ru.markdown
201
+ - README.md
202
+ - README_ru.md
178
203
  - Rakefile
179
204
  - Vagrantfile
180
205
  - bin/runit-man
@@ -240,13 +265,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
240
265
  version: '0'
241
266
  segments:
242
267
  - 0
243
- hash: -1381096489065286937
268
+ hash: -2528648994926986438
244
269
  required_rubygems_version: !ruby/object:Gem::Requirement
245
270
  none: false
246
271
  requirements:
247
- - - ! '>'
272
+ - - ! '>='
248
273
  - !ruby/object:Gem::Version
249
- version: 1.3.1
274
+ version: '0'
275
+ segments:
276
+ - 0
277
+ hash: -2528648994926986438
250
278
  requirements:
251
279
  - none
252
280
  rubyforge_project:
@@ -257,3 +285,4 @@ summary: Runit web management tool.
257
285
  test_files:
258
286
  - spec/functional/runit-man_spec.rb
259
287
  - spec/spec_helper.rb
288
+ has_rdoc:
data/INSTALL DELETED
@@ -1,33 +0,0 @@
1
- You need ruby 1.8.6 or above and rubygems installed.
2
-
3
- Use following command to install runit-man:
4
- gem install runit-man
5
-
6
- Take a look at runit-man script options:
7
-
8
- -p - Port to listen (4567 by default)
9
- -b - IP Address to bind (0.0.0.0 by default)
10
- -a - Directory of activated services (/etc/service by default)
11
- -f - Directory of all known services (/etc/sv by default)
12
- -u - User and password delimited by ':' for HTTP authentication (disabled by default)
13
- -r - Register runit-man as runit service (as defined by other options)
14
- --rackup='command' - Runs specified command in folder where is runit'man's config.ru located.
15
-
16
- Usually you need thin gem to run runit-man effectively.
17
- gem install thin
18
-
19
- When You need to handle large files (logs etc.) by runit-man script You need another setup:
20
- * Install rainbows gem (it prevents memory consumption).
21
- * Upgrade rack gem to version 1.3 or higher and install sendfile gem if possible (It decreases CPU usage in combination with rainbows).
22
- * Run runit-man as:
23
-
24
- runit-man --rackup='rainbows -E production -c rainbows.conf -p <PORT>'
25
-
26
- Any localization can be done by editing of ./i18n/*.yml locale files.
27
- Contributions are welcome.
28
-
29
- runit home page: http://smarden.org/runit/
30
- runit-man home page: https://github.com/Undev/runit-man
31
-
32
- Yours sincerely,
33
- Akzhan.