Gracefully handle corrupted/invalid repo HEAD in (admin) UI
Summary
We recently came across a project repo with empty HEAD
reference and Web UI (Even admin UI), was showing 500s
and making it difficult to obtain further information about the project from admin interface.
Originating production issue: gitlab-com/gl-infra/production#17129 (closed)
Thread with additional information: gitlab-com/gl-infra/production#17129 (comment 1649210825)
Impact
Web UI shows 500 for projects with invalid HEAD
reference.
Recommendation
UI should handle such cases graciously with a more controlled error, to atleast show other information about the project. The project view in admin UI also shows 500s.
Verification
Making any project's git repo's HEAD
reference empty, should recreate the problem.
Edited by Vasilii Iakliushin