Runner don't find submodule

Hello all,

I created a repository in the same group as my main project. We want to handle our Gherkin feature files there to make it easier for our Business Analyst to work with these files.

I added a submodule within the main repo, which leads to the following .gitmodules file:

[submodule "features"]
	path = tests/softwareTests/Features
	url = ../gherkin-feature-files.git

The pull works fine locally.
The .gitlab-ci.yml has the flag GIT_SUBMODULE_STRATEGY: recursive set additionally.

It worked one or two times after removing all characters after .git in the .gitmodules file but the next run fails again. The error message is:

remote: The project you were looking for could not be found or you don't have permission to view it.
fatal: repository 'https://xyz.com/xyz/gherkin-feature-files.git/' not found

xyz.com/xyz/ stands for our locally hosted GitLab instance (15.9.3-ee) with 3 layers of groups in addition.
The link in the error message works if you remove the last character. Because the link includes the '.

I tried multiple other notations of the .gitmodules file, which didn’t work neither. But I think the current notation is correct.

Do someone have an idea what’s wrong or what I can try additionally?

Thanks
Nico

Hi all,

My issue was the accessability of the target project.

All our projects are set to privat in our GitLab instance and this can’t be changed to internal for example. I assume this would already help. So, the issue don’t occure if your project you refer is public or internal and in the same instance.

Nethertheless, I couldn’t change this. So, I needed to grant the parent project access to the submodule project. This can be done via “Token Access” (Settings->CI/CD). See the picture below:

Unfortunetely, there is no hint of the notation of the project path. So, I tried a lot of stuff without success. Later on, I found a hint some setting further down (Pipeline subscription) which linked to this documentation which includes something of the path notation:
CI/CD pipelines | GitLab

After setting “Token Access” path correctly it started working for my.

Regards,
Nico

1 Like

Agreed. That token access setting was added in 15.10.