health_check 1.5.1 → 1.6.1

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/.gitignore CHANGED
@@ -16,6 +16,7 @@ spec/reports
16
16
  test/tmp
17
17
  test/version_tmp
18
18
  tmp
19
+ .ruby-version
19
20
 
20
21
  ## PROJECT::SPECIFIC
21
22
  bin/
data/.travis.yml CHANGED
@@ -15,64 +15,19 @@ bundler_args: "--binstubs"
15
15
 
16
16
  script: ./test/test_with_railsapp
17
17
 
18
- rvm:
19
- - 1.9.3
20
-
21
- gemfile:
22
- - test/rails_3.2.gemfile
23
-
24
18
  matrix:
25
19
  allow_failures:
20
+ - rvm: 1.8.7
21
+ gemfile: test/rails_2.3_lts.gemfile
22
+ env: RUBYGEMS_VERSION=1.8.25 RAILS_VERSION=2.3
26
23
 
27
24
  include:
28
- # rails 3.2 jan 20, 2012 - ruby 1.8.7 or 1.9.2
29
-
30
- - rvm: 1.9.3
31
- gemfile: test/rails_3.2.gemfile
32
- env: RAILS_SERVER=puma RAILS_VERSION=3.2
33
-
34
- - rvm: 1.9.3
35
- gemfile: test/rails_3.2.gemfile
36
- env: RAILS_SERVER=passenger RAILS_VERSION=3.2
37
-
38
- - rvm: 1.9.3
39
- gemfile: test/rails_3.2.gemfile
40
- env: RAILS_SERVER=thin RAILS_VERSION=3.2
41
-
42
- - rvm: rbx-2.2.6
43
- gemfile: test/rails_3.2.gemfile
44
- env: RAILS_ENV2=development RAILS_VERSION=3.2
45
-
46
- - rvm: 1.9.3
47
- gemfile: test/rails_3.2.gemfile
48
- env: RAILS_SERVER=unicorn RAILS_VERSION=3.2
49
-
50
- - rvm: jruby-19mode
51
- gemfile: test/rails_3.2.gemfile
52
- env: RAILS_VERSION=3.2
53
-
54
- - rvm: 2.2.0
55
- gemfile: test/rails_3.2.gemfile
56
- env: RAILS_VERSION=3.2
57
-
58
- - rvm: 1.9.3
59
- gemfile: test/rails_3.2.gemfile
60
- env: RAILS_VERSION=3.2
61
-
62
- - rvm: jruby-19mode
63
- gemfile: test/rails_3.2.gemfile
64
- env: RAILS_VERSION=3.2
65
-
66
- # rails 3.1 aug 31, 2011 - ruby 1.8.7 or 1.9.2
67
- - rvm: 1.9.2
68
- gemfile: test/rails_3.1.gemfile
69
- env: RAILS_VERSION=3.1
70
-
25
+ # rails 2.3 march 16 2009 - ruby 1.8.7
26
+ # railslts.com
71
27
  - rvm: 1.8.7
72
- gemfile: test/rails_3.0.gemfile
73
- env: RAILS_VERSION=3.0
28
+ gemfile: test/rails_2.3_lts.gemfile
29
+ env: RUBYGEMS_VERSION=1.8.25 RAILS_VERSION=2.3
74
30
 
75
- # rails 2.3 march 16 2009 - ruby 1.8.7
76
31
  - rvm: 1.8.7
77
32
  gemfile: test/rails_2.3.gemfile
78
33
  env: RUBYGEMS_VERSION=1.8.25 RAILS_VERSION=2.3
data/CHANGELOG CHANGED
@@ -1,5 +1,12 @@
1
1
  = Change Log =
2
2
 
3
+ * rails2.3 branch
4
+ *1.6.1 - rails 2.3 only version
5
+ * rails 2.3 only version
6
+ *1.6.0
7
+ * Added basic auth support - Thanks Kyle Conarro <kyle.conarro@gmail.com>
8
+ * Explicitly limit rails to < 4.0 for this branch
9
+ * Test against rails 2.3 LTS, updated gemfile's used for testing as the latest version of gems become incompatible
3
10
  *1.5.1
4
11
  * Created pre_rails4 branch (versions < 2.0) for rails 2.3 and 3.x; with master branch for rails 4.0+
5
12
  *1.5.0
@@ -23,264 +30,3 @@
23
30
  * 1.x - Includes Rails 3.x suppprt as an Engine
24
31
  * 0.x - Rails 2.3
25
32
 
