init 1.0.0 → 1.1.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.tar.gz.sig CHANGED
Binary file
data/.semver ADDED
@@ -0,0 +1,5 @@
1
+ ---
2
+ :major: "1"
3
+ :minor: "1"
4
+ :patch: "0"
5
+ :special: ""
@@ -1,3 +1,15 @@
1
+ === 1.1.0 / 2010-10-04
2
+
3
+ * 3 minor enhancements
4
+
5
+ * Pathname library required by default
6
+ * semver gem is used to define the version
7
+ * Specs heavily improved
8
+
9
+ * 1 minor bugfix
10
+
11
+ * Files are now correctly namespaced
12
+
1
13
  === 1.0.0 / 2009-03-25
2
14
 
3
15
  * 1 major enhancement
@@ -1,11 +1,15 @@
1
+ .semver
2
+ COPYING.txt
1
3
  History.txt
2
4
  Manifest.txt
3
5
  README.rdoc
4
- COPYING.txt
5
6
  Rakefile
6
- lib/init.rb
7
- lib/init/init.rb
7
+ examples/mongrel.rb
8
8
  examples/murmur.rb
9
- spec/init_spec.rb
9
+ init.gemspec
10
+ lib/aef/init.rb
11
+ lib/aef/init/init.rb
10
12
  spec/bin/mock_daemon.rb
11
13
  spec/bin/simple_init.rb
14
+ spec/init_spec.rb
15
+ spec/spec_helper.rb
@@ -1,6 +1,7 @@
1
1
  = Init
2
2
 
3
3
  * Project: https://rubyforge.org/projects/aef/
4
+ * RDoc: http://rdoc.info/projects/aef/init/
4
5
  * RDoc: http://aef.rubyforge.org/init/
5
6
  * Github: http://github.com/aef/init/
6
7
 
@@ -11,13 +12,23 @@ Clean and simple *nix init scripts with Ruby
11
12
  == FEATURES/PROBLEMS:
12
13
 
13
14
  * Tested and fully working on:
14
- * Ubuntu Linux 8.10 i386_64 (Ruby 1.8.7 and 1.9.1p0)
15
- * Debian GNU/Linux 4.0 i386 (Ruby 1.8.6)
15
+ * Ubuntu Linux 9.10 (Karmic Koala) on x86_64
16
+ * Ruby 1.8.7
17
+ * Ruby 1.9.2
18
+ * JRuby 1.5.3
19
+ * Debian GNU/Linux 4.0 (Lenny) on x86
20
+ * Ruby 1.8.7
21
+ * Ruby 1.9.2
22
+ * JRuby 1.5.3
16
23
 
17
24
  == SYNOPSIS:
18
25
 
19
- Simply subclass Init and define at least a start and a stop method. At the end,
20
- call the parse method on that class.
26
+ Load the library:
27
+
28
+ require 'aef/init'
29
+
30
+ Simply subclass Aef::Init and define at least a start and a stop method. At the
31
+ end, call the parse method on that class.
21
32
 
22
33
  class DemoSubclass < Aef::Init
23
34
  def start
@@ -70,16 +81,17 @@ class between Init and the final implementation:
70
81
  ...
71
82
  end
72
83
 
73
- See examples/murmur.rb and spec/bin/simple_ini.rb for working example classes.
84
+ See the examples folder and spec/bin/simple_ini.rb for working example classes.
74
85
 
75
86
  == REQUIREMENTS:
76
87
 
77
88
  * rubygems
89
+ * semver
78
90
 
79
91
  === Additional for automated testing
80
92
  * hoe
81
93
  * rspec
82
- * sys-uname
94
+ * facets
83
95
 
84
96
  == INSTALL:
85
97
 
@@ -146,7 +158,7 @@ to include your changes before reviewing them.
146
158
 
147
159
  == LICENSE:
148
160
 
149
- Copyright 2009 Alexander E. Fischer <aef@raxys.net>
161
+ Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
150
162
 
151
163
  This file is part of Init.
152
164
 
data/Rakefile CHANGED
@@ -2,16 +2,22 @@
2
2
 
3
3
  require 'rubygems'
4
4
  require 'hoe'
5
- require './lib/init.rb'
5
+ require 'semver'
6
6
 
7
- Hoe.new('init', Aef::Init::VERSION) do |p|
8
- p.rubyforge_name = 'aef'
9
- p.developer('Alexander E. Fischer', 'aef@raxys.net')
10
- p.extra_dev_deps = %w{rspec facets}
11
- p.url = 'https://rubyforge.org/projects/aef/'
12
- p.readme_file = 'README.rdoc'
13
- p.extra_rdoc_files = %w{README.rdoc}
14
- p.spec_extras = {
7
+ Hoe.spec 'init' do |p|
8
+ developer('Alexander E. Fischer', 'aef@raxys.net')
9
+
10
+ extra_deps << ['semver', '>= 0.2.2']
11
+
12
+ extra_dev_deps << ['rspec', '>= 1.3.0']
13
+ extra_dev_deps << ['facets', '>= 2.8.4']
14
+
15
+ self.version = SemVer.find.format '%M.%m.%p'
16
+ self.rubyforge_name = 'aef'
17
+ self.url = 'https://rubyforge.org/projects/aef/'
18
+ self.readme_file = 'README.rdoc'
19
+ self.extra_rdoc_files = %w{README.rdoc}
20
+ self.spec_extras = {
15
21
  :rdoc_options => ['--main', 'README.rdoc', '--inline-source', '--line-numbers', '--title', 'Init']
16
22
  }
17
23
  end
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
4
+ #
5
+ # This file is part of Init.
6
+ #
7
+ # Init is free software: you can redistribute it and/or modify
8
+ # it under the terms of the GNU General Public License as published by
9
+ # the Free Software Foundation, either version 3 of the License, or
10
+ # (at your option) any later version.
11
+ #
12
+ # This program is distributed in the hope that it will be useful,
13
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ # GNU General Public License for more details.
16
+ #
17
+ # You should have received a copy of the GNU General Public License
18
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
+
20
+ require 'aef/init'
21
+
22
+ class Mongrel < Aef::Init
23
+ BASE_DIR = Pathname('/srv/rails')
24
+ APPS = {
25
+ 'my_project' => 8000,
26
+ 'demo_app' => 8001
27
+ }
28
+
29
+ stop_start_delay 3
30
+
31
+ # An implementation of the start method
32
+ def start
33
+ APPS.each do |app_name, port|
34
+ puts "Starting #{app_name} on #{port}..."
35
+ `mongrel_rails start -d -p #{port} -e production -c #{BASE_DIR + app_name} -P log/mongrel.pid`
36
+ end
37
+ end
38
+
39
+ # An implementation of the stop method
40
+ def stop
41
+ APPS.each do |app_name, port|
42
+ puts "Stopping #{app_name}..."
43
+ `mongrel_rails stop -c #{BASE_DIR + app_name} -P log/mongrel.pid`
44
+ end
45
+ end
46
+ end
47
+
48
+ # The parser is only executed if the script is executed as a program, never
49
+ # when the script is required in a ruby program
50
+ if __FILE__ == $PROGRAM_NAME
51
+ Mongrel.parse
52
+ end
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  #
3
- # Copyright 2009 Alexander E. Fischer <aef@raxys.net>
3
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
4
4
  #
5
5
  # This file is part of Init.
6
6
  #
@@ -17,13 +17,13 @@
17
17
  # You should have received a copy of the GNU General Public License
18
18
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
19
 
20
- require 'init'
20
+ require 'aef/init'
21
21
 
22
22
  # An example init script for the voice chat application Murmur
23
23
  class Murmur < Aef::Init
24
- PATH = '/opt/murmur'
25
- DAEMON = File.join(PATH, 'murmur.x86')
26
- PIDFILE = '/var/run/murmur/murmur.pid'
24
+ PATH = Pathname('/opt/murmur')
25
+ DAEMON = PATH + 'murmur.x86'
26
+ PIDFILE = Pathname('/var/run/murmur/murmur.pid')
27
27
  USER = 'mumble'
28
28
 
29
29
  # Defines the seconds to wait between stop and start in the predefined restart
@@ -0,0 +1,47 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = %q{init}
5
+ s.version = "1.1.0"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Alexander E. Fischer"]
9
+ s.cert_chain = ["/home/dimedo/.gem/gem-public_cert.pem"]
10
+ s.date = %q{2010-10-04}
11
+ s.description = %q{Clean and simple *nix init scripts with Ruby}
12
+ s.email = ["aef@raxys.net"]
13
+ s.extra_rdoc_files = ["COPYING.txt", "History.txt", "Manifest.txt", "README.rdoc"]
14
+ s.files = [".semver", "COPYING.txt", "History.txt", "Manifest.txt", "README.rdoc", "Rakefile", "examples/mongrel.rb", "examples/murmur.rb", "init.gemspec", "lib/aef/init.rb", "lib/aef/init/init.rb", "spec/bin/mock_daemon.rb", "spec/bin/simple_init.rb", "spec/init_spec.rb", "spec/spec_helper.rb"]
15
+ s.homepage = %q{https://rubyforge.org/projects/aef/}
16
+ s.rdoc_options = ["--main", "README.rdoc", "--inline-source", "--line-numbers", "--title", "Init"]
17
+ s.require_paths = ["lib"]
18
+ s.rubyforge_project = %q{aef}
19
+ s.rubygems_version = %q{1.3.7}
20
+ s.signing_key = %q{/home/dimedo/.gem/gem-private_key.pem}
21
+ s.summary = %q{Clean and simple *nix init scripts with Ruby}
22
+
23
+ if s.respond_to? :specification_version then
24
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
25
+ s.specification_version = 3
26
+
27
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
28
+ s.add_runtime_dependency(%q<semver>, [">= 0.2.2"])
29
+ s.add_development_dependency(%q<rubyforge>, [">= 2.0.4"])
30
+ s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
31
+ s.add_development_dependency(%q<facets>, [">= 2.8.4"])
32
+ s.add_development_dependency(%q<hoe>, [">= 2.6.2"])
33
+ else
34
+ s.add_dependency(%q<semver>, [">= 0.2.2"])
35
+ s.add_dependency(%q<rubyforge>, [">= 2.0.4"])
36
+ s.add_dependency(%q<rspec>, [">= 1.3.0"])
37
+ s.add_dependency(%q<facets>, [">= 2.8.4"])
38
+ s.add_dependency(%q<hoe>, [">= 2.6.2"])
39
+ end
40
+ else
41
+ s.add_dependency(%q<semver>, [">= 0.2.2"])
42
+ s.add_dependency(%q<rubyforge>, [">= 2.0.4"])
43
+ s.add_dependency(%q<rspec>, [">= 1.3.0"])
44
+ s.add_dependency(%q<facets>, [">= 2.8.4"])
45
+ s.add_dependency(%q<hoe>, [">= 2.6.2"])
46
+ end
47
+ end
@@ -1,4 +1,4 @@
1
- # Copyright 2009 Alexander E. Fischer <aef@raxys.net>
1
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
2
2
  #
3
3
  # This file is part of Init.
4
4
  #
@@ -15,6 +15,10 @@
15
15
  # You should have received a copy of the GNU General Public License
16
16
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
 
18
+ require 'rubygems'
19
+ require 'pathname'
20
+ require 'semver'
21
+
18
22
  # Namespace for projects of Alexander E. Fischer <aef@raxys.net>
19
23
  #
20
24
  # If you want to be able to simply type Example instead of Aef::Example to
@@ -23,8 +27,5 @@
23
27
  #
24
28
  # include Aef
25
29
  module Aef
26
-
30
+ autoload :Init, 'aef/init/init'
27
31
  end
28
-
29
- libdir = File.dirname(__FILE__)
30
- require File.join(libdir, 'init/init')
@@ -1,4 +1,4 @@
1
- # Copyright 2009 Alexander E. Fischer <aef@raxys.net>
1
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
2
2
  #
3
3
  # This file is part of Init.
4
4
  #
@@ -15,11 +15,9 @@
15
15
  # You should have received a copy of the GNU General Public License
16
16
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
 
18
- require 'rubygems'
19
-
20
18
  # Clean and simple *nix init scripts with Ruby
21
19
  class Aef::Init
22
- VERSION = '1.0.0'
20
+ VERSION = SemVer.find
23
21
 
24
22
  # Call this to begin commandline parsing
25
23
  #
@@ -43,7 +41,7 @@ class Aef::Init
43
41
  # This is neccessary because since ruby 1.9, the instance_methods method
44
42
  # returns an array of symbols instead of an array of strings which it did
45
43
  # in 1.8
46
- command = command.to_sym if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('1.9')
44
+ command = command.to_sym if Gem::Version.new("#{RUBY_VERSION}") >= Gem::Version.new('1.9')
47
45
 
48
46
  if command == :default
49
47
  new.send(@@default_command)
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  #
3
- # Copyright 2009 Alexander E. Fischer <aef@raxys.net>
3
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
4
4
  #
5
5
  # This file is part of Init.
6
6
  #
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  #
3
- # Copyright 2009 Alexander E. Fischer <aef@raxys.net>
3
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
4
4
  #
5
5
  # This file is part of Init.
6
6
  #
@@ -17,12 +17,12 @@
17
17
  # You should have received a copy of the GNU General Public License
18
18
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
19
19
 
20
- require 'lib/init'
20
+ require 'aef/init'
21
21
 
22
22
  # A library in between the base and the final class
23
23
  class MiddleInit < Aef::Init
24
- RUBY_PATH = 'ruby'
25
- MOCK_EXECUTABLE = "#{RUBY_PATH} spec/bin/mock_daemon.rb"
24
+ INTERPRETER = Pathname(RbConfig::CONFIG['bindir']) + RbConfig::CONFIG['ruby_install_name']
25
+ MOCK_EXECUTABLE = "#{INTERPRETER} spec/bin/mock_daemon.rb"
26
26
 
27
27
  def middle
28
28
  tempfile = ARGV.first
@@ -44,9 +44,6 @@ end
44
44
 
45
45
  # The final implementation
46
46
  class SimpleInit < MiddleInit
47
- RUBY_PATH = 'ruby'
48
- MOCK_EXECUTABLE = "#{RUBY_PATH} spec/bin/mock_daemon.rb"
49
-
50
47
  # Defines the seconds to wait between stop and start in the predefined restart
51
48
  # command
52
49
  stop_start_delay 1.5
@@ -1,4 +1,4 @@
1
- # Copyright 2009 Alexander E. Fischer <aef@raxys.net>
1
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
2
2
  #
3
3
  # This file is part of Init.
4
4
  #
@@ -15,90 +15,69 @@
15
15
  # You should have received a copy of the GNU General Public License
16
16
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
 
18
- require 'lib/init'
19
-
20
- require 'fileutils'
21
- require 'tmpdir'
18
+ require './spec/spec_helper'
22
19
 
23
20
  require 'rubygems'
24
21
  require 'facets/timer'
25
22
 
26
- module InitSpecHelper
27
- RUBY_PATH = 'ruby'
28
-
29
- def init_executable
30
- "#{RUBY_PATH} spec/bin/simple_init.rb"
31
- end
32
- end
33
-
34
23
  describe Aef::Init do
35
24
  before(:each) do
36
- # Before ruby 1.8.7, the tmpdir standard library had no method to create
37
- # a temporary directory (mktmpdir).
38
- if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.8.7')
39
- @folder_path = File.join(Dir.tmpdir, 'init_spec')
40
- Dir.mkdir(@folder_path)
41
- else
42
- @folder_path = Dir.mktmpdir('init_spec')
43
- end
25
+ @temp_dir = create_temp_dir
44
26
  end
45
27
 
46
28
  after(:each) do
47
- FileUtils.rm_rf(@folder_path)
29
+ @temp_dir.rmtree
48
30
  end
49
31
 
50
- include InitSpecHelper
51
-
52
32
  it "should correctly execute the start command" do
53
- start_output = File.join(@folder_path, 'start_output')
33
+ start_output = @temp_dir + 'start_output'
54
34
 
55
35
  lambda {
56
- `#{init_executable} start #{start_output}`.should be_true
57
- }.should change{File.exist?(start_output)}.from(false).to(true)
36
+ `#{executable} start #{start_output}`.should be_true
37
+ }.should change{start_output.exist?}.from(false).to(true)
58
38
 
59
- File.read(start_output).should eql("#{start_output} --start --example -y\n")
39
+ start_output.read.should == "#{start_output} --start --example -y\n"
60
40
 
61
41
  end
62
42
 
63
43
  it "should correctly execute the stop command" do
64
- stop_output = File.join(@folder_path, 'stop_output')
44
+ stop_output = @temp_dir + 'stop_output'
65
45
 
66
46
  lambda {
67
- `#{init_executable} stop #{stop_output}`.should be_true
68
- }.should change{File.exist?(stop_output)}.from(false).to(true)
47
+ `#{executable} stop #{stop_output}`.should be_true
48
+ }.should change{stop_output.exist?}.from(false).to(true)
69
49
 
