9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/services/git/pr/remote_parser.rb', line 9
def (origin_url)
remote_text = origin_url.to_s.strip
return nil if remote_text.empty?
parsed = parse_uri_remote(remote_text) || parse_scp_remote(remote_text)
return nil if parsed.nil?
normalized = normalize_repo_path(parsed[:path])
return nil if normalized.nil?
provider = detect_provider(parsed[:host])
return nil if provider.nil?
{
provider: provider,
host: parsed[:host],
web_scheme: parsed[:web_scheme],
namespace: normalized[:namespace],
repo: normalized[:repo]
}
end
|