Skip to content

Stop serving shadowed namespace project files

Nick Thomas requested to merge (removed):167-hide-from-the-shadow into master

GitLab Pages provides two different kinds of project: regular, and "namespace" (group/username) projects. They are documented here: https://docs.gitlab.com/ee/user/project/pages/introduction.html#user-or-group-pages

At present, if access https://group.example.io/something/foo.html, this may be served by either the regular project something (in which case it's public/foo.html in the artifact), or the namespace project group.example.io (in which case it's public/something/foo.html in the artifact). In effect, the normal project shadows the namespace project it's rooted in, but still allows fallthrough to the namespace project if it would serve a 404 response.

This MR removes that fallthrough, so in the case above, we'd serve a 404 instead of the namespace project's public/foo.html file.

The fallthrough behaviour was never documented. It's possible some projects rely on it, however, it is inimical to an important new feature being developed in !94 (merged), so we've decided that the best route forward is to remove it.

Closes #167 (closed)

/cc @ayufan @tuomoa @nolith @jlenny

Edited by Nick Thomas

Merge request reports