Increase the CI cache key file limit to 10
What does this MR do and why?
Raises the cache:key:files limit from 2 to 10, behind the increase_ci_cache_key_files_limit feature flag (beta, default off).
Performance note: literal paths are resolved in one batched Gitaly call. Each wildcard pattern costs its own SearchFilesByName Gitaly call (a full tree listing), so the worst case goes from 2 such calls per job cache entry to up to 10. The flag allows a gradual rollout while watching Gitaly load.
References
Relates to #301161
Rollout issue: #631277
Screenshots or screen recordings
How to set up and validate locally
-
With feature branch checked out, enable feature flag
increase_ci_cache_key_files_limit -
In any project, go to Build > Pipeline editor and paste this config:
cache-job: cache: key: files: - file1 - file2 - file3 - file4 - file5 - file6 - file7 - file8 - file9 - file10 paths: - vendor/ruby script: echo "test" -
Expected: Validate reports the config as valid, and the editor shows no schema warning on the
fileslist. -
Add an 11th file (
file11). Expected: validation fails withjobs:cache-job:cache:key:files config has too many items (maximum is 10), and the editor underlines the list. -
Optional: run the same checks in CI Lint at
<project>/-/ci/lint. -
The 10-file config fails when feature flag is off
(maximum is 2).
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Related to #301161

