• Stan Hu's avatar
    Merge branch 'dont-drop-stuck-builds' into 'master' · bf4455d1
    Stan Hu authored
    Don't fail builds for projects that are deleted when they are stuck
    
    ## What does this MR do?
    
    Solves when dropping stuck connection.
    ```
    Dropping stuck pending build 1545510 for runner 
    NoMethodError: undefined method `origin_merge_requests' for nil:NilClass
        from /opt/gitlab/embedded/service/gitlab-rails/app/services/merge_requests/base_service.rb:50:in `merge_request_from'
        from /opt/gitlab/embedded/service/gitlab-rails/app/services/merge_requests/base_service.rb:57:in `each_merge_request'
        from /opt/gitlab/embedded/service/gitlab-rails/app/services/merge_requests/add_todo_when_build_fails_service.rb:5:in `execute'
        from /opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/instrumentation.rb:164:in `execute'
        from /opt/gitlab/embedded/service/gitlab-rails/app/models/commit_status.rb:51:in `block (2 levels) in <class:CommitStatus>'
        from /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/state_machines-0.4.0/lib/state_machines/eval_helpers.rb:79:in `call'
    ...
    ```
    
    This happens, because that `default_scope` of `Projects` filters returns the projects that are not deleted, where `Ci::Build` doesn't take into account.
    
    
    See merge request !4609
    bf4455d1
To find the state of this project's repository at the time of any of these versions, check out the tags.
CHANGELOG 150 KB