summaryrefslogtreecommitdiff
path: root/src/Propellor/Git/VerifiedBranch.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Propellor/Git/VerifiedBranch.hs')
-rw-r--r--src/Propellor/Git/VerifiedBranch.hs11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Propellor/Git/VerifiedBranch.hs b/src/Propellor/Git/VerifiedBranch.hs
index 51fcb573..df607bd2 100644
--- a/src/Propellor/Git/VerifiedBranch.hs
+++ b/src/Propellor/Git/VerifiedBranch.hs
@@ -30,12 +30,17 @@ verifyOriginBranch originbranch = do
-- Returns True if HEAD is changed by fetching and merging from origin.
fetchOrigin :: IO Bool
fetchOrigin = do
+ fetched <- actionMessage "Pull from central git repository" $
+ boolSystem "git" [Param "fetch"]
+ if fetched
+ then mergeOrigin
+ else return False
+
+mergeOrigin :: IO Bool
+mergeOrigin = do
branchref <- getCurrentBranch
let originbranch = "origin" </> branchref
- void $ actionMessage "Pull from central git repository" $
- boolSystem "git" [Param "fetch"]
-
oldsha <- getCurrentGitSha1 branchref
keyring <- privDataKeyring