Sha256: 65fe46b5898d640e7eb2273a09e384920eff9f7f6a624e857fefa14793b1cefa

Contents?: true

Size: 719 Bytes

Versions: 63

Compression:

Stored size: 719 Bytes

Contents

require 'pact_broker/string_refinements'

module PactBroker
  module Webhooks
    module RedactLogs
      HEADER_SUBSTITUTIONS = [[/(Authorization: )(.*)/i, '\1[REDACTED]'], [ /(Token: )(.*)/i, '\1[REDACTED]']]

      using PactBroker::StringRefinements

      def redact_logs(logs, values)
        RedactLogs.call(logs, values)
      end

      def self.call logs, values
        substitutions = HEADER_SUBSTITUTIONS + value_substitutions(values)

        substitutions.reduce(logs) do | logs, (find, replace) |
          logs.gsub(find, replace)
        end
      end

      def self.value_substitutions(values)
        values.select(&:not_blank?).collect{ | value | [value, "********"] }
      end
    end
  end
end

Version data entries

63 entries across 63 versions & 1 rubygems

Version Path
pact_broker-2.79.1 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.79.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.78.1 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.78.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.77.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.76.2 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.76.1 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.76.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.75.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.74.1 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.74.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.73.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.72.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.71.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.70.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.69.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.68.1 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.68.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.67.0 lib/pact_broker/webhooks/redact_logs.rb
pact_broker-2.66.0 lib/pact_broker/webhooks/redact_logs.rb