26
- +
27
- end
28
-
29
- diff --git a/README.rdoc b/README.rdoc
30
- index de48110..cf673e8 100644
31
- --- a/README.rdoc
32
- +++ b/README.rdoc
33
- @@ -24,11 +24,11 @@ On failure a 500 http status is returned with a simple explanation of the failur
34
- curl localhost:3000/health_check/fail
35
- health_check failed: invalid argument to health_test.
36
-
37
- -The health_check controller disables sessions and logging for its actions to minimise the impact of frequent uptime checks on the session store and the log file.
38
- +The health_check controller disables sessions for versions that eagerly load sessions. Only failures are logged for rails < '4.1'.
39
-
40
- == Checks
41
-
42
- -* standard (default) - site, database and migrations checks are run plus email if settings have been changed
43
- +* standard (default) - site, database and migrations checks are run plus email if ActionMailer is defined and it is not using the default configuration
44
- * all / full - all checks are run (can be overriden in config block)
45
- * database - checks that the current migration level can be read from the database
46
- * email - basic check of email - :test returns true, :sendmail checks file is present and executable, :smtp sends HELO command to server and checks response
47
- @@ -100,6 +100,9 @@ To change the configuration of health_check, create a file `config/initializers/
48
-
49
- config.http_status_for_error_object = 500
50
-
51
- + # You can customize which checks happen on a standard health check
52
- + config.standard_checks = [ 'database', 'migrations', 'custom' ]
53
- +
54
- # You can set what tests are run with the 'full' or 'all' parameter
55
- config.full_checks = ['database', 'migrations', 'custom', 'email', 'cache']
56
-
57
- @@ -189,11 +192,10 @@ See https://github.com/ianheggie/health_check/wiki/Ajax-Example for an Ajax exam
58
-
59
- === Automated testing and other checks
60
-
61
- -Travis CI runs the tests: {<img src="https://travis-ci.org/ianheggie/health_check.png">}[https://travis-ci.org/ianheggie/health_check]
62
- -
63
- -Code Climate monitors code quality: {<img src="https://codeclimate.com/github/ianheggie/health_check.png" />}[https://codeclimate.com/github/ianheggie/health_check]
64
- -
65
- -Gemnasium monitors gem dependencies {<img src="https://gemnasium.com/ianheggie/health_check.png">}[https://gemnasium.com/ianheggie/health_check]
66
- +* {<img src="https://badge.fury.io/rb/health_check.png" alt="Gem Version" />}[http://badge.fury.io/rb/health_check] - Latest Gem
67
- +* {<img src="https://travis-ci.org/ianheggie/health_check.png">}[https://travis-ci.org/ianheggie/health_check] - Travis CI
68
- +* {<img src="https://codeclimate.com/github/ianheggie/health_check.png" />}[https://codeclimate.com/github/ianheggie/health_check] - Code quality
69
- +* {<img src="https://gemnasium.com/ianheggie/health_check.png">}[https://gemnasium.com/ianheggie/health_check] - Gem dependencies
70
-
71
- === Manual testing
72
-
73
- @@ -230,10 +232,18 @@ The command `rake test` will also launch these tests, except it cannot install t
74
-
75
- == Copyright
76
-
77
- -Copyright (c) 2010-2013 Ian Heggie, released under the MIT license.
78
- +Copyright (c) 2010-2014 Ian Heggie, released under the MIT license.
79
- See MIT-LICENSE for details.
80
-
81
- == Contributors
82
-
83
- -Thanks go to the various people who have given feedback and suggestions via the issues list and pull requests
84
- +Thanks go to the various people who have given feedback and suggestions via the issues list and pull requests.
85
- +
86
- +=== Contributing
87
- +
88
- +1. Fork it
89
- +2. Create your feature branch (`git checkout -b my-new-feature`)
90
- +3. Commit your changes (`git commit -am 'Add some feature'`)
91
- +4. Push to the branch (`git push origin my-new-feature`)
92
- +5. Create new Pull Request (Code with BDD tests are favoured)
93
-
94
- diff --git a/health_check.gemspec b/health_check.gemspec
95
- index 1b7f8fc..e6b70f5 100644
96
- --- a/health_check.gemspec
97
- +++ b/health_check.gemspec
98
- @@ -13,7 +13,7 @@ Gem::Specification.new do |gem|
99
- gem.description = <<-EOF
100
- Simple health check of Rails app for uptime monitoring with Pingdom, NewRelic, EngineYard or uptime.openacs.org etc.
101
- EOF
102
- - gem.homepage = "http://ianheggie.github.io/health_check/"
103
- + gem.homepage = "https://github.com/ianheggie/health_check"
104
-
105
- gem.files = `git ls-files`.split($/)
106
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
107
- @@ -23,6 +23,5 @@ Gem::Specification.new do |gem|
108
- gem.add_dependency(%q<rails>, [">= 2.3.0"])
109
- gem.add_development_dependency(%q<rake>, [">= 0.8.3"])
110
- gem.add_development_dependency(%q<shoulda>, ["~> 2.11.0"])
111
- - gem.add_development_dependency(%q<sqlite3>, ["~> 1.3.7"])
112
- gem.add_development_dependency(%q<bundler>, ["~> 1.2"])
113
- end
114
- diff --git a/lib/health_check.rb b/lib/health_check.rb
115
- index 04d6aec..45f8fd2 100644
116
- --- a/lib/health_check.rb
117
- +++ b/lib/health_check.rb
118
- @@ -28,8 +28,10 @@ module HealthCheck
119
- # Array of custom check blocks
120
- mattr_accessor :custom_checks
121
- mattr_accessor :full_checks
122
- + mattr_accessor :standard_checks
123
- self.custom_checks = [ ]
124
- self.full_checks = ['database', 'migrations', 'custom', 'email', 'cache']
125
- + self.standard_checks = [ 'database', 'migrations', 'custom' ]
126
-
127
- def self.add_custom_check(&block)
128
- custom_checks << block
129
- diff --git a/lib/health_check/health_check_controller.rb b/lib/health_check/health_check_controller.rb
130
- index 4b5fa7a..7d544f7 100644
131
- --- a/lib/health_check/health_check_controller.rb
132
- +++ b/lib/health_check/health_check_controller.rb
133
- @@ -4,8 +4,6 @@
134
- module HealthCheck
135
- class HealthCheckController < ActionController::Base
136
-
137
- - session(:off) if Rails.version < '3.0'
138
- -
139
- layout false if self.respond_to? :layout
140
-
141
- def index
142
- @@ -34,9 +32,9 @@ module HealthCheck
143
- end
144
- # Log a single line as some uptime checkers only record that it failed, not the text returned
145
- if logger
146
- - silence_level, logger.level = logger.level, @old_logger_level
147
- + silence_level, logger.level = logger.level, @old_logger_level if @old_logger_level
148
- logger.info msg
149
- - logger.level = silence_level
150
- + logger.level = silence_level if @old_logger_level
151
- end
152
- end
153
- end
154
- diff --git a/lib/health_check/utils.rb b/lib/health_check/utils.rb
155
- index b6da3f8..e7a10f6 100644
156
- --- a/lib/health_check/utils.rb
157
- +++ b/lib/health_check/utils.rb
158
- @@ -46,8 +46,8 @@ module HealthCheck
159
- when 'cache'
160
- errors << HealthCheck::Utils.check_cache
161
- when "standard"
162
- - errors << HealthCheck::Utils.process_checks("database_migrations_custom")
163
- - errors << HealthCheck::Utils.process_checks("email") unless HealthCheck::Utils.default_action_mailer_configuration?
164
- + errors << HealthCheck::Utils.process_checks(HealthCheck.standard_checks.join('_'))
165
- + errors << HealthCheck::Utils.process_checks("email") if HealthCheck::Utils.mailer_configured?
166
- when "custom"
167
- HealthCheck.custom_checks.each do |custom_check|
168
- errors << custom_check.call(self)
169
- @@ -71,8 +71,8 @@ module HealthCheck
170
- @@db_migrate_path = value
171
- end
172
-
173
- - def self.default_action_mailer_configuration?
174
- - ActionMailer::Base.delivery_method == :smtp && HealthCheck::Utils.default_smtp_settings == ActionMailer::Base.smtp_settings
175
- + def self.mailer_configured?
176
- + defined?(ActionMailer::Base) && (ActionMailer::Base.delivery_method != :smtp || HealthCheck::Utils.default_smtp_settings != ActionMailer::Base.smtp_settings)
177
- end
178
-
179
- def self.get_database_version
180
- @@ -117,11 +117,11 @@ module HealthCheck
181
- while status != nil && status !~ /^2/
182
- status = t.gets
183
- end
184
- - t.puts "HELO #{settings[:domain]}"
185
- + t.puts "HELO #{settings[:domain]}\r"
186
- while status != nil && status !~ /^250/
187
- status = t.gets
188
- end
189
- - t.puts "QUIT"
190
- + t.puts "QUIT\r"
191
- status = t.gets
192
- ensure
193
- t.close
194
- diff --git a/lib/health_check/version.rb b/lib/health_check/version.rb
195
- index 8264365..0cf2f60 100644
196
- --- a/lib/health_check/version.rb
197
- +++ b/lib/health_check/version.rb
198
- @@ -1,4 +1,4 @@
199
- module HealthCheck
200
- - VERSION = "1.4.1"
201
- + VERSION = "1.5.0"
202
- end
203
-
204
- diff --git a/test/fake_smtp_server b/test/fake_smtp_server
205
- index e55ee3a..7f1e645 100755
206
- --- a/test/fake_smtp_server
207
- +++ b/test/fake_smtp_server
208
- @@ -23,8 +23,8 @@ client = server.accept # Wait for a client to connect
209
- send(client, "220 dummy-smtp.example.com SMTP")
210
- cmd = receive(client)
211
-
212
- -while cmd !~ /^QUIT/
213
- - if cmd =~ /^HELO/
214
- +while cmd !~ /^QUIT\r/
215
- + if cmd =~ /^HELO(.*)\r/
216
- send(client, "250 Welcome to a dummy smtp server")
217
- else
218
- send(client, "502 I am so dumb I only understand HELO and QUIT")
219
- diff --git a/test/rails_2.3.gemfile b/test/rails_2.3.gemfile
220
- index 80aa9fc..e30fa69 100644
221
- --- a/test/rails_2.3.gemfile
222
- +++ b/test/rails_2.3.gemfile
223
- @@ -13,6 +13,9 @@ gem 'rails', "~> 2.3.15"
224
- gem 'rdoc'
225
- gem 'rdoc-data'
226
-
227
- +# mime-types 2.0 requires Ruby version >= 1.9.2
228
- +gem "mime-types", "< 2.0"
229
- +
230
- group :development, :test do
231
- if defined?(JRUBY_VERSION)
232
- gem 'jruby-openssl'
233
- diff --git a/test/rails_4.1.gemfile b/test/rails_4.1.gemfile
234
- new file mode 100644
235
- index 0000000..b199010
236
- --- /dev/null
237
- +++ b/test/rails_4.1.gemfile
238
- @@ -0,0 +1,19 @@
239
- +# Gemfile for health_test testing
240
- +
241
- +source 'https://rubygems.org'
242
- +
243
- +ruby '1.9.3' if RUBY_VERSION < '1.9.3'
244
- +
245
- +gem 'rails', "~> 4.1.0"
246
- +gem 'rake', '>= 0.8.3'
247
- +gem "rack", '~> 1.5.2'
248
- +
249
- +group :development, :test do
250
- + if defined?(JRUBY_VERSION)
251
- + gem 'jruby-openssl'
252
- + gem 'activerecord-jdbcsqlite3-adapter'
253
- + else
254
- + gem 'sqlite3', "~> 1.3.7"
255
- + end
256
- + gem 'shoulda'
257
- +end
258
- diff --git a/test/setup_railsapp b/test/setup_railsapp
259
- index 5f414f9..80f6116 100755
260
- --- a/test/setup_railsapp
261
- +++ b/test/setup_railsapp
262
- @@ -164,6 +164,9 @@ then
263
- echo ================= Gemfile ===================
264
- cat Gemfile
265
- echo
266
- + echo ================= Gemfile.lock ===================
267
- + cat Gemfile.lock
268
- + echo
269
- else
270
- dest=$railsapp/vendor/plugins/health_check
271
- echo Installing health_check as plugin in $dest ...
272
- diff --git a/test/test_with_railsapp b/test/test_with_railsapp
273
- index 2ba4bc4..c866c68 100755
274
- --- a/test/test_with_railsapp
275
- +++ b/test/test_with_railsapp
276
- @@ -306,6 +306,10 @@ common_tests()
277
- date > $custom_file
278
- }
279
-
280
- +
281
- +# required for rails 4.1+ in production mode
282
- +export SECRET_KEY_BASE=cf2f49c38a3fe67416ddf680f4f3187c0fce7dd1b9b117b34d195df75b274e08a04877e23803b2fdf1aa9a655269d94bc4888aa325cf7e721cc47368cfe56a80
283
- +
284
- echo ========================================================
285
- echo TESTING WITHOUT CATCHALL in test env
286
- echo ========================================================
data/Gemfile CHANGED
@@ -7,6 +7,15 @@ ruby '1.9.3' if RUBY_VERSION > '1.9.3'
7
7
 
8
8
  gemspec
9
9
 
10
+ # mime-types 2.0 requires Ruby version >= 1.9.2
11
+ gem "mime-types", "< 2.0" if RUBY_VERSION < '1.9.2' # REQUIRED
12
+ # 0.7 requires ruby 1.9.3
13
+ gem 'i18n', '< 0.7' if RUBY_VERSION < '1.9.3' # REQUIRED
14
+ # rack 2.0 requires ruby 2.2.2, rails 3.2 requires rack ~> 1.4.5
15
+ gem 'rack', "< 1.5" # REQUIRED
16
+
17
+ gem 'rack-cache', '< 1.3' if RUBY_VERSION < '1.9.3'
18
+
10
19
  group :development, :test do
11
20
  if defined?(JRUBY_VERSION)
12
21
  gem 'jruby-openssl'
@@ -20,6 +29,8 @@ group :development, :test do
20
29
  # mime-types 2.0 requires Ruby version >= 1.9.2
21
30
  gem "mime-types", "< 2.0"
22
31
  end
32
+ #gem 'rake', ">= 0.8.3", "< 11.0"
33
+ #gem 'rack', "< 2.0"
23
34
 
24
35
  end
25
36
 
data/README.rdoc CHANGED
@@ -1,8 +1,9 @@
1
- = health_check gem (pre_rails4 branch)
1
+ = health_check gem (rails2.3 branch)
2
2
 
3
3
  Simple health check of Rails app for use with Pingdom, NewRelic, EngineYard or uptime.openacs.org etc.
4
4
 
5
- Use {master}[https://github.com/ianheggie/health_check/tree/master] branch or gem versions >= 2.0 for Rails 4.0+
5
+ Use {rails2.3}[https://github.com/ianheggie/health_check/tree/rails2.3] branch or gem versions ~> 1.6.0 for Rails 2.3.
6
+ See {master}[https://github.com/ianheggie/health_check/tree/master] branch for using with later versions.
6
7
 
7
8
  The basic goal is to quickly check that rails is up and running and that it has access to correctly configured resources (database, email gateway)
8
9
 
@@ -45,7 +46,7 @@ Specify full or include email in the list of checks to verify the smtp settings
45
46
 
46
47
  == Installation
47
48
 
48
- === As a Gem from rubygems (Rails 3.0 and above)
49
+ === As a Gem from rubygems (if you have modified your rails to use bundler)
49
50
 
50
51
  Add the following line to Gemfile
51
52
 
@@ -111,6 +112,10 @@ To change the configuration of health_check, create a file `config/initializers/
111
112
  CustomHealthCheck.perform_check # any code that returns blank on success and non blank string upon failure
112
113
  end
113
114
 
115
+ # Protect health endpoints with basic auth
116
+ # These default to nil and the endpoint is not protected
117
+ config.basic_auth_username = 'my_username'
118
+ config.basic_auth_password = 'my_password'
114
119
  end
115
120
 
116
121
  You may call add_custom_check multiple times with different tests. These tests will be included in the default list ("standard").
data/health_check.gemspec CHANGED
@@ -20,8 +20,8 @@ Gem::Specification.new do |gem|
20
20
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
21
21
  gem.extra_rdoc_files = [ "README.rdoc" ]
22
22
  gem.require_paths = ["lib"]
23
- gem.add_dependency(%q<rails>, [">= 2.3.0"])
24
- gem.add_development_dependency(%q<rake>, [">= 0.8.3"])
23
+ gem.add_dependency(%q<rails>, ['~> 2.3.0'])
24
+ gem.add_development_dependency(%q<rake>, [">= 0.8.3", "< 11.0"])
25
25
  gem.add_development_dependency(%q<shoulda>, ["~> 2.11.0"])
26
26
  gem.add_development_dependency(%q<bundler>, ["~> 1.2"])
27
27
  end
@@ -5,6 +5,7 @@ module HealthCheck
5
5
  class HealthCheckController < ActionController::Base
