ee/spec/requests/git_http_geo_spec.rb failing
A bug (fixed in !100720 (merged)) meant that under certain circumstances, an RSpec failure would not be reported correctly, but instead return a success code. This masked several broken specs.
One example is in https://gitlab.com/gitlab-org/gitlab/-/jobs/3157889632 (from a master pipeline):
Failures:
1) Git HTTP requests (Geo) when current node is a secondary git-lfs Transfer API GET /namespace/repo.git/gitlab-lfs/objects/<oid> when the repository does not exist behaves like a Geo 302 redirect to Primary valid Geo JWT token returns a redirect response
Failure/Error: is_expected.to have_gitlab_http_status(:redirect)
expected the response to have status code :redirect but it was 200. The response was: ?PNG
SNIP
Shared Example Group: "a Geo 302 redirect to Primary" called from ./ee/spec/requests/git_http_geo_spec.rb:427
# ./ee/spec/requests/git_http_geo_spec.rb:86:in `block (4 levels) in <top (required)>'
# ./spec/spec_helper.rb:417:in `block (3 levels) in <top (required)>'
# ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'
# ./spec/spec_helper.rb:409:in `block (2 levels) in <top (required)>'
# ./spec/spec_helper.rb:405:in `block (3 levels) in <top (required)>'
# ./lib/gitlab/application_context.rb:58:in `with_raw_context'
# ./spec/spec_helper.rb:405:in `block (2 levels) in <top (required)>'
# ./spec/spec_helper.rb:242:in `block (2 levels) in <top (required)>'
# ./spec/support/system_exit_detected.rb:7:in `block (2 levels) in <top (required)>'
# ./spec/support/flaky_tests.rb:27:in `block (2 levels) in <top (required)>'
# ./spec/support/database/prevent_cross_joins.rb:106:in `block (3 levels) in <top (required)>'
# ./spec/support/database/prevent_cross_joins.rb:60:in `with_cross_joins_prevented'
# ./spec/support/database/prevent_cross_joins.rb:106:in `block (2 levels) in <top (required)>'
Finished in 22 minutes 39 seconds (files took 1 minute 5.8 seconds to load)
1464 examples, 1 failure, 52 pending