(CODEMGMT-1294) Resync repos with unresolvable refs #1239
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Prior to this commit, if the git repo did not have a valid HEAD or the
ref was not resolvable, r10k would raise an error and fail. This commit
changes the behavior to do a forceful resync of the git repo.
This commit updates the
status
method for stateful git repos to return:mismatched when the repo.head is nil. This commit updates the resolve
method for rugged base repositories to catch
Rugged::OdbError
, whichwould have resulted in
object not found - no match for id
messages.This condition would occur when the local repo was out of sync with the
upstream repo and a local commit could not be found in the upstream
repo. Since this condition indicates that the repo has diverged from the
upstream repository, this change forces a full resync of the git repo to
ensure it is in sync.