6
6
 
7
7
  layout false if self.respond_to? :layout
8
+ before_filter :authenticate
8
9
 
9
10
  def index
10
11
  checks = params[:checks] || 'standard'
@@ -12,7 +13,7 @@ module HealthCheck
12
13
  errors = HealthCheck::Utils.process_checks(checks)
13
14
  rescue Exception => e
14
15
  errors = e.message
15
- end
16
+ end
16
17
  if errors.blank?
17
18
  obj = { :healthy => true, :message => HealthCheck.success }
18
19
  respond_to do |format|
@@ -42,6 +43,13 @@ module HealthCheck
42
43
 
43
44
  protected
44
45
 
46
+ def authenticate
47
+ return unless HealthCheck.basic_auth_username && HealthCheck.basic_auth_password
48
+ authenticate_or_request_with_http_basic do |username, password|
49
+ username == HealthCheck.basic_auth_username && password == HealthCheck.basic_auth_password
50
+ end
51
+ end
52
+
45
53
  # turn cookies for CSRF off
46
54
  def protect_against_forgery?
47
55
  false
@@ -1,4 +1,4 @@
1
1
  module HealthCheck
2
- VERSION = "1.5.1"
2
+ VERSION = "1.6.1"
3
3
  end
4
4
 
data/lib/health_check.rb CHANGED
@@ -25,6 +25,12 @@ module HealthCheck
25
25
  mattr_accessor :http_status_for_error_object