70
- File.read(stop_output).should eql("#{stop_output} --stop --example -y\n")
50
+ stop_output.read.should == "#{stop_output} --stop --example -y\n"
71
51
  end
72
52
 
73
53
  it "should correctly execute the restart command" do
74
- restart_output = File.join(@folder_path, 'restart_output')
54
+ restart_output = @temp_dir + 'restart_output'
75
55
 
76
56
  lambda {
77
- `#{init_executable} restart #{restart_output}`.should be_true
78
- }.should change{File.exist?(restart_output)}.from(false).to(true)
57
+ `#{executable} restart #{restart_output}`.should be_true
58
+ }.should change{restart_output.exist?}.from(false).to(true)
79
59
 
80
- File.read(restart_output).should eql(
81
- "#{restart_output} --stop --example -y\n#{restart_output} --start --example -y\n")
60
+ restart_output.read.should ==
61
+ "#{restart_output} --stop --example -y\n#{restart_output} --start --example -y\n"
82
62
  end
83
63
 
84
64
  it "should correctly execute the middle command" do
85
- middle_output = File.join(@folder_path, 'middle_output')
65
+ middle_output = @temp_dir + 'middle_output'
86
66
 
87
67
  lambda {
88
- `#{init_executable} middle #{middle_output}`.should be_true
89
- }.should change{File.exist?(middle_output)}.from(false).to(true)
68
+ `#{executable} middle #{middle_output}`.should be_true
69
+ }.should change{middle_output.exist?}.from(false).to(true)
90
70
 
