danger: fail() does not fail GitLab job

Report

What did you do?

  1. Call fail("Please include a CHANGELOG entry. \nYou can find it at [CHANGELOG.md](https://..../blob/master/CHANGELOG.md).", sticky: false) in my Dangerfile
  2. Job succeeds
Running with gitlab-ci-multi-runner 9.2.0 (ABCDEF)
  on XXX (ABCDEF)
Using Shell executor...
Running on XXX...
Fetching changes...
Removing .ruby-version
Removing DerivedData/
Removing fastlane/report.xml
Removing vendor/
HEAD is now at ABC Blue status bar background is now reintroduced
From https://...
   ABC..DEF  some-branch -> origin/some-branch
Checking out ABC-DEF as some-branch...
Skipping Git submodules setup
Downloading artifacts for Prepare (397017)...
Downloading artifacts from coordinator... ok        id=XXX responseStatus=200 OK token=XXX
$ rbenv local 2.4.2
$ xcversion select 9.2
$ export CI_MERGE_REQUEST_ID=$(git ls-remote -q origin merge-requests\*\head | grep $CI_COMMIT_SHA | sed 's/.*refs\/merge-requests\/\([0-9]*\)\/head/\1/g')
$ bundle exec danger --danger_id=danger --dangerfile=danger/Dangerfile --new-comment
Results:

Errors:
- [ ] Please include a CHANGELOG entry. 
You can find it at [CHANGELOG.md](https://.../blob/master/CHANGELOG.md).
Job succeeded

What did you expect to happen?

The output as above but with Job failed as the final message.

What happened instead?

Job succeeded

Your Environment

  • GitLab CI

  • Danger 5.5.10

  • What is your Dangerfile?

    if !git.modified_files.include?("CHANGELOG.md")
      fail("Please include a CHANGELOG entry. \nYou can find it at [CHANGELOG.md](https://.../blob/master/CHANGELOG.md).", sticky: false)
    end
    

About this issue

  • Original URL
  • State: open
  • Created 6 years ago
  • Reactions: 6
  • Comments: 16 (7 by maintainers)

Most upvoted comments

Makes sense, I feel like the --fails-on-errors flag should probably default to true on GitLab then 👍