You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Git fetching should retry if the fetcher fails after a git fetch/git pull failure.
Steps To Reproduce
Have an unreliable git host
Call fetchGit with a rev that hasn't been fetched yet. (in my case, ref was also specified, and I used an http url to a private github.com repo)
Observe a log such as:
fetching Git repository 'https://github.com/ORG/REPO.git'
fatal: unable to access 'https://github.com/ORG/REPO.git/': Empty reply from server
warning: could not update local clone of Git repository 'https://github.com/ORG/REPO.git'; continuing with the most recent version
This was a transient failure. The next evaluation fetched it correctly.
Expected behavior
Perform a retry of the entire fetcher if a possible network error was detected.
Approximately:
check the cache for rev (if we don't care about testing that a rev still exists - idk, configurable?)
git fetch or similar. Retry this step, because we know that we need it to work. Don't retry a missing ref or permission error.
fetching Git repository 'https://github.com/hercules-ci/hercules-ci-effects.git'
fatal: unable to access 'https://github.com/hercules-ci/hercules-ci-effects.git/': Recv failure: Connection reset by peer
warning: could not update local clone of Git repository 'https://github.com/hercules-ci/hercules-ci-effects.git'; continuing with the most recent version
fetching Git repository 'https://github.com/nixified-ai/flake.git'
error: RPC failed; curl 55 Failed sending data to the peer
fatal: expected flush after ref listing
warning: could not update local clone of Git repository 'https://github.com/nixified-ai/flake.git'; continuing with the most recent version
Describe the bug
Git fetching should retry if the fetcher fails after a
git fetch
/git pull
failure.Steps To Reproduce
fetchGit
with arev
that hasn't been fetched yet. (in my case,ref
was also specified, and I used an http url to a private github.com repo)This was a transient failure. The next evaluation fetched it correctly.
Expected behavior
Perform a retry of the entire fetcher if a possible network error was detected.
Approximately:
rev
(if we don't care about testing that a rev still exists - idk, configurable?)git fetch
or similar. Retry this step, because we know that we need it to work. Don't retry a missing ref or permission error.nix-env --version
output2.11
Additional context
Priorities
Add 👍 to issues you find important.
The text was updated successfully, but these errors were encountered: