diff options
author | Smit Shah <who828@gmail.com> | 2014-03-04 23:25:56 +0530 |
---|---|---|
committer | Smit Shah <who828@gmail.com> | 2014-03-04 23:25:56 +0530 |
commit | a0b4d3864c786f2e4b085b212984144680ae6fb0 (patch) | |
tree | 6c7b44d7ac648c97b3fcf42198b8b2647439f018 | |
parent | 6a04e5b9b5a0ce75a2262ec60d3847f19e149de8 (diff) | |
download | bundler-a0b4d3864c786f2e4b085b212984144680ae6fb0.tar.gz |
Redirect to bundler.rubygems.org if the host is rubygems.org
-rw-r--r-- | lib/bundler/fetcher.rb | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/bundler/fetcher.rb b/lib/bundler/fetcher.rb index 6511e3bbb7..be11e3680e 100644 --- a/lib/bundler/fetcher.rb +++ b/lib/bundler/fetcher.rb @@ -292,7 +292,7 @@ module Bundler end def dependency_api_uri(gem_names = []) - url = "#{@remote_uri}api/v1/dependencies" + url = "#{redirected_uri}api/v1/dependencies" url << "?gems=#{URI.encode(gem_names.join(","))}" if gem_names.any? URI.parse(url) end @@ -378,5 +378,19 @@ module Bundler yield end + private + def redirected_uri + return bundler_uri if rubygems? + return @remote_uri + end + + def rubygems? + @remote_uri.host == "rubygems.org" + end + + def bundler_uri + URI.parse("#{@remote_uri.scheme}://bundler.#{@remote_uri.host}/") + end + end end |