26
26
  self.http_status_for_error_object = 500
27
27
 
28
+ #
29
+ mattr_accessor :basic_auth_username, :basic_auth_password
30
+ self.basic_auth_username = nil
31
+ self.basic_auth_password = nil
32
+
33
+
28
34
  # Array of custom check blocks
29
35
  mattr_accessor :custom_checks
30
36
  mattr_accessor :full_checks
@@ -7,14 +7,19 @@ source 'https://rubygems.org'
7
7
 
8
8
  ruby "1.8.7"
9
9
 
10
- gem 'rails', "~> 2.3.15"
11
- # rails requires rake >= 0.8.3
10
+ gem 'rails', '~>2.3.18'
11
+
12
+ gem 'rake', ">= 0.8.3", "< 11.0" # REQUIRED
12
13
 
13
14
  gem 'rdoc'
14
15
  gem 'rdoc-data'
15
16
 
16
17
  # mime-types 2.0 requires Ruby version >= 1.9.2
17
- gem "mime-types", "< 2.0"
18
+ gem "mime-types", "< 2.0" if RUBY_VERSION < '1.9.2' # REQUIRED
19
+ # 0.7 requires ruby 1.9.3
20
+ gem 'i18n', '< 0.7' if RUBY_VERSION < '1.9.3' # REQUIRED
21
+ # rack 2.0 requires ruby 2.2.2, rails 3.2 requires rack ~> 1.4.5
22
+ gem 'rack', "< 1.5" # REQUIRED
18
23
 
19
24
  group :development, :test do
20
25
  if defined?(JRUBY_VERSION)
