taps 0.3.23 → 0.3.24

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,4 +2,4 @@
2
2
  :build:
3
3
  :major: 0
4
4
  :minor: 3
5
- :patch: 23
5
+ :patch: 24
@@ -7,6 +7,7 @@ require 'vendor/okjson'
7
7
 
8
8
  Taps::Config.taps_database_url = ENV['TAPS_DATABASE_URL'] || begin
9
9
  # this is dirty but it solves a weird problem where the tempfile disappears mid-process
10
+ require 'sqlite3'
10
11
  $__taps_database = Tempfile.new('taps.db')
11
12
  $__taps_database.open()
12
13
  "sqlite://#{$__taps_database.path}"
@@ -1,5 +1,4 @@
1
1
  require 'sequel'
2
- require 'sqlite3'
3
2
  require 'taps/version'
4
3
 
5
4
  Sequel.datetime_class = DateTime
@@ -38,12 +38,19 @@ class Server < Sinatra::Base
38
38
  end
39
39
 
40
40
  before do
41
- major, minor, patch = request.env['HTTP_TAPS_VERSION'].split('.') rescue []
42
- unless "#{major}.#{minor}" == Taps.compatible_version && patch.to_i >= 22
43
- halt 417, "Taps >= v#{Taps.compatible_version}.22 is required for this server"
41
+ unless request.path_info == '/health'
42
+ major, minor, patch = request.env['HTTP_TAPS_VERSION'].split('.') rescue []
43
+ unless "#{major}.#{minor}" == Taps.compatible_version && patch.to_i >= 23
44
+ halt 417, "Taps >= v#{Taps.compatible_version}.22 is required for this server"
45
+ end
44
46
  end
45
47
  end
46
48
 
49
+ get '/health' do
50
+ content_type 'application/json'
51
+ OkJson.encode({ :ok => true })
52
+ end
53
+
47
54
  get '/' do
48
55
  "hello"
49
56
  end
@@ -31,5 +31,10 @@ describe Taps::Server do
31
31
  get('/', { }, { 'HTTP_AUTHORIZATION' => @auth_header, 'HTTP_TAPS_VERSION' => '0.0.1' })
32
32
  last_response.status.should == 417
33
33
  end
34
+
35
+ it "allows healthcheck to be accessed w/o HTTP_TAPS_VERSION" do
36
+ get('/health', { }, { 'HTTP_AUTHORIZATION' => @auth_header })
37
+ last_response.status.should == 200
38
+ end
34
39
  end
35
40
 
metadata CHANGED
@@ -1,196 +1,188 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: taps
3
- version: !ruby/object:Gem::Version
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.24
4
5
  prerelease:
5
- version: 0.3.23
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Ricardo Chimal, Jr.
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
-
13
- date: 2011-04-07 00:00:00 -04:00
14
- default_executable:
15
- dependencies:
16
- - !ruby/object:Gem::Dependency
12
+ date: 2012-04-27 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
17
15
  name: rack
18
- prerelease: false
19
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &11641340 !ruby/object:Gem::Requirement
20
17
  none: false
21
- requirements:
22
- - - ">="
23
- - !ruby/object:Gem::Version
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
24
21
  version: 1.0.1
25
22
  type: :runtime
26
- version_requirements: *id001
27
- - !ruby/object:Gem::Dependency
28
- name: rest-client
29
23
  prerelease: false
30
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *11641340
25
+ - !ruby/object:Gem::Dependency
26
+ name: rest-client
27
+ requirement: &11640820 !ruby/object:Gem::Requirement
31
28
  none: false
32
- requirements:
33
- - - ">="
34
- - !ruby/object:Gem::Version
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
35
32
  version: 1.4.0
36
33
  - - <
37
- - !ruby/object:Gem::Version
34
+ - !ruby/object:Gem::Version
38
35
  version: 1.7.0
39
36
  type: :runtime
40
- version_requirements: *id002
41
- - !ruby/object:Gem::Dependency
42
- name: sequel
43
37
  prerelease: false
