Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 30 additions & 6 deletions helper/GitCliHelper.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,23 @@ func (impl *GitUtil) Fetch(rootDir string, username string, password string) (re
log.Println(util.DEVTRON, "git fetch ", "location", rootDir)
cmd := exec.Command("git", "-C", rootDir, "fetch", "origin", "--tags", "--force")
output, errMsg, err := impl.runCommandWithCred(cmd, username, password)
log.Println(util.DEVTRON, "fetch output", "root", rootDir, "opt", output, "errMsg", errMsg, "error", err)
log.Println(util.DEVTRON, "fetch output", "root", rootDir, "opt", output)
if len(errMsg) > 0 || err != nil {
log.Println("fetch output err, MSG: ", errMsg, " , err:", err)
return output, errMsg, err
}
return output, "", nil
}

func (impl *GitUtil) Checkout(rootDir string, checkout string) (response, errMsg string, err error) {
log.Println(util.DEVTRON, "git checkout ", "location", rootDir)
cmd := exec.Command("git", "-C", rootDir, "checkout", checkout, "--force")
output, errMsg, err := impl.runCommand(cmd)
log.Println(util.DEVTRON, "checkout output", "root", rootDir, "opt", output, "errMsg", errMsg, "error", err)
log.Println(util.DEVTRON, "checkout output", "root", rootDir, "opt", output)
if len(errMsg) > 0 || err != nil {
log.Println("checkout output err, MSG: ", errMsg, " , err:", err)
return output, errMsg, err
}
return output, "", nil
}

Expand Down Expand Up @@ -105,30 +113,46 @@ func (impl *GitUtil) Merge(rootDir string, commit string) (response, errMsg stri
command := "cd " + rootDir + " && git config user.email git@devtron.com && git config user.name Devtron && git merge " + commit + " --no-commit"
cmd := exec.Command("/bin/sh", "-c", command)
output, errMsg, err := impl.runCommand(cmd)
log.Println(util.DEVTRON, "merge output", "root", rootDir, "opt", output, "errMsg", errMsg, "error", err)
log.Println(util.DEVTRON, "merge output", "root", rootDir, "opt", output)
if len(errMsg) > 0 || err != nil {
log.Println("merge output error, MSG: ", errMsg, " , err:", err)
return output, errMsg, err
}
return output, errMsg, err
}

func (impl *GitUtil) RecursiveFetchSubmodules(rootDir string) (response, errMsg string, error error) {
log.Println(util.DEVTRON, "git recursive fetch submodules ", "location", rootDir)
cmd := exec.Command("git", "-C", rootDir, "submodule", "update", "--init", "--recursive")
output, eMsg, err := impl.runCommandForSuppliedNullifiedEnv(cmd, false)
log.Println(util.DEVTRON, "recursive fetch submodules output", "root", rootDir, "opt", output, "errMsg", errMsg, "error", err)
log.Println(util.DEVTRON, "recursive fetch submodules output", "root", rootDir, "opt", output)
if len(errMsg) > 0 || err != nil {
log.Println("recursive fetch submodules error, MSG: ", errMsg, " , err:", err)
return output, errMsg, err
}
return output, eMsg, err
}

func (impl *GitUtil) UpdateCredentialHelper(rootDir string) (response, errMsg string, error error) {
log.Println(util.DEVTRON, "git credential helper store ", "location", rootDir)
cmd := exec.Command("git", "-C", rootDir, "config", "--global", "credential.helper", "store")
output, eMsg, err := impl.runCommandForSuppliedNullifiedEnv(cmd, false)
log.Println(util.DEVTRON, "git credential helper store output", "root", rootDir, "opt", output, "errMsg", errMsg, "error", err)
log.Println(util.DEVTRON, "git credential helper store output", "root", rootDir, "opt")
if len(errMsg) > 0 || err != nil {
log.Println("git credential helper store output error, MSG: ", errMsg, " , err:", err)
return output, errMsg, err
}
return output, eMsg, err
}

func (impl *GitUtil) UnsetCredentialHelper(rootDir string) (response, errMsg string, error error) {
log.Println(util.DEVTRON, "git credential helper unset ", "location", rootDir)
cmd := exec.Command("git", "-C", rootDir, "config", "--global", "--unset", "credential.helper")
output, eMsg, err := impl.runCommandForSuppliedNullifiedEnv(cmd, false)
log.Println(util.DEVTRON, "git credential helper unset output", "root", rootDir, "opt", output, "errMsg", errMsg, "error", err)
log.Println(util.DEVTRON, "git credential helper unset output", "root", rootDir, "opt", output)
if len(errMsg) > 0 || err != nil {
log.Println("git credential helper unset output error, MSG: ", errMsg, " , err:", err)
return output, errMsg, err
}
return output, eMsg, err
}
8 changes: 4 additions & 4 deletions helper/GitHelper.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ func CloneAndCheckout(ciProjectDetails []CiProjectDetails) error {

_, msgMsg, cErr := gitCli.Clone(filepath.Join(util.WORKINGDIR, prj.CheckoutPath), prj.GitRepository, auth.Username, auth.Password)
if cErr != nil {
log.Fatal("could not clone repo ", " err ", cErr, "msgMsg", msgMsg)
log.Fatal("could not clone repo ", "msgMsg", msgMsg, " err ", cErr)
}

// checkout code
Expand All @@ -117,7 +117,7 @@ func CloneAndCheckout(ciProjectDetails []CiProjectDetails) error {
log.Println("checkout commit in branch fix : ", checkoutSource)
msgMsg, cErr = Checkout(gitCli, prj.CheckoutPath, checkoutSource, authMode, prj.FetchSubmodules, auth.Username, auth.Password, prj.GitRepository)
if cErr != nil {
log.Fatal("could not checkout hash ", " err ", cErr, "msgMsg", msgMsg)
log.Fatal("could not checkout hash ", "msgMsg", msgMsg, " err ", cErr)
}

} else if prj.SourceType == SOURCE_TYPE_WEBHOOK {
Expand All @@ -135,7 +135,7 @@ func CloneAndCheckout(ciProjectDetails []CiProjectDetails) error {
// checkout target hash
msgMsg, cErr = Checkout(gitCli, prj.CheckoutPath, targetCheckout, authMode, prj.FetchSubmodules, auth.Username, auth.Password, prj.GitRepository)
if cErr != nil {
log.Fatal("could not checkout ", "targetCheckout ", targetCheckout, " err ", cErr, " msgMsg", msgMsg)
log.Fatal("could not checkout ", "targetCheckout ", targetCheckout, " msgMsg", msgMsg, " err ", cErr)
return cErr
}

Expand All @@ -153,7 +153,7 @@ func CloneAndCheckout(ciProjectDetails []CiProjectDetails) error {
// merge source
_, msgMsg, cErr = gitCli.Merge(filepath.Join(util.WORKINGDIR, prj.CheckoutPath), sourceCheckout)
if cErr != nil {
log.Fatal("could not merge ", "sourceCheckout ", sourceCheckout, " err ", cErr, " msgMsg", msgMsg)
log.Fatal("could not merge ", "sourceCheckout ", sourceCheckout, " msgMsg", msgMsg, " err ", cErr)
return cErr
}

Expand Down