Sha256: 50f59416a0364775ede64ff8cba6b3a055b93651338f12823a84f3122a85dcef

Contents?: true

Size: 993 Bytes

Versions: 6

Compression:

Stored size: 993 Bytes

Contents

require 'fast_ci/brakeman/commandline'
require 'fast_ci'
require 'base64'
require 'zlib'

module FastCI
  module Brakeman
    def self.start
      FastCI.start_report('brakeman')

      events = []
      events << ['brakeman_run'.upcase, {}]
      FastCI::Brakeman::Commandline.start(output_files: ['tmp/brakeman.json'], ensure_ignore_notes: false)

      content = File.read('tmp/brakeman.json')
      compressed_data = ::Base64.strict_encode64(Zlib::Deflate.deflate(content, 9))

      events << ['brakeman_exit_status'.upcase, ['0', { exitstatus: 0, stderr: '', output: '', compressed_data: compressed_data }]]

      if ENV['FSCI_REMOTE_TESTS'] == 'true'
        json_events = {
          build_id: FastCI.configuration.orig_build_id,
          compressed_data: Base64.strict_encode64(Zlib::Deflate.deflate(JSON.fast_generate(events), 9)),
        }
  
        FastCI.send_events(json_events)
      else
        FastCI.report_brakeman(compressed_data, 'passed')
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
fast_ci-1.1.1 lib/fast_ci/brakeman.rb
fast_ci-1.1.0 lib/fast_ci/brakeman.rb
fast_ci-1.0.11 lib/fast_ci/brakeman.rb
fast_ci-1.0.10 lib/fast_ci/brakeman.rb
fast_ci-1.0.9 lib/fast_ci/brakeman.rb
fast_ci-1.0.8 lib/fast_ci/brakeman.rb