Skip to content

If a push mirror fails, try again with the refs that would have succeeded

Robert Speicher requested to merge rs-mirror-with-retry into master

Related: #2451 (closed)

915227b4 - Add features attribute to GitlabProjects

ebb92210 - Add Gitlab::Git::PushResults class

Provides a simple interface to the output of git push --porcelain.

d7ff54df - Add push_remote_branches retry

If the first push fails, we parse the output and try again with only the branches that would have been successful, which should resolve the "one failure blocks all mirroring" behavior we currently see.

This functionality is behind a gitaly_ruby_push_mirror_retry feature flag.

8f88d1dd - Conditionally push with --porcelain flag

Edited by Robert Speicher

Merge request reports