44
- requirement: &id003 !ruby/object:Gem::Requirement
38
+ version_requirements: *11640820
39
+ - !ruby/object:Gem::Dependency
40
+ name: sequel
41
+ requirement: &11716480 !ruby/object:Gem::Requirement
45
42
  none: false
46
- requirements:
43
+ requirements:
47
44
  - - ~>
48
- - !ruby/object:Gem::Version
45
+ - !ruby/object:Gem::Version
49
46
  version: 3.20.0
50
47
  type: :runtime
51
- version_requirements: *id003
52
- - !ruby/object:Gem::Dependency
53
- name: sinatra
54
48
  prerelease: false
55
- requirement: &id004 !ruby/object:Gem::Requirement
49
+ version_requirements: *11716480
50
+ - !ruby/object:Gem::Dependency
51
+ name: sinatra
52
+ requirement: &11716020 !ruby/object:Gem::Requirement
56
53
  none: false
57
- requirements:
54
+ requirements:
58
55
  - - ~>
59
- - !ruby/object:Gem::Version
56
+ - !ruby/object:Gem::Version
60
57
  version: 1.0.0
61
58
  type: :runtime
62
- version_requirements: *id004
63
- - !ruby/object:Gem::Dependency
64
- name: sqlite3-ruby
65
59
  prerelease: false
66
- requirement: &id005 !ruby/object:Gem::Requirement
60
+ version_requirements: *11716020
61
+ - !ruby/object:Gem::Dependency
62
+ name: sqlite3
63
+ requirement: &11715560 !ruby/object:Gem::Requirement
67
64
  none: false
68
- requirements:
65
+ requirements:
69
66
  - - ~>
70
- - !ruby/object:Gem::Version
71
- version: "1.2"
72
- type: :runtime
73
- version_requirements: *id005
74
- - !ruby/object:Gem::Dependency
75
- name: bacon
67
+ - !ruby/object:Gem::Version
68
+ version: '1.2'
69
+ type: :development
76
70
  prerelease: false
77
- requirement: &id006 !ruby/object:Gem::Requirement
71
+ version_requirements: *11715560
72
+ - !ruby/object:Gem::Dependency
73
+ name: bacon
74
+ requirement: &11715180 !ruby/object:Gem::Requirement
78
75
  none: false
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: "0"
76
+ requirements:
77
+ - - ! '>='
78
+ - !ruby/object:Gem::Version
79
+ version: '0'
83
80
  type: :development
84
- version_requirements: *id006
85
- - !ruby/object:Gem::Dependency
86
- name: mocha
87
81
  prerelease: false
88
- requirement: &id007 !ruby/object:Gem::Requirement
82
+ version_requirements: *11715180
83
+ - !ruby/object:Gem::Dependency
84
+ name: mocha
85
+ requirement: &11714720 !ruby/object:Gem::Requirement
89
86
  none: false
90
- requirements:
91
- - - ">="
92
- - !ruby/object:Gem::Version
93
- version: "0"
87
+ requirements:
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
94
91
  type: :development
95
- version_requirements: *id007
96
- - !ruby/object:Gem::Dependency
97
- name: rack-test
98
92
  prerelease: false
99
- requirement: &id008 !ruby/object:Gem::Requirement
93
+ version_requirements: *11714720
94
+ - !ruby/object:Gem::Dependency
95
+ name: rack-test
96
+ requirement: &11714300 !ruby/object:Gem::Requirement
100
97
  none: false
101
- requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- version: "0"
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
105
102
  type: :development
106
- version_requirements: *id008
107
- - !ruby/object:Gem::Dependency
108
- name: rake
109
103
  prerelease: false
110
- requirement: &id009 !ruby/object:Gem::Requirement
104
+ version_requirements: *11714300
105
+ - !ruby/object:Gem::Dependency
106
+ name: rake
107
+ requirement: &11713880 !ruby/object:Gem::Requirement
111
108
  none: false
112
- requirements:
113
- - - ">="
114
- - !ruby/object:Gem::Version
115
- version: "0"
109
+ requirements:
110
+ - - ! '>='
111
+ - !ruby/object:Gem::Version
112
+ version: '0'
116
113
  type: :development