91
- File.read(middle_output).should eql(
92
- "#{middle_output} --middle -e --abc\n")
71
+ middle_output.read.should == "#{middle_output} --middle -e --abc\n"
93
72
  end
94
73
 
95
74
  it "should wait 3 seconds between stop and start through the restart command" do
96
- restart_output = File.join(@folder_path, 'restart_output')
75
+ restart_output = @temp_dir + 'restart_output'
97
76
 
98
77
  timer = Timer.new
99
78
  timer.start
100
79
 
101
- `#{init_executable} restart #{restart_output}`.should be_true
80
+ `#{executable} restart #{restart_output}`.should be_true
102
81
 
103
82
  timer.stop
104
83
  (timer.total_time.should > 1.5).should be_true
@@ -107,23 +86,23 @@ describe Aef::Init do
107
86
  it "should display a usage example if a wrong command is specified" do
108
87
  usage_information = "Usage: spec/bin/simple_init.rb {middle|restart|start|stop}\n"
109
88
 
110
- `#{init_executable} invalid`.should eql(usage_information)
89
+ `#{executable} invalid`.should == usage_information
111
90
  end
112
91
 
113
92
  it "should only offer methods which are defined in Init or it's child classes" do
114
93
  usage_information = "Usage: spec/bin/simple_init.rb {middle|restart|start|stop}\n"