@@ -0,0 +1,41 @@
1
+ # Gemfile for health_test testing
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ # Last rubygems version before 2.0.0 (which breaks rails 2.3)
6
+ #rubygems 1.8.25
7
+
8
+ ruby "1.8.7"
9
+
10
+ git 'https://github.com/makandra/rails.git', :branch => '2-3-lts' do
11
+ gem 'rails', '~>2.3.18'
12
+ gem 'actionmailer', :require => false
13
+ gem 'actionpack', :require => false
14
+ gem 'activerecord', :require => false
15
+ gem 'activeresource', :require => false
16
+ gem 'activesupport', :require => false
17
+ gem 'railties', :require => false
18
+ gem 'railslts-version', :require => false
19
+ end
20
+
21
+ gem 'rake', ">= 0.8.3", "< 11.0" # REQUIRED
22
+
23
+ gem 'rdoc'
24
+ gem 'rdoc-data'
25
+
26
+ # mime-types 2.0 requires Ruby version >= 1.9.2
27
+ gem "mime-types", "< 2.0" if RUBY_VERSION < '1.9.2' # REQUIRED
28
+ # 0.7 requires ruby 1.9.3
29
+ gem 'i18n', '< 0.7' if RUBY_VERSION < '1.9.3' # REQUIRED
30
+ # rack 2.0 requires ruby 2.2.2, rails 3.2 requires rack ~> 1.4.5
31
+ gem 'rack', "< 1.5" # REQUIRED
32
+
33
+ group :development, :test do
34
+ if defined?(JRUBY_VERSION)
35
+ gem 'jruby-openssl'
36
+ gem 'activerecord-jdbcsqlite3-adapter'
37
+ else
38
+ gem 'sqlite3', "~> 1.3.7"
39
+ end
40
+ gem 'shoulda', "~> 2.11.0"
41
+ end
data/test/setup_railsapp CHANGED
@@ -45,9 +45,13 @@ else
45
45
  fi
46
46
 
47
47
  echo "Running bundle with BUNDLE_GEMFILE=$BUNDLE_GEMFILE ..."
48
- if ! bundle ; then
48
+ if ! bundle install ; then
49
49
  echo "Test aborted (missing required gems)"
50
50
  exit 2
51
+ else
52
+ echo bundle passed - lock file contains:
53
+ cat $BUNDLE_GEMFILE.lock
54
+ echo
51
55
  fi
52
56
  $rehash
53
57
 
@@ -74,12 +78,34 @@ actual_rails_version=`$rails -v`
74
78
 
75
79
  [ -d lib/health_check ] || exec echo setup_railsapp MUST be executed in the base of the health_check gem/clone of git repository
76
80
 
77
- echo Installing health_check as a gem into tmp/gems
78
- env GEM_HOME=$tmp_dir/gems rake install
79
-
80
81
  export GEM_PATH="$tmp_dir/gems:`gem environment gempath`"
81
82
  echo Set GEM_PATH=$GEM_PATH
82
83
 
84
+ case "$BUNDLE_GEMFILE" in
85
+ *_lts*)
86
+ echo "Re-running bundle with changed GEM_PATH (required by git install of rails lts) ..."
87
+ if ! bundle install ; then
88
+ echo "Test aborted (missing required gems)"
89
+ exit 2
90
+ else
91
+ echo bundle passed - lock file contains:
92
+ cat $BUNDLE_GEMFILE.lock
93
+ echo
94
+ fi
95
+ ;;
96
+ esac
97
+ echo Installing health_check as a gem into $tmp_dir/gems
98
+ rm -f pkg/health_check-*.gem
99
+ if env GEM_HOME=$tmp_dir/gems $rake install
100
+ then
101
+ echo rake install passed
102
+ else
103
+ echo rake install failed! running gem install pkg/health_check-*.gem manually to see error message:
104
+ env GEM_HOME=$tmp_dir/gems gem install pkg/health_check-*.gem
105
+ echo gem install worked, but flagging it as a FAIL anyway since rake install failed!
106
+ exit 2
107
+ fi
108
+
83
109
  echo Gems in tmp/gems:
84
110
  ls tmp/gems
85
111
 
@@ -347,35 +373,18 @@ if [ -s config/routes.rb ]; then
347
373
  sed -e '/^end/,$d' config/routes.rb-old
348
374
  fi
349
375
 
350
- case "$var" in
351
- '')
352
- # rails 3.0+
353
- echo " # -----------------------------------------"
354
- echo " # START OF SECTION FOR TESTING HEALTH_CHECK"
355
- echo " get 'example(/:action(/:id))(.:format)' => 'example'"
356
- echo " if File.exists?('$catchall_file')"
357
- echo " health_check_routes"
358
- echo " # CATCH ALL ROUTE"
359
- echo " get '*path', :to => 'example#catchall'"
360
- echo " end"
361
- echo " # END OF SECTION FOR TESTING HEALTH_CHECK"
362
- echo " # ---------------------------------------"
363
- ;;
364
- *)
365
- # rails 2.3
366
- echo " # -----------------------------------------"
367
- echo " # START OF SECTION FOR TESTING HEALTH_CHECK"
368
- echo " # example controller"
369
- echo " ${var}.connect 'example(/:action(/:id))(.:format)', :controller => 'example'"
370
- echo " if File.exists?('$catchall_file')"
371
- echo " # health_check routes already at the top in rails 2.3! do not need to call health_check_routes"
372
- echo " # CATCH ALL ROUTE"
373
- echo " ${var}.connect '*path', :controller => 'example', :action => 'catchall'"
374
- echo " end"
375
- echo " # END OF SECTION FOR TESTING HEALTH_CHECK"
376
- echo " # ---------------------------------------"
377
- ;;
378
- esac
376
+ # rails 2.3
377
+ echo " # -----------------------------------------"
378
+ echo " # START OF SECTION FOR TESTING HEALTH_CHECK"
379
+ echo " # example controller"
380
+ echo " ${var}.connect 'example(/:action(/:id))(.:format)', :controller => 'example'"
381
+ echo " if File.exists?('$catchall_file')"
382
+ echo " # health_check routes already at the top in rails 2.3! do not need to call health_check_routes"
383
+ echo " # CATCH ALL ROUTE"
384
+ echo " ${var}.connect '*path', :controller => 'example', :action => 'catchall'"
385
+ echo " end"
386
+ echo " # END OF SECTION FOR TESTING HEALTH_CHECK"
387
+ echo " # ---------------------------------------"
379
388
  ruby -n -e 'print if /^end/..9999' config/routes.rb-old | tee /tmp/t$$
