If a previous git invocation crashes, it is possible that an orphaned
lock file (e.g. shallow.lock) is left on the filesystem. This previously
caused git-sync to crash loop because the lock file is never deleted.
This change adds a check in sanityCheckRepo for the existence of a git
lock file. If the git lock file exists at this stage, then initRepo will
re-initialize the repository.
Fix a few misc linter issues:
main_test.go:750:7: Error return value is not checked (errcheck)
touch(dirPath)
^
main_test.go:759:7: Error return value is not checked (errcheck)
touch(filePath)
^
main_test.go:768:7: Error return value is not checked (errcheck)
touch(newfilePath)
^
main.go:2089:3: S1023: redundant `return` statement (gosimple)
return
^
main.go:1935:13: S1039: unnecessary use of fmt.Sprintf (gosimple)
sshCmd += fmt.Sprintf(" -o StrictHostKeyChecking=no")
^
main.go:1152:33: SA1016: os.Kill cannot be trapped (did you mean syscall.SIGTERM?) (staticcheck)
signal.Notify(c, os.Interrupt, os.Kill)
Faster builds and versions from tags. Also use alpine as a base image. We
need alpine for other architectures...
Also change the --wait flag to take a float for sub-second waits.