Changes to artifact proxy
Per https://gitlab.com/gitlab-org/gitlab-ce/issues/34102#note_41761135
- group.gitlab.io/subgroup/project/-/jobs/11/artifacts/aaa.txt
Our issue is that we can't come up with a domain label to embed the project ID and job ID into that both:
- Is an invalid group name
- Works in browsers
artifact~1~2.gitlab.io
was awesome, but only worked in safari in the end(!)
We haven't made a release with this code in yet, so we're going to quickly change the scheme so artifacts are served as a part of the relevant project site instead:
artifacts~1~2.gitlab.io/index.html
for group/project
becomes group.gitlab.io/project/-/jobs/2/index.html
The API will use group%2Fproject
as the project ID. Fortunately, this already works
We will need to take special care for groups with a .
in them, e.g., nick.thomas.gitlab.io/project/-/...
When enabled, there is potential for the reserved path to conflict with files in the pages site. We should reduce the scope of that as much as possible. Things to check:
- Do we shadow files in the pages site for
group.gitlab.io
? - Do we shadow files in the pages site for
group.gitlab.io/project
? - Do we shadow project names in the group?
Pages doesn't support subgroups yet. If we can include subgroup support in this feature, great. Otherwise, it will have to wait until all of pages supports subgroups.