ci/builds/register.json is broken
We have this issue: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/2596.
It seems that CI API v1 is completely broken and it is constantly returning 500 when trying to get build.
After long finding I found this build trace:
Jul 21 15:48:08 api05 production.log: NoMethodError (undefined method `map!' for nil:NilClass):
Jul 21 15:48:08 api05 production.log: lib/ci/api/entities.rb:55:in `block (2 levels) in <class:BuildDetails>'
Jul 21 15:48:08 api05 production.log: lib/ci/api/entities.rb:53:in `tap'
Jul 21 15:48:08 api05 production.log: lib/ci/api/entities.rb:53:in `block in <class:BuildDetails>'
Jul 21 15:48:08 api05 production.log: lib/api/helpers.rb:261:in `handle_api_exception'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/instrumentation.rb:156:in `block in handle_api_exception'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/method_call.rb:23:in `measure'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/instrumentation.rb:156:in `handle_api_exception'
Jul 21 15:48:08 api05 production.log: lib/ci/api/api.rb:22:in `block in <class:API>'
Jul 21 15:48:08 api05 production.log: lib/gitlab/performance_bar/peek_performance_bar_with_rack_body.rb:16:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/middleware/multipart.rb:93:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/request_profiler/middleware.rb:14:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/database/load_balancing/rack_middleware.rb:37:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/middleware/go.rb:16:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/etag_caching/middleware.rb:11:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/middleware/rails_queue_duration.rb:20:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/rack_middleware.rb:29:in `block in call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/transaction.rb:49:in `run'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/rack_middleware.rb:29:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/middleware/readonly_geo.rb:30:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/request_context.rb:18:in `call'
Jul 21 15:48:08 api05 production.log: lib/gitlab/metrics/connection_rack_middleware.rb:31:in `call'
Currently ci/api/v1/register.json
is broken if job doesn't specify services:
.
This can be considered critical bug that should be fixed ASAP.
Edited by Kamil Trzciński