As I mentioned before, that means the ssh key hasn't been properly generated.
Try:
ssh-keygen -t rsa -f "${H}/.ssh/micha" -C "Gitolite Admin access (not interactive)" -q -P ""
The OP mwotton reports clearing the ~/.ssh from any prior ssh keys was the solution.
This is because the ssh-authkeys.fp_file()
function is called with a find:
chomp( my @pubkeys = `find keydir/ -type f -name "*.pub" | sort` );
So it can grab previous (possibly corrupted) keys that already were in ~/.ssh
.