115
94
 
116
- `#{init_executable} methods`.should eql(usage_information)
117
- `#{init_executable} frozen?`.should eql(usage_information)
118
- `#{init_executable} to_a`.should eql(usage_information)
95
+ `#{executable} methods`.should == usage_information
96
+ `#{executable} frozen?`.should == usage_information
97
+ `#{executable} to_a`.should == usage_information
119
98
  end
120
99
 
121
100
  it "should only offer methods which are defined as public in Init or it's child classes" do
122
101
  usage_information = "Usage: spec/bin/simple_init.rb {middle|restart|start|stop}\n"
123
102
 
124
- `#{init_executable} middle_protected`.should eql(usage_information)
125
- `#{init_executable} middle_private`.should eql(usage_information)
126
- `#{init_executable} end_protected`.should eql(usage_information)
127
- `#{init_executable} end_private`.should eql(usage_information)
103
+ `#{executable} middle_protected`.should == usage_information
104
+ `#{executable} middle_private`.should == usage_information
105
+ `#{executable} end_protected`.should == usage_information
106
+ `#{executable} end_private`.should == usage_information
128
107
  end
129
108
  end
@@ -0,0 +1,49 @@
1
+ # Copyright Alexander E. Fischer <aef@raxys.net>, 2009-2010
2
+ #
3
+ # This file is part of Init.
4
+ #
5
+ # Linebreak is free software: you can redistribute it and/or modify
6
+ # it under the terms of the GNU General Public License as published by
7
+ # the Free Software Foundation, either version 3 of the License, or
8
+ # (at your option) any later version.
9
+ #
10
+ # This program is distributed in the hope that it will be useful,
11
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ # GNU General Public License for more details.
14
+ #
15
+ # You should have received a copy of the GNU General Public License
16
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+
18
+ require 'rbconfig'
19
+ require 'pathname'
20
+ require 'tmpdir'
21
+ require 'rubygems'
22
+
23
+ $LOAD_PATH.unshift((Pathname.pwd + 'lib').to_s)
24
+
25
+ require 'aef/init'
26
+
27
+ module Aef::Init::SpecHelper
28
+ INTERPRETER = Pathname(RbConfig::CONFIG['bindir']) + RbConfig::CONFIG['ruby_install_name']
29
+
30
+ def create_temp_dir
31
+ # Before ruby 1.8.7, the tmpdir standard library had no method to create
32
+ # a temporary directory (mktmpdir).
33
+ if Gem::Version.new("#{RUBY_VERSION}") < Gem::Version.new('1.8.7')
34
+ temp_dir = Pathname(Dir.tmpdir) + 'init_spec'
35
+ Dir.mkdir(temp_dir)
36
+ temp_dir
37
+ else
38
+ Pathname(Dir.mktmpdir('init_spec'))
39
+ end
40
+ end
41
+
42
+ def executable
43
+ "#{INTERPRETER} -Ilib spec/bin/simple_init.rb"
44
+ end
45
+ end
46
+
47
+ Spec::Runner.configure do |config|
48
+ config.include Aef::Init::SpecHelper
49
+ end
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: init
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 1
8
+ - 0
9
+ version: 1.1.0
5
10
  platform: ruby
