Part of https://gitlab.com/gitlab-org/gitlab-ee/issues/4946
EE counterpart: https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/14709