123456789_123456789_123456789_123456789_123456789_

Module: Octokit::Client::CodeScanning

Relationships & Source Files
Extension / Inclusion / Inheritance Descendants
Included In:
Defined in: lib/octokit/client/code_scanning.rb

Overview

Methods for the code scanning alerts API

Instance Method Summary

Instance Method Details

#compress_sarif_data(file) (private)

[ GitHub ]

  
# File 'lib/octokit/client/code_scanning.rb', line 42

def compress_sarif_data(file)
  Tempfile.create('sarif.gz') do |tempfile|
    Zlib::GzipWriter.open(tempfile) do |gz_file|
      gz_file.write File.binread(file)
    end
    [tempfile.read].pack('m0') # Base64.strict_encode64
  end
end

#get_sarif_upload_information(repo, sarif_id, options = {}) ⇒ Sawyer::Resource

Gets information about a SARIF upload

Parameters:

  • repo (Integer, String, Repository, Hash)

    A GitHub repository

  • sarif_id (String)

    The SARIF ID obtained after uploading

Returns:

  • (Sawyer::Resource)

    SARIF upload information

See Also:

[ GitHub ]

  
# File 'lib/octokit/client/code_scanning.rb', line 36

def get_sarif_upload_information(repo, sarif_id, options = {})
  get "#{Repository.path repo}/code-scanning/sarifs/#{sarif_id}", options
end

#upload_sarif_data(repo, file, sha, ref, options = {}) ⇒ Sawyer::Resource

Uploads SARIF data containing the results of a code scanning analysis

Parameters:

  • repo (Integer, String, Repository, Hash)

    A GitHub repository

  • file (String)

    Path to the SARIF file to upload

  • sha (String)

    The SHA of the commit to which the analysis you are uploading relates

  • ref (String)

    The full Git reference, formatted as refs/heads/<branch name>, refs/pull/<number>/merge, or refs/pull/<number>/head

Returns:

  • (Sawyer::Resource)

    SARIF upload information

See Also:

[ GitHub ]

  
# File 'lib/octokit/client/code_scanning.rb', line 21

def upload_sarif_data(repo, file, sha, ref, options = {})
  options[:sarif] = compress_sarif_data(file)
  options[:commit_sha] = sha
  options[:ref] = ref

  post "#{Repository.path repo}/code-scanning/sarifs", options
end