Add option to disable seperated caches between protected and not protected branches
Problem to solve
We are currently using caches for dependencies. Until 14.10.1, the caches were shared between protected and not protected branches.
We are currently using a scheduled pipeline on the default branch to regularly update the caches. All other jobs have policy: pull
and don't update the cache.
In 14.10.1, the caches got seperated for protected and not protected branches (d032b26a).
This breaks our workflow as the scheduled pipeline runs on the protected default branch and will only update the cache for protected branches. All Merge Request Pipelines will have an empty cache as they are not protected. This is a breaking change in a patch version!
Proposal
Implement a setting to disable cache seperation and get the old behaviour back.
Further details
There are workflows and environments, where you don't need to seperate the caches to prevent "poisioning" the cache for protected branches. As example, we are a small development team, everyone has merge permissions. There is no need to seperate the caches, because everyone could just poison the cache from the default branch itself.
Permissions and Security
-
Add expected impact to members with no access (0) -
Add expected impact to Guest (10) members -
Add expected impact to Reporter (20) members -
Add expected impact to Developer (30) members -
Add expected impact to Maintainer (40) members -
Add expected impact to Owner (50) members
Documentation
Availability & Testing
Available Tier
GitLab Free GitLab Premium GitLab Ultimate
Feature Usage Metrics
What does success look like, and how can we measure that?
What is the type of buyer?
All tiers
Is this a cross-stage feature?
I don't know how it is seperated but probably only devopsverify