Warn users about legacy /ci URL suffix in runner configuration

What does this MR do?

In GitLab Runner versions before 1.0.0, the runner URL was configured with a /ci suffix (e.g., https://gitlab.example.com/ci). This suffix was deprecated in 2016 via !289 (merged), but some legacy configurations still use it.

While the /ci suffix is automatically stripped in most contexts, it can cause Git submodule authentication failures when GIT_SUBMODULE_FORCE_HTTPS is enabled. The suffix interferes with Git URL rewriting rules, causing submodules to fail with "could not read Username" errors.

This commit adds:

  1. A WarnOnLegacyCIURL() method that logs a warning when a runner configuration contains the /ci suffix.
  2. The warning is triggered during configuration loading so users are notified at startup.
  3. Documentation explaining the issue and how to resolve it.

The warning message directs users to remove the /ci suffix from their config.toml and links to documentation with detailed resolution steps.

Related to gitlab#581678 (closed)

Why was this MR needed?

What's the best way to test this MR?

What are the relevant issue numbers?

Edited by Stan Hu

Merge request reports

Loading