117
- version_requirements: *id009
118
- - !ruby/object:Gem::Dependency
119
- name: rcov
120
114
  prerelease: false
121
- requirement: &id010 !ruby/object:Gem::Requirement
115
+ version_requirements: *11713880
116
+ - !ruby/object:Gem::Dependency
117
+ name: rcov
118
+ requirement: &11713460 !ruby/object:Gem::Requirement
122
119
  none: false
123
- requirements:
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- version: "0"
120
+ requirements:
121
+ - - ! '>='
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
127
124
  type: :development
128
- version_requirements: *id010
129
- description: A simple database agnostic import/export app to transfer data to/from a remote database.
125
+ prerelease: false
126
+ version_requirements: *11713460
127
+ description: A simple database agnostic import/export app to transfer data to/from
128
+ a remote database.
130
129
  email: ricardo@heroku.com
131
- executables:
130
+ executables:
132
131
  - taps
133
132
  - schema
134
133
  extensions: []
135
-
136
134
  extra_rdoc_files: []
137
-
138
- files:
135
+ files:
136
+ - bin/taps
139
137
  - bin/schema
140
138
  - bin/schema.cmd
141
- - bin/taps
142
- - lib/taps/chunksize.rb
143
- - lib/taps/cli.rb
144
- - lib/taps/config.rb
145
- - lib/taps/data_stream.rb
146
- - lib/taps/db_session.rb
147
- - lib/taps/errors.rb
148
- - lib/taps/log.rb
139
+ - spec/chunksize_spec.rb
140
+ - spec/operation_spec.rb
141
+ - spec/server_spec.rb
142
+ - spec/cli_spec.rb
143
+ - spec/data_stream_spec.rb
144
+ - spec/base.rb
145
+ - spec/utils_spec.rb
146
+ - README.rdoc
149
147
  - lib/taps/monkey.rb
150
- - lib/taps/multipart.rb
148
+ - lib/taps/utils.rb
151
149
  - lib/taps/operation.rb
152
- - lib/taps/progress_bar.rb
150
+ - lib/taps/chunksize.rb
151
+ - lib/taps/data_stream.rb
152
+ - lib/taps/cli.rb
153
153
  - lib/taps/schema.rb
154
+ - lib/taps/log.rb
155
+ - lib/taps/db_session.rb
154
156
  - lib/taps/server.rb
155
- - lib/taps/utils.rb
157
+ - lib/taps/progress_bar.rb
158
+ - lib/taps/multipart.rb
159
+ - lib/taps/errors.rb
160
+ - lib/taps/config.rb
156
161
  - lib/taps/version.rb
157
162
  - lib/vendor/okjson.rb
158
- - README.rdoc
159
- - spec/base.rb
160
- - spec/chunksize_spec.rb
161
- - spec/cli_spec.rb
162
- - spec/data_stream_spec.rb
163
- - spec/operation_spec.rb
164
- - spec/server_spec.rb
165
- - spec/utils_spec.rb
166
163
  - VERSION.yml
167
- has_rdoc: true
168
164
  homepage: http://github.com/ricardochimal/taps
169
165
  licenses: []
170
-
171
166
  post_install_message:
172
167
  rdoc_options: []
173
-
174
- require_paths:
168
+ require_paths:
175
169
  - lib
176
- required_ruby_version: !ruby/object:Gem::Requirement
170
+ required_ruby_version: !ruby/object:Gem::Requirement
177
171
  none: false
178
- requirements:
179
- - - ">="
180
- - !ruby/object:Gem::Version
181
- version: "0"
182
- required_rubygems_version: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ! '>='
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
176
+ required_rubygems_version: !ruby/object:Gem::Requirement
183
177
  none: false
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: "0"
178
+ requirements:
179
+ - - ! '>='
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
188
182
  requirements: []
189
-
190
183
  rubyforge_project:
191
- rubygems_version: 1.6.2
184
+ rubygems_version: 1.8.11
192
185
  signing_key:
193
186
  specification_version: 3
194
187
  summary: simple database import/export app
195
188
  test_files: []
196
-