Changes to pull mirrored projects don't make it downstream
Summary
Changes made to an upstream project are not mirrored properly when HTTPS mirroring of all branches is configured.
This specific case was testing GitLab to GitLab, so may not be an issue for pull mirroring from other services.
Steps to reproduce
- Set up two public projects on GitLab.com.
- Set up HTTPS
pull
mirroring on one project to mirror the other. Don't check any mirroring options. - Create a new branch on the upstream project, make a change, create a MR (enable source branch deletion on merge), and merge that change to your master branch.
- Either wait for mirroring on the downstream project to update or force an update.
- Observe that one of two things has happened.
-
- No changes at all were mirrored to the downstream project.
-
- The deleted source branch from the MR was mirrored but the change it introduced was not.
-
Example Project
All of these commits are examples of changes that didn't make it to the Third
project.
What is the current bug behavior?
Changes introduced to the upstream project are not mirrored to the downstream.
What is the expected correct behavior?
Any change made to the upstream project, whether on a protected branch or not, should be mirrored to the downstream project when pull mirroring is configured.
Output of checks
This bug happens on GitLab.com: 12.3.0-pre a91e743e4cc
ZD: https://gitlab.zendesk.com/agent/tickets/132632 (GitLab Internal)
Possible Workaround
Since we're testing GitLab to GitLab here, push mirroring may be a working alternative.