6
11
  authors:
7
12
  - Alexander E. Fischer
@@ -29,39 +34,84 @@ cert_chain:
29
34
  55akF+N8NbO6tpVDy6TMagqa10LfEpiQH6dvDHe/xdAqYOCrXKpmqzwu2PI=
30
35
  -----END CERTIFICATE-----
31
36
 
32
- date: 2009-04-05 00:00:00 +02:00
37
+ date: 2010-10-04 00:00:00 +02:00
33
38
  default_executable:
34
39
  dependencies:
35
40
  - !ruby/object:Gem::Dependency
36
- name: rspec
41
+ name: semver
42
+ prerelease: false
43
+ requirement: &id001 !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ segments:
49
+ - 0
50
+ - 2
51
+ - 2
52
+ version: 0.2.2
53
+ type: :runtime
54
+ version_requirements: *id001
55
+ - !ruby/object:Gem::Dependency
56
+ name: rubyforge
57
+ prerelease: false
58
+ requirement: &id002 !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ segments:
64
+ - 2
65
+ - 0
66
+ - 4
67
+ version: 2.0.4
37
68
  type: :development
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
69
+ version_requirements: *id002
70
+ - !ruby/object:Gem::Dependency
71
+ name: rspec
72
+ prerelease: false
73
+ requirement: &id003 !ruby/object:Gem::Requirement
74
+ none: false
40
75
  requirements:
