Changes to refspecs are ignored after updating to 14.1
Summary
Our pull mirroring setups started to ignore refspec changes in repositories' config
files after updating to 14.1
.
Steps to reproduce
- Have custom refspecs in repository mirrors. E.g. we would like to mirror
master
only:
[remote "upstream"]
url = https://example.com/foobar.git
fetch = +refs/heads/master:refs/remotes/upstream/master
- Update to
14.1
- Mirrors start to mirror what they could mirror by default, customizations above are ignored
More info
Since 14.1
, there were the implicit changes in the pull mirroring logic:
Default-enable :update_remote_mirror_inmemory feature flag
Default-enable :fetch_remote_params feature flag
These ones were found while investigating described problems with our mirroring setup. These feature flags are enabled by default since 14.1
. Disabling those feature flags has restored "gone" functionality for us.
It looks like these feature flags will be removed in 14.2
. How do we proceed afterwards? We rely on our refspecs customizations heavily and these changes block further update path for us.
What is the current bug behavior?
Mirroring ignores refspec changes in a repository's config
file when :update_remote_mirror_inmemory
/:fetch_remote_params
are enabled. Both were disabled to restore the functionality.
What is the expected correct behavior?
Mirroring always takes into account refspec changes in a repository's config
file.
Miscellaneous
This happens with GitLab 14.1.1-ee
, Ultimate plan, Omnibus.
If any extra info is needed, just ping me.