health_check 1.6.1 → 1.6.2

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/CHANGELOG CHANGED
@@ -1,6 +1,7 @@
1
1
  = Change Log =
2
2
 
3
3
  * rails2.3 branch
4
+ *1.6.2 - Added Vagrantfile with provisioning script for easier testing, removed badges that don't work with branches
4
5
  *1.6.1 - rails 2.3 only version
5
6
  * rails 2.3 only version
6
7
  *1.6.0
data/README.rdoc CHANGED
@@ -195,38 +195,50 @@ See https://github.com/ianheggie/health_check/wiki/Ajax-Example for an Ajax exam
195
195
 
196
196
  == Testing
197
197
 
198
- === Automated testing and other checks
198
+ === Automated testing
199
199
 
200
- * {<img src="https://badge.fury.io/rb/health_check.png" alt="Gem Version" />}[http://badge.fury.io/rb/health_check] - Latest Gem
201
- * {<img src="https://travis-ci.org/ianheggie/health_check.png">}[https://travis-ci.org/ianheggie/health_check] - Travis CI
202
- * {<img src="https://codeclimate.com/github/ianheggie/health_check.png" />}[https://codeclimate.com/github/ianheggie/health_check] - Code quality
203
- * {<img src="https://gemnasium.com/ianheggie/health_check.png">}[https://gemnasium.com/ianheggie/health_check] - Gem dependencies
200
+ * {<img src="https://travis-ci.org/ianheggie/health_check.svg?branch=rails2.3">}[https://travis-ci.org/ianheggie/health_check.svg?branch=rails2.3] - Travis CI
204
201
 
205
202
  === Manual testing
206
203
 
207
- The test will package up and install the gem under a temporary path, create a dummy rails app configured for sqlite,
208
- install the gem, and then run up tests against the server.
209
- This will require TCP port 3456 to be free.
204
+ The instructions have been changed to using a vagrant virtual box for consistant results.
210
205
 
211
- Using rbenv or rvm, install and set the version of ruby you wish to test against.
212
- You will need to install the bundler gem if using rbenv.
213
- See the <tt>.travis.yml</tt> file for the list of ruby versions that we test against.
214
-
215
- * rbenv command: <tt>rbenv shell 1.8.7-p371</tt>
216
- * rvm command: <tt>rvm use 1.9.3</tt>
206
+ Install vagrant 1.9.7 or later and virtual_box or other local virtual machine providor.
217
207
 
218
208
  Create a temp directory for throw away testing, and clone the health_check gem into it
219
209
 
220
210
  mkdir -p ~/tmp
221
211
  cd ~/tmp
222
- git clone https://github.com/ianheggie/health_check.git
212
+ git clone https://github.com/ianheggie/health_check.git ~/tmp/health_check
213
+
214
+ The Vagrantfile includes provisioning rules to install chruby (ruby version control),
215
+ ruby-build will also be installed and run to build various rubies under /opt/rubies.
216
+
217
+ Use <tt>vagrant ssh</tt> to connect to the virtual box and run tests.
218
+
219
+ The test script will package up and install the gem under a temporary path, create a dummy rails app configured for sqlite,
220
+ install the gem, and then run up tests against the server.
221
+ This will require TCP port 3456 to be free.
223
222
 
224
223
  Cd to the checked out health_check directory and then run the test as follows:
225
224
 
226
225
  cd ~/tmp/health_check
227
226
 
227
+ vagrant up # this will also run vagrant provision and take some time
228
+ # chruby and various ruby versions will be installed
229
+
230
+ vagrant ssh
231
+
232
+ cd /vagrant # the current directory on your host is mounted here on the virtual machine
233
+
234
+ chruby 1.8.7
235
+ # or
236
+ chruby 1.9.3
237
+
228
238
  test/test_with_railsapp
229
239
 
240
+ exit # from viretual machine when finished
241
+
230
242
  The script will first call `test/setup_railsapp` to setup a rails app with health_check installed and then
231
243
  run up the rails server and perform veraious tests.
232
244
 
@@ -237,7 +249,7 @@ The command `rake test` will also launch these tests, except it cannot install t
237
249
 
238
250
  == Copyright
239
251
 
240
- Copyright (c) 2010-2015 Ian Heggie, released under the MIT license.
252
+ Copyright (c) 2010-2017 Ian Heggie, released under the MIT license.
241
253
  See MIT-LICENSE for details.
242
254
 
243
255
  == Contributors
data/Vagrantfile ADDED
@@ -0,0 +1,20 @@
1
+ # -*- mode: ruby -*-
2
+ # vi: set ft=ruby :
3
+
4
+ Vagrant.configure("2") do |config|
5
+ # For a complete reference, please see the online documentation at
6
+ # https://docs.vagrantup.com.
7
+
8
+ config.vm.box = "ubuntu/xenial64"
9
+
10
+ # set auto_update to false, if you do NOT want to check the correct
11
+ # additions version when booting this machine
12
+ config.vbguest.auto_update = false
13
+
14
+ # do NOT download the iso file from a webserver
15
+ config.vbguest.no_remote = true
16
+
17
+ # provision with a shell script.
18
+ config.vm.provision "shell", path: "./test/provision_vagrant"
19
+
20
+ end
@@ -1,4 +1,4 @@
1
1
  module HealthCheck
2
- VERSION = "1.6.1"
2
+ VERSION = "1.6.2"
3
3
  end
4
4
 
data/test/init_variables CHANGED
@@ -20,6 +20,8 @@ if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
20
20
  echo "Detected user installed rvm"
21
21
  elif [[ -s "/usr/local/rvm/scripts/rvm" ]] ; then
22
22
  echo "Detected root installed rvm"
23
+ elif [[ -s /usr/local/share/chruby/chruby.sh ]] ; then
24
+ echo "Detected root installed chruby"
23
25
  elif [[ -d "$HOME/.rbenv" ]] ; then
24
26
  echo "Detected rbenv: `rbenv version`"
25
27
  rehash='rbenv rehash'
@@ -0,0 +1,79 @@
1
+ #!/bin/bash
2
+
3
+ case `id` in
4
+ *root*)
5
+ ;;
6
+ *)
7
+ exec echo Must be run as root
8
+ ;;
9
+ esac
10
+
11
+ chruby_version=0.3.9
12
+ chruby=chruby-${chruby_version}
13
+
14
+ set -xe
15
+ id
16
+ pwd
17
+ export DEBIAN_FRONTEND=noninteractive
18
+ find /tmp/got-apt-update -mtime -1 || ( apt-get update && touch /tmp/got-apt-update )
19
+ apt install --yes --force-yes -q ruby ruby-dev sqlite3 libsqlite3-dev nodejs subversion git git-core
20
+ # https://github.com/rbenv/ruby-build/wiki#suggested-build-environment
21
+ # using default gcc-5 since xenial doesn't have gcc-6
22
+ apt install --yes --force-yes -q gcc-5 autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
23
+
24
+ # The following is not required for testing, install if you are doing manual tests with extra gems
25
+ # apt install --yes --force-yes -q mysql-client mysql-server libmysqlclient-dev
26
+ # apt install --yes --force-yes -q libcurl4-openssl-dev libncurses5-dev libxml2-dev libxslt1-dev
27
+ (
28
+ echo Install chruby
29
+ [ -s ${chruby}.tar.gz ] || wget -q -O ${chruby}.tar.gz https://github.com/postmodern/chruby/archive/v${chruby_version}.tar.gz
30
+ [ -d ${chruby} ] || tar -xzf ${chruby}.tar.gz
31
+ cd ${chruby}/
32
+ ./scripts/setup.sh
33
+ cat > /etc/profile.d/chruby.sh <<'EOF'
34
+ if [ -n "$BASH_VERSION" ] || [ -n "$ZSH_VERSION" ]; then
35
+ source /usr/local/share/chruby/chruby.sh
36
+ #source /usr/local/share/chruby/auto
37
+ fi
38
+ EOF
39
+ chmod a+r /etc/profile.d/chruby.sh
40
+ )
41
+
42
+ (
43
+ [ -d ruby-build ] || git clone https://github.com/rbenv/ruby-build.git
44
+ which ruby-build || PREFIX=/usr/local ./ruby-build/install.sh
45
+
46
+ mkdir -p /opt/rubies
47
+ v=1.8.7-p375
48
+ [ -x /opt/rubies/${v}/bin/bundle ] || ( ruby-build ${v} /opt/rubies/${v} && /opt/rubies/${v}/bin/gem update --system 1.8.25 && /opt/rubies/${v}/bin/gem install bundler )
49
+
50
+ v=1.9.3-p551
51
+ [ -x /opt/rubies/${v}/bin/bundle ] || ( ruby-build ${v} /opt/rubies/${v} && /opt/rubies/${v}/bin/gem install bundler )
52
+
53
+ #for v in 2.2.0
54
+ #do
55
+ # [ -x /opt/rubies/${v}/bin/bundle ] || ( ruby-build ${v} /opt/rubies/${v} && /opt/rubies/${v}/bin/gem install bundler )
56
+ #done
57
+ )
58
+
59
+ echo Setup system ruby
60
+ which bundle || gem install bundler
61
+ bundle --version
62
+ set +x
63
+ cat <<EOF
64
+
65
+ Now test by running the following commands:
66
+
67
+ vagrant ssh
68
+ cd /vagrant
69
+
70
+ chruby RUBY_VERSION
71
+ or
72
+ chruby system # for system version 2.3.1
73
+
74
+ ./test/test_with_railsapp
75
+
76
+ exit
77
+
78
+ EOF
79
+ exit
metadata CHANGED
@@ -1,103 +1,95 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: health_check
3
- version: !ruby/object:Gem::Version
4
- hash: 13
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.6.2
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 6
9
- - 1
10
- version: 1.6.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Ian Heggie
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2016-09-29 00:00:00 +10:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2017-10-25 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: rails
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
18
+ requirements:
27
19
  - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 2
32
- - 3
33
- - 0
20
+ - !ruby/object:Gem::Version
34
21
  version: 2.3.0
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: rake
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 2.3.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: rake
32
+ requirement: !ruby/object:Gem::Requirement
41
33
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 57
46
- segments:
47
- - 0
48
- - 8
49
- - 3
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
50
37
  version: 0.8.3
51
38
  - - <
52
- - !ruby/object:Gem::Version
53
- hash: 39
54
- segments:
55
- - 11
56
- - 0
57
- version: "11.0"
39
+ - !ruby/object:Gem::Version
40
+ version: '11.0'
58
41
  type: :development
59
- version_requirements: *id002
60
- - !ruby/object:Gem::Dependency
61
- name: shoulda
62
42
  prerelease: false
63
- requirement: &id003 !ruby/object:Gem::Requirement
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ! '>='
47
+ - !ruby/object:Gem::Version
48
+ version: 0.8.3
49
+ - - <
50
+ - !ruby/object:Gem::Version
51
+ version: '11.0'
52
+ - !ruby/object:Gem::Dependency
53
+ name: shoulda
54
+ requirement: !ruby/object:Gem::Requirement
64
55
  none: false
65
- requirements:
56
+ requirements:
66
57
  - - ~>
67
- - !ruby/object:Gem::Version
68
- hash: 35
69
- segments:
70
- - 2
71
- - 11
72
- - 0
58
+ - !ruby/object:Gem::Version
73
59
  version: 2.11.0
74
60
  type: :development
75
- version_requirements: *id003
76
- - !ruby/object:Gem::Dependency
77
- name: bundler
78
61
  prerelease: false
79
- requirement: &id004 !ruby/object:Gem::Requirement
62
+ version_requirements: !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ~>
66
+ - !ruby/object:Gem::Version
67
+ version: 2.11.0
68
+ - !ruby/object:Gem::Dependency
69
+ name: bundler
70
+ requirement: !ruby/object:Gem::Requirement
80
71
  none: false
81
- requirements:
72
+ requirements:
82
73
  - - ~>
83
- - !ruby/object:Gem::Version
84
- hash: 11
85
- segments:
86
- - 1
87
- - 2
88
- version: "1.2"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.2'
89
76
  type: :development
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:
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ none: false
80
+ requirements:
81
+ - - ~>
82
+ - !ruby/object:Gem::Version
83
+ version: '1.2'
84
+ description: ! " \tSimple health check of Rails app for uptime monitoring with Pingdom,
85
+ NewRelic, EngineYard or uptime.openacs.org etc.\n"
86
+ email:
93
87
  - ian@heggie.biz
94
88
  executables: []
95
-
96
89
  extensions: []
97
-
98
- extra_rdoc_files:
90
+ extra_rdoc_files:
99
91
  - README.rdoc
100
- files:
92
+ files:
101
93
  - .document
102
94
  - .gitignore
103
95
  - .travis.yml
@@ -107,6 +99,7 @@ files:
107
99
  - README.rdoc
108
100
  - Rakefile
109
101
  - VERSION
102
+ - Vagrantfile
110
103
  - config/routes.rb
111
104
  - health_check.gemspec
112
105
  - init.rb
@@ -123,6 +116,7 @@ files:
123
116
  - test/migrate/twelve/011_create_roles.roles.rb
124
117
  - test/migrate/twelve/012_create_users.rb
125
118
  - test/migrate/twelve/9_create_countries.rb
119
+ - test/provision_vagrant
126
120
  - test/rails_2.3.gemfile
127
121
  - test/rails_2.3_lts.gemfile
128
122
  - test/setup_railsapp
@@ -131,41 +125,35 @@ files:
131
125
  - test/testurl
132
126
  - test/unit/health_check_controller_test.rb
133
127
  - test/unit/routes_test.rb
134
- has_rdoc: true
135
128
  homepage: https://github.com/ianheggie/health_check
136
129
  licenses: []
137
-
138
130
  post_install_message:
139
131
  rdoc_options: []
140
-
141
- require_paths:
132
+ require_paths:
142
133
  - lib
143
- required_ruby_version: !ruby/object:Gem::Requirement
134
+ required_ruby_version: !ruby/object:Gem::Requirement
144
135
  none: false
145
- requirements:
146
- - - ">="
147
- - !ruby/object:Gem::Version
148
- hash: 3
149
- segments:
136
+ requirements:
137
+ - - ! '>='
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ segments:
150
141
  - 0
151
- version: "0"
152
- required_rubygems_version: !ruby/object:Gem::Requirement
142
+ hash: 4237956159374351486
143
+ required_rubygems_version: !ruby/object:Gem::Requirement
153
144
  none: false
154
- requirements:
155
- - - ">="
156
- - !ruby/object:Gem::Version
157
- hash: 3
158
- segments:
159
- - 0
160
- version: "0"
145
+ requirements:
146
+ - - ! '>='
147
+ - !ruby/object:Gem::Version
148
+ version: '0'
161
149
  requirements: []
162
-
163
150
  rubyforge_project:
164
- rubygems_version: 1.6.2
151
+ rubygems_version: 1.8.23.2
165
152
  signing_key:
166
153
  specification_version: 3
167
- summary: Simple health check of Rails app for uptime monitoring with Pingdom, NewRelic, EngineYard or uptime.openacs.org etc.
168
- test_files:
154
+ summary: Simple health check of Rails app for uptime monitoring with Pingdom, NewRelic,
155
+ EngineYard or uptime.openacs.org etc.
156
+ test_files:
169
157
  - test/fake_smtp_server
170
158
  - test/init_variables
171
159
  - test/migrate/empty/do_not_remove.txt
@@ -173,6 +161,7 @@ test_files:
173
161
  - test/migrate/twelve/011_create_roles.roles.rb
174
162
  - test/migrate/twelve/012_create_users.rb
175
163
  - test/migrate/twelve/9_create_countries.rb
164
+ - test/provision_vagrant
176
165
  - test/rails_2.3.gemfile
177
166
  - test/rails_2.3_lts.gemfile
178
167
  - test/setup_railsapp