380
389
  if [ ! -s /tmp/t$$ ]; then
381
390
  echo "WARNING: ruby -n -e failed silently - using sed instead!! (rbx-19mode has that problem)" >&3
metadata CHANGED
@@ -1,70 +1,103 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: health_check
3
- version: !ruby/object:Gem::Version
4
- version: 1.5.1
3
+ version: !ruby/object:Gem::Version
4
+ hash: 13
5
5
  prerelease:
6
+ segments:
7
+ - 1
8
+ - 6
9
+ - 1
10
+ version: 1.6.1
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Ian Heggie
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2015-03-19 00:00:00.000000000 +11:00
17
+
18
+ date: 2016-09-29 00:00:00 +10:00
13
19
  default_executable:
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
16
22
  name: rails
17
- requirement: &17685240 !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
18
25
  none: false
19
- requirements:
20
- - - ! '>='
21
- - !ruby/object:Gem::Version
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ hash: 3
30
+ segments:
31
+ - 2
32
+ - 3
33
+ - 0
22
34
  version: 2.3.0
23
35
  type: :runtime
24
- prerelease: false
25
- version_requirements: *17685240
26
- - !ruby/object:Gem::Dependency
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
27
38
  name: rake
28
- requirement: &17502900 !ruby/object:Gem::Requirement
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
29
41
  none: false
30
- requirements:
31
- - - ! '>='
32
- - !ruby/object:Gem::Version
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 57
46
+ segments:
47
+ - 0
48
+ - 8
49
+ - 3
33
50
  version: 0.8.3
51
+ - - <
52
+ - !ruby/object:Gem::Version
53
+ hash: 39
54
+ segments:
55
+ - 11
56
+ - 0
57
+ version: "11.0"
34
58
  type: :development
35
- prerelease: false
36
- version_requirements: *17502900
37
- - !ruby/object:Gem::Dependency
59
+ version_requirements: *id002
60
+ - !ruby/object:Gem::Dependency
38
61
  name: shoulda
39
- requirement: &17497480 !ruby/object:Gem::Requirement
62
+ prerelease: false
63
+ requirement: &id003 !ruby/object:Gem::Requirement
40
64
  none: false
41
- requirements:
65
+ requirements:
42
66
  - - ~>
43
- - !ruby/object:Gem::Version
67
+ - !ruby/object:Gem::Version
68
+ hash: 35
69
+ segments:
70
+ - 2
71
+ - 11
72
+ - 0
44
73
  version: 2.11.0
45
74
  type: :development
46
- prerelease: false
47
- version_requirements: *17497480
48
- - !ruby/object:Gem::Dependency
75
+ version_requirements: *id003
76
+ - !ruby/object:Gem::Dependency
49
77
  name: bundler
50
- requirement: &17496680 !ruby/object:Gem::Requirement
78
+ prerelease: false
79
+ requirement: &id004 !ruby/object:Gem::Requirement
51
80
  none: false
52
- requirements:
81
+ requirements:
53
82
  - - ~>
54
- - !ruby/object:Gem::Version
55
- version: '1.2'
83
+ - !ruby/object:Gem::Version
84
+ hash: 11
85
+ segments:
86
+ - 1
87
+ - 2
88
+ version: "1.2"
56
89
  type: :development
57
- prerelease: false
58
- version_requirements: *17496680
59
- description: ! " \tSimple health check of Rails app for uptime monitoring with Pingdom,
60
- NewRelic, EngineYard or uptime.openacs.org etc.\n"
61
- email:
90
+ version_requirements: *id004
91
+ description: " \tSimple health check of Rails app for uptime monitoring with Pingdom, NewRelic, EngineYard or uptime.openacs.org etc.\n"
92
+ email:
62
93
  - ian@heggie.biz
63
94
  executables: []
95
+
64
96
  extensions: []
65
- extra_rdoc_files:
97
+
98
+ extra_rdoc_files:
66
99
  - README.rdoc
67
- files:
100
+ files:
68
101
  - .document
69
102
  - .gitignore
70
103
  - .travis.yml
@@ -91,9 +124,7 @@ files:
91
124
  - test/migrate/twelve/012_create_users.rb
92
125
  - test/migrate/twelve/9_create_countries.rb
93
126
  - test/rails_2.3.gemfile
