aboutsummaryrefslogtreecommitdiffstats
path: root/Dangerfile
diff options
context:
space:
mode:
Diffstat (limited to 'Dangerfile')
-rw-r--r--Dangerfile36
1 files changed, 36 insertions, 0 deletions
diff --git a/Dangerfile b/Dangerfile
new file mode 100644
index 00000000..8124c31b
--- /dev/null
+++ b/Dangerfile
@@ -0,0 +1,36 @@
+#Check for changes to README.md
+has_readme_changes = git.modified_files.include?("README.md")
+
+# Ensure there is a summary for a pull request
+fail 'Please provide a summary in the Pull Request description' if github.pr_body.length < 5
+
+# Warn if PR guideline boxes are not checked.
+warn 'Please check PR guidelines and check the boxes.' if github.pr_body.include? '- [ ]'
+
+# Warn if pull request is not updated
+warn 'Please update the Pull Request title to contain the script name' if github.pr_title.include? 'Update README.md'
+
+# Warn when there are merge commits in the diff
+warn 'Please rebase to get rid of the merge commits in this Pull Request' if git.commits.any? { |c| c.message =~ /^Merge branch 'master'/ }
+
+# Check links
+if has_readme_changes
+ require 'json'
+ results = File.read 'ab-results-temp.md-markdown-table.json'
+ j = JSON.parse results
+ if j['error']==true
+ fail j['title']
+ markdown j['message']
+ end
+end
+
+# Check syntax
+if has_readme_changes
+ require 'json'
+ syntaxresults = File.read 'syntaxcheck.json'
+ sj = JSON.parse syntaxresults
+ if sj['error']==true
+ fail sj['title']
+ markdown sj['message']
+ end
+end