forked from filipg/gonito
Minor refactor in cloning code
This commit is contained in:
parent
c028e4b6cc
commit
7311a2a012
@ -241,17 +241,22 @@ getPossiblyExistingRepo checkRepo userId challengeId repoSpec chan = do
|
|||||||
}
|
}
|
||||||
cloneRepo' userId repoCloningSpec chan
|
cloneRepo' userId repoCloningSpec chan
|
||||||
|
|
||||||
|
cloneRepoToTempDir :: RepoCloningSpec -> Channel -> Handler (ExitCode, FilePath)
|
||||||
|
cloneRepoToTempDir repoCloningSpec chan = do
|
||||||
|
let url = repoSpecUrl $ cloningSpecRepo repoCloningSpec
|
||||||
|
msg chan $ concat ["Preparing to clone repo ", url]
|
||||||
|
msg chan "Cloning..."
|
||||||
|
r <- randomInt
|
||||||
|
arenaDir <- arena
|
||||||
|
let tmpRepoDir = arenaDir </> ("t" ++ show r)
|
||||||
|
exitCode <- rawClone tmpRepoDir repoCloningSpec chan
|
||||||
|
return (exitCode, tmpRepoDir)
|
||||||
|
|
||||||
cloneRepo' :: UserId -> RepoCloningSpec -> Channel -> Handler (Maybe (Key Repo))
|
cloneRepo' :: UserId -> RepoCloningSpec -> Channel -> Handler (Maybe (Key Repo))
|
||||||
cloneRepo' userId repoCloningSpec chan = do
|
cloneRepo' userId repoCloningSpec chan = do
|
||||||
let url = repoSpecUrl $ cloningSpecRepo repoCloningSpec
|
let url = repoSpecUrl $ cloningSpecRepo repoCloningSpec
|
||||||
msg chan $ concat ["Preparing to clone repo ", url]
|
(exitCode, tmpRepoDir) <- cloneRepoToTempDir repoCloningSpec chan
|
||||||
msg chan "Cloning..."
|
case exitCode of
|
||||||
r <- randomInt
|
|
||||||
arenaDir <- arena
|
|
||||||
let tmpRepoDir = arenaDir </> ("t" ++ show r)
|
|
||||||
exitCode <- rawClone tmpRepoDir repoCloningSpec chan
|
|
||||||
case exitCode of
|
|
||||||
ExitSuccess -> do
|
ExitSuccess -> do
|
||||||
maybeHeadCommit <- getHeadCommit tmpRepoDir chan
|
maybeHeadCommit <- getHeadCommit tmpRepoDir chan
|
||||||
case maybeHeadCommit of
|
case maybeHeadCommit of
|
||||||
|
Loading…
Reference in New Issue
Block a user