gitlab-org--gitlab-foss/lib/gitlab/dependency_linker/podspec_linker.rb

25 lines
636 B
Ruby
Raw Normal View History

2017-05-16 16:29:13 -04:00
module Gitlab
module DependencyLinker
class PodspecLinker < MethodLinker
include Cocoapods
STRING_REGEX = /['"](?<name>[^'"]+)['"]/.freeze
self.file_type = :podspec
private
def link_dependencies
link_method_call('homepage', URL_REGEX, &:itself)
link_regex(%r{(git:|:git\s*=>)\s*['"](?<name>#{URL_REGEX})['"]}, &:itself)
link_method_call('license', &method(:license_url))
link_regex(/license\s*=\s*\{\s*(type:|:type\s*=>)\s*#{STRING_REGEX}/, &method(:license_url))
link_method_call(%w[name dependency], &method(:package_url))
end
end
end
end