Sha256: 6b08784d38a990e4bf624c4c2591595b1c270a55b254ae5955717570380cdbff
Contents?: true
Size: 1.51 KB
Versions: 295
Compression:
Stored size: 1.51 KB
Contents
# Ensure a clean commits history if git.commits.any? { |c| c.message =~ /^Merge branch '#{github.branch_for_base}'/ } fail('Please rebase to get rid of the merge commits in this PR') end can_merge = github.pr_json["mergeable"] is_merged = github.pr_json["merged"] if is_merged warn("This PR was merged before CI was done.", sticky: false) else warn("This PR cannot be merged yet.", sticky: false) unless can_merge end # Make it more obvious that a PR is a work in progress and shouldn't be merged yet warn("PR is classed as Work in Progress") if github.pr_title.include? "[WIP]" # Warn when there is a big PR warn("Big PR") if git.lines_of_code > 500 #ENSURE THERE IS A SUMMARY FOR A PR warn("Please provide a summary in the Pull Request description. See more info <a href=\"http\://tinyletter.com/exercism/letters/exercism-pull-requests\">here.</a>") if github.pr_body.length < 5 # LINT Comments in for each Line jsonpath = "lintreport.json" contents = File.read jsonpath require "json" if contents.to_s == '' contents = "[]" end json = JSON.parse contents json.each do |object| shortFile = object["name"] shortFile = shortFile.to_s || '' msg = object["failure"].to_s || '' line = object["endPosition"]["line"] || 1 #only warn for files that were edited in this PR. if git.modified_files.include? shortFile shortFile.prepend("/") # get away from doing inline comments since they are buggy as of Sep-2016 warn(msg, file: shortFile, line: line) else message(msg, file: shortFile, line: line) end end
Version data entries
295 entries across 295 versions & 1 rubygems