94
- - test/rails_3.0.gemfile
95
- - test/rails_3.1.gemfile
96
- - test/rails_3.2.gemfile
127
+ - test/rails_2.3_lts.gemfile
97
128
  - test/setup_railsapp
98
129
  - test/test_helper.rb
99
130
  - test/test_with_railsapp
@@ -103,30 +134,38 @@ files:
103
134
  has_rdoc: true
104
135
  homepage: https://github.com/ianheggie/health_check
105
136
  licenses: []
137
+
106
138
  post_install_message:
107
139
  rdoc_options: []
108
- require_paths:
140
+
141
+ require_paths:
109
142
  - lib
110
- required_ruby_version: !ruby/object:Gem::Requirement
143
+ required_ruby_version: !ruby/object:Gem::Requirement
111
144
  none: false
112
- requirements:
113
- - - ! '>='
114
- - !ruby/object:Gem::Version
115
- version: '0'
116
- required_rubygems_version: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ hash: 3
149
+ segments:
150
+ - 0
151
+ version: "0"
152
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
153
  none: false
118
- requirements:
119
- - - ! '>='
120
- - !ruby/object:Gem::Version
121
- version: '0'
154
+ requirements:
155
+ - - ">="
156
+ - !ruby/object:Gem::Version
157
+ hash: 3
158
+ segments:
159
+ - 0
160
+ version: "0"
122
161
  requirements: []
162
+
123
163
  rubyforge_project:
124
- rubygems_version: 1.3.9.5
164
+ rubygems_version: 1.6.2
125
165
  signing_key:
126
166
  specification_version: 3
127
- summary: Simple health check of Rails app for uptime monitoring with Pingdom, NewRelic,
128
- EngineYard or uptime.openacs.org etc.
129
- test_files:
167
+ summary: Simple health check of Rails app for uptime monitoring with Pingdom, NewRelic, EngineYard or uptime.openacs.org etc.
168
+ test_files:
130
169
  - test/fake_smtp_server
131
170
  - test/init_variables
132
171
  - test/migrate/empty/do_not_remove.txt
@@ -135,9 +174,7 @@ test_files:
135
174
  - test/migrate/twelve/012_create_users.rb
136
175
  - test/migrate/twelve/9_create_countries.rb
137
176
  - test/rails_2.3.gemfile
138
- - test/rails_3.0.gemfile
139
- - test/rails_3.1.gemfile
140
- - test/rails_3.2.gemfile
177
+ - test/rails_2.3_lts.gemfile
141
178
  - test/setup_railsapp
142
179
  - test/test_helper.rb
143
180
  - test/test_with_railsapp
@@ -1,16 +0,0 @@
1
- # Gemfile for health_test testing
2
-
3
- source 'https://rubygems.org'
4
-
5
- gem 'rails', "~> 3.0.19"
6
- gem 'rake', '>= 0.8.3'
7
-
8
- group :development, :test do
9
- if defined?(JRUBY_VERSION)
10
- gem 'jruby-openssl'
11
- gem 'activerecord-jdbcsqlite3-adapter'
12
- else
13
- gem 'sqlite3', "~> 1.3.7"
14
- end
15
- gem 'shoulda', "~> 2.11.0"
16
- end
@@ -1,24 +0,0 @@
1
- # Gemfile for health_test testing
2
-
3
- source 'https://rubygems.org'
4
-
5
- gem 'rails', "~> 3.1.0"
6
- gem 'rake', '>= 0.8.3'
7
-
8
-
9
- group :development, :test do
10
- if defined?(JRUBY_VERSION)
11
- gem 'jruby-openssl'
12
- gem 'activerecord-jdbcsqlite3-adapter'
13
- else
14
- gem 'sqlite3', "~> 1.3.7"
15
- end
16
- gem 'shoulda', "~> 2.11.0"
17
- end
18
-
19
- # next version requires ruby 1.9.3
20
- gem 'i18n', '~> 0.6.11' if RUBY_VERSION < '1.9.3' # REQUIRED
21
-
22
- # Initial Gemfile has therubyracer commented out
23
- gem 'therubyrhino', :platform => :jruby # REQUIRED
24
- gem 'therubyracer', :platform => :ruby # REQUIRED
@@ -1,23 +0,0 @@
1
- # Gemfile for health_test testing
2
-
3
- source 'https://rubygems.org'
4
-
5
- gem 'rails', "~> 3.2.0"
6
- gem 'rake', '>= 0.8.3'
7
-
8
- group :development, :test do
9
- if defined?(JRUBY_VERSION)
10
- gem 'jruby-openssl'
11
- gem 'activerecord-jdbcsqlite3-adapter'
12
- else
13
- gem 'sqlite3', "~> 1.3.7"
14
- end
15
- gem 'shoulda', "~> 2.11.0"
16
- end
17
-
18
- # next version requires ruby 1.9.3
19
- gem 'i18n', '~> 0.6.11' if RUBY_VERSION < '1.9.3' # REQUIRED
20
-
21
- # Initial Gemfile has therubyracer commented out
22
- gem 'therubyrhino', :platform => :jruby # REQUIRED
23
- gem 'therubyracer', :platform => :ruby # REQUIRED