diff --git a/cmd/gogitlabber/gitlab.go b/cmd/gogitlabber/gitlab.go index 8174682..8a0f7d5 100644 --- a/cmd/gogitlabber/gitlab.go +++ b/cmd/gogitlabber/gitlab.go @@ -61,13 +61,15 @@ func checkoutRepositories(repositories []Repository) { // create clone gitlab url repoName := string(repo.PathWithNamespace) - gitlabUrl := fmt.Sprintf("https://gitlab-token:%s@%s/%s.git", - gitlabToken, gitlabHost, repoName) + gitlabUrl := fmt.Sprintf("https://gitlab-token:%s@%s/%s.git", + gitlabToken, + gitlabHost, + repoName) // create repository destination repoDestination := repoDestinationPre + repoName - // create bar description + // create and update bar description descriptionPrefixPre := "Cloning repository " descriptionPrefix := descriptionPrefixPre + repoName + " ..." bar.Describe(descriptionPrefix) diff --git a/cmd/gogitlabber/main.go b/cmd/gogitlabber/main.go index 486c0c9..9112f01 100644 --- a/cmd/gogitlabber/main.go +++ b/cmd/gogitlabber/main.go @@ -13,7 +13,6 @@ var gitlabHost string var clonedCount int var errorCount int var pulledCount int -var pullError int var pullErrorMsg []string type Repository struct { @@ -26,6 +25,9 @@ func main() { // manage all argument magic manageArguments() + // check for git + verifyGitAvailable() + // fetch repository information from gitlab repositories, err := fetchRepositories() if err != nil { diff --git a/cmd/gogitlabber/prerequisites.go b/cmd/gogitlabber/prerequisites.go new file mode 100644 index 0000000..64f0924 --- /dev/null +++ b/cmd/gogitlabber/prerequisites.go @@ -0,0 +1,15 @@ +package main + +import ( + "log" + "os" + "os/exec" +) + +func verifyGitAvailable() { + _, err := exec.LookPath("git") + if err != nil { + log.Fatalf("Error: could not find git in path") + os.Exit(1) + } +}