diff options
author | Douwe Maan <douwe@gitlab.com> | 2016-03-12 17:42:51 +0000 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2016-03-12 17:42:51 +0000 |
commit | 5a586f364c5d2b866d6a074eff7996f05585b7d5 (patch) | |
tree | 6f27747ad662ae16f588e9706ac5e3668bc515e6 /lib | |
parent | 826bc72c12cde117c52bfc4b2acb59254a24eff9 (diff) | |
download | gitlab-ce-5a586f364c5d2b866d6a074eff7996f05585b7d5.tar.gz |
Revert "Merge branch 'support-go-subpackages' into 'master'
"
This reverts merge request !3191
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitlab/middleware/go.rb | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/lib/gitlab/middleware/go.rb b/lib/gitlab/middleware/go.rb deleted file mode 100644 index 50b0dd32380..00000000000 --- a/lib/gitlab/middleware/go.rb +++ /dev/null @@ -1,50 +0,0 @@ -# A dumb middleware that returns a Go HTML document if the go-get=1 query string -# is used irrespective if the namespace/project exists -module Gitlab - module Middleware - class Go - def initialize(app) - @app = app - end - - def call(env) - request = Rack::Request.new(env) - - if go_request?(request) - render_go_doc(request) - else - @app.call(env) - end - end - - private - - def render_go_doc(request) - body = go_body(request) - response = Rack::Response.new(body, 200, { 'Content-Type' => 'text/html' }) - response.finish - end - - def go_request?(request) - request["go-get"].to_i == 1 && request.env["PATH_INFO"].present? - end - - def go_body(request) - base_url = Gitlab.config.gitlab.url - # Go subpackages may be in the form of namespace/project/path1/path2/../pathN - # We can just ignore the paths and leave the namespace/project - path_info = request.env["PATH_INFO"] - path_info.sub!(/^\//, '') - project_path = path_info.split('/').first(2).join('/') - request_url = URI.join(base_url, project_path) - domain_path = strip_url(request_url.to_s) - - "<!DOCTYPE html><html><head><meta content='#{domain_path} git #{request_url}.git' name='go-import'></head></html>\n"; - end - - def strip_url(url) - url.gsub(/\Ahttps?:\/\//, '') - end - end - end -end |