The upload-git-mirror job currently reports failure when multiple jobs run concurrently for the same repository (one of them succeeds, the other fails because the state of the mirror was changed by the successful one). However, since the job generally runs a few minutes after the commit that triggered it merged, the successful job usually mirrored the two needed commits, so the failed mirror operation does not mean the mirror is out-of-sync. This results in false negatives. If zuul.newrev is provided, rather than report failure if the mirror operation fails, we should report failure if, after the mirror operation, the commit that triggered the job is still not present on the mirror. Change-Id: Iadae26473f4c937384c8cea74329e389c563aeed
Mirrors a git repository to a remote git server
Meant to be used after a change was successfully merged, this role mirrors a tested git repository to a remote git server over SSH.
The role assumes that git has been previously installed and does not require superuser privileges to run.
Role Variables
Dictionary that provides the remote git repository credentials
SSH user for the remote git repository
SSH host for the remote git repository
Literal private key contents. Should start with something like
-----BEGIN RSA PRIVATE KEY-----.SSH host key of the remote git server. Can be obtained with
ssh-keyscan -H <host>.
Path of the remote git repository