class Vorx::GitReference
Constants
- GIT_REFERENCE_REGEXP
- GIT_URI_REGEXP
- PROVIDERS
Public Class Methods
resolve(git_reference, prefix: '')
click to toggle source
# File lib/vorx/git_reference.rb, line 16 def resolve(git_reference, prefix: '') git_uri = git_reference if GIT_URI_REGEXP.match?(git_reference) provider, reference, version = extract_params(git_reference) unless git_uri # TODO: Improve raise 'Invalid git uri or git reference' if !reference && !git_uri git_uri ||= "#{PROVIDERS[provider]}/#{with_prefix(reference, prefix)}.git" version ||= 'master' GitRepository.new( git: git_uri, version: version ) end
Private Class Methods
extract_params(git_reference)
click to toggle source
# File lib/vorx/git_reference.rb, line 35 def extract_params(git_reference) provider, reference, version = GIT_REFERENCE_REGEXP.match(git_reference).captures provider&.tr!(':', '') version&.tr!(':', '') [provider, reference, version] end
with_prefix(reference, prefix)
click to toggle source
# File lib/vorx/git_reference.rb, line 44 def with_prefix(reference, prefix) git_user, git_repo = reference.split('/') "#{git_user}/#{prefix}#{git_repo}" end