CI Components named template.yml stopped working without a trailing slash between 16.8 and 16.10
Summary
Between GitLab 16.8 and 16.10, having a CI component at templates/template.yml
stopped working without having a trailing slash in the path.
Steps to reproduce
- Create a CI component repository
- Create a
templates/template.yml
component. It may also be necessary to create another named template (the only components I have end up with several components and then one top-level "happy path" one, so I haven't tested this without having multiple components). - Merge/release
- Refer to it as
gitlab.example/group/project@~latest
in another project. In 16.8, this works. In 16.10, you get "content not found". - Refer to it as
gitlab.example/group/project/@~latest
in another project. In 16.10, this works (untested in 16.8).
What is the current bug behavior?
You will get a "content not found" error in 16.10 unless you refer to the component with a slash after the project name.
What is the expected correct behavior?
If you do not specify a component path, with or without a trailing slash, and the component project has a template.yml
component, then the template.yml
component should get used. This worked up until 16.8, and when we upgraded from 16.8 to 16.10, this broke.