41
76
  - - ">="
42
77
  - !ruby/object:Gem::Version
43
- version: "0"
44
- version:
78
+ segments:
79
+ - 1
80
+ - 3
81
+ - 0
82
+ version: 1.3.0
83
+ type: :development
84
+ version_requirements: *id003
45
85
  - !ruby/object:Gem::Dependency
46
86
  name: facets
47
- type: :development
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
87
+ prerelease: false
88
+ requirement: &id004 !ruby/object:Gem::Requirement
89
+ none: false
50
90
  requirements:
51
91
  - - ">="
52
92
  - !ruby/object:Gem::Version
53
- version: "0"
54
- version:
93
+ segments:
94
+ - 2
95
+ - 8
96
+ - 4
97
+ version: 2.8.4
98
+ type: :development
99
+ version_requirements: *id004
55
100
  - !ruby/object:Gem::Dependency
56
101
  name: hoe
57
- type: :development
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
102
+ prerelease: false
103
+ requirement: &id005 !ruby/object:Gem::Requirement
104
+ none: false
60
105
  requirements:
61
106
  - - ">="
62
107
  - !ruby/object:Gem::Version
63
- version: 1.11.0
64
- version:
108
+ segments:
109
+ - 2
110
+ - 6
111
+ - 2
112
+ version: 2.6.2
113
+ type: :development
114
+ version_requirements: *id005
65
115
  description: Clean and simple *nix init scripts with Ruby
66
116
  email:
67
117
  - aef@raxys.net
@@ -70,24 +120,30 @@ executables: []
70
120
  extensions: []
71
121
 
72
122
  extra_rdoc_files:
123
+ - COPYING.txt
73
124
  - History.txt
74
125
  - Manifest.txt
75
- - COPYING.txt
76
126
  - README.rdoc
77
127
  files:
128
+ - .semver
129
+ - COPYING.txt
78
130
  - History.txt
79
131
  - Manifest.txt
80
132
  - README.rdoc
81
- - COPYING.txt
82
133
  - Rakefile
83
- - lib/init.rb
84
- - lib/init/init.rb
134
+ - examples/mongrel.rb
85
135
  - examples/murmur.rb
86
- - spec/init_spec.rb
136
+ - init.gemspec
137
+ - lib/aef/init.rb
138
+ - lib/aef/init/init.rb
87
139
  - spec/bin/mock_daemon.rb
88
140
  - spec/bin/simple_init.rb
141
+ - spec/init_spec.rb
142
+ - spec/spec_helper.rb
89
143
  has_rdoc: true
90
144
  homepage: https://rubyforge.org/projects/aef/
145
+ licenses: []
146
+
91
147
  post_install_message:
92
148
  rdoc_options:
93
149
  - --main
@@ -99,23 +155,27 @@ rdoc_options:
99
155
  require_paths:
100
156
  - lib
101
157
  required_ruby_version: !ruby/object:Gem::Requirement
158
+ none: false
102
159
  requirements:
103
160
  - - ">="
104
161
  - !ruby/object:Gem::Version
162
+ segments:
163
+ - 0
105
164
  version: "0"
106
- version:
107
165
  required_rubygems_version: !ruby/object:Gem::Requirement
166
+ none: false
108
167
  requirements:
109
168
  - - ">="
110
169
  - !ruby/object:Gem::Version
170
+ segments:
171
+ - 0
111
172
  version: "0"
112
- version:
113
173
  requirements: []
114
174
 
115
175
  rubyforge_project: aef
116
- rubygems_version: 1.3.1
176
+ rubygems_version: 1.3.7
117
177
  signing_key:
118
- specification_version: 2
178
+ specification_version: 3
119
179
  summary: Clean and simple *nix init scripts with Ruby
120
180
  test_files: []
121
181
 
metadata.gz.sig CHANGED
Binary file