module Debci module Validators module APTSource def invalid_extra_apt_sources(extra_apt_sources) invalid_extra_apt_sources = [] Array(extra_apt_sources).each do |extra_apt_source| components = extra_apt_source.split if ["deb", "deb-src"].include?(components[0]) url_arg = components[1] =~ /^\[.*?\]$/ ? components[2] : components[1] end uri = URI.parse(url_arg) raise URI::InvalidURIError unless uri.is_a?(URI::HTTP) && !uri.host.nil? rescue URI::InvalidURIError invalid_extra_apt_sources.push(extra_apt_source) end invalid_extra_apt_sources.join(", ") end end end end