Skip to content

Commit cfb6dff

Browse files
committed
!fix: use rack-reverse-proxy fix for rack 3 compat
note using pr fix from unmaintained gem waterlink/rack-reverse-proxy#73
1 parent b812dc0 commit cfb6dff

File tree

5 files changed

+26
-5
lines changed

5 files changed

+26
-5
lines changed

Gemfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,9 @@ if ENV['X_PACT_DEVELOPMENT']
99
gem "pact-message", path: '../pact-message-ruby'
1010
gem "pact-support", path: '../pact-support'
1111
end
12+
13+
if ENV['RACK_VERSION'] == '2'
14+
gem 'rack-reverse-proxy'
15+
else
16+
gem 'rack-reverse-proxy', git: 'https://github.com/samedi/rack-reverse-proxy.git', ref: '06f21feb6afbbf902969c4f1df219df8f2080387'
17+
end

pact-provider-verifier.gemspec

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,13 @@ Gem::Specification.new do |gem|
2626
gem.add_runtime_dependency 'faraday', '~> 2.5'
2727
gem.add_runtime_dependency 'faraday-retry', '~> 2.2'
2828
gem.add_runtime_dependency 'json', '>1.8'
29-
gem.add_runtime_dependency 'rack', '>= 3.0', '< 4.0'
30-
gem.add_runtime_dependency 'rackup', '~> 2.0'
31-
29+
if ENV['RACK_VERSION'] == '2'
30+
gem.add_runtime_dependency 'rack', '>= 2.0', '< 3.0'
31+
else
32+
gem.add_runtime_dependency 'rack', '>= 3.0', '< 4.0'
33+
gem.add_runtime_dependency 'rackup', '~> 2.0'
34+
end
35+
3236
gem.add_runtime_dependency 'rack-reverse-proxy'
3337
gem.add_runtime_dependency 'rspec_junit_formatter', '~> 0.3'
3438
gem.add_runtime_dependency 'ostruct'

spec/support/provider-echo-host.ru

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ require 'json'
22

33
run -> (env) {
44
body = {"Host" => env['HTTP_HOST']}.to_json
5-
[200, {"Content-Type" => "application/json"}, [body]]
5+
[200, {"content-type" => "application/json"}, [body]]
66
}

spec/support/provider_with_self_signed_cert.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
def run_provider_with_self_signed_cert port
44
# trap 'INT' do @server.shutdown end
55
require 'rack'
6-
require 'rack/handler/webrick'
6+
require_relative 'webbrick'
77
require 'webrick/https'
88

99
webrick_opts = {:Port => port, :SSLEnable => true, :SSLCertName => [%w[CN localhost]]}

spec/support/webbrick.rb

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
module Rack
2+
module Handler
3+
begin
4+
require 'rack/handler/webrick'
5+
WEBrick = Class.new(Rack::Handler::WEBrick)
6+
rescue LoadError
7+
require 'rackup/handler/webrick'
8+
WEBrick = Class.new(Rackup::Handler::WEBrick)
9+
end
10+
end
11+
end

0 commit comments

Comments
 (0)