Skip to content

Better validation when an incorrect SSH URL used

To test SSH pull mirroring, I naively entered:

ssh://git@github.com:gitlabhq/gitlabhq.git

I just got this:

image

The Rails log showed this:

Addressable::URI::InvalidURIError (Invalid port number: "gitlabhq"):
  app/controllers/projects/mirrors_controller.rb:17:in `new'
  app/controllers/projects/mirrors_controller.rb:17:in `ssh_host_keys'
  lib/gitlab/i18n.rb:46:in `with_locale'
  lib/gitlab/i18n.rb:52:in `with_user_locale'
  app/controllers/application_controller.rb:334:in `set_locale'
  lib/gitlab/middleware/multipart.rb:93:in `call'
  lib/gitlab/request_profiler/middleware.rb:14:in `call'
  lib/gitlab/middleware/go.rb:16:in `call'
  lib/gitlab/etag_caching/middleware.rb:11:in `call'
  lib/gitlab/middleware/readonly_geo.rb:30:in `call'
  lib/gitlab/request_context.rb:18:in `call'
  lib/gitlab/middleware/static.rb:9:in `call'
  lib/gitlab/middleware/webpack_proxy.rb:20:in `perform_request'
  lib/gitlab/metrics/requests_rack_middleware.rb:27:in `call'

/cc: @nick.thomas, @mydigitalself, @DouweM