From 9fc9ab2ba2b0db05f6365054aa3bddcda3c7333d Mon Sep 17 00:00:00 2001 From: Ash McKenzie Date: Fri, 6 Sep 2019 11:21:53 +0000 Subject: Add new GitlabDanger class This class encapsulates our use of the Danger gem. --- lib/tasks/gitlab_danger.rake | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 lib/tasks/gitlab_danger.rake (limited to 'lib/tasks/gitlab_danger.rake') diff --git a/lib/tasks/gitlab_danger.rake b/lib/tasks/gitlab_danger.rake new file mode 100644 index 00000000000..e75539f048c --- /dev/null +++ b/lib/tasks/gitlab_danger.rake @@ -0,0 +1,17 @@ +desc 'Run local Danger rules' +task :danger_local do + require 'gitlab_danger' + require 'gitlab/popen' + + puts("#{GitlabDanger.local_warning_message}\n") + + # _status will _always_ be 0, regardless of failure or success :( + output, _status = Gitlab::Popen.popen(%w{danger dry_run}) + + if output.empty? + puts(GitlabDanger.success_message) + else + puts(output) + exit(1) + end +end -- cgit v1.2.3