class Dependabot::DependabotError
Constants
- BASIC_AUTH_REGEX
- FURY_IO_PATH_REGEX
Remove any path segment from fury.io sources
Public Class Methods
new(message = nil)
click to toggle source
Calls superclass method
# File lib/dependabot/errors.rb, line 11 def initialize(message = nil) super(sanitize_message(message)) end
Private Instance Methods
filter_sensitive_data(message)
click to toggle source
# File lib/dependabot/errors.rb, line 28 def filter_sensitive_data(message) replace_capture_groups(message, BASIC_AUTH_REGEX, "") end
replace_capture_groups(string, regex, replacement)
click to toggle source
# File lib/dependabot/errors.rb, line 37 def replace_capture_groups(string, regex, replacement) return string unless string.is_a?(String) string.scan(regex).flatten.compact.reduce(string) do |original_msg, match| original_msg.gsub(match, replacement) end end
sanitize_message(message)
click to toggle source
# File lib/dependabot/errors.rb, line 17 def sanitize_message(message) return message unless message.is_a?(String) path_regex = Regexp.escape(Utils::BUMP_TMP_DIR_PATH) + "\/" + Regexp.escape(Utils::BUMP_TMP_FILE_PREFIX) + "[a-zA-Z0-9-]*" message = message.gsub(/#{path_regex}/, "dependabot_tmp_dir").strip filter_sensitive_data(message) end
sanitize_source(source)
click to toggle source
# File lib/dependabot/errors.rb, line 32 def sanitize_source(source) source = filter_sensitive_data(source) replace_capture_groups(source, FURY_IO_PATH_REGEX, "<redacted>") end