check-dupes: return a non-zero exit code on failure
This commit is contained in:
parent
ee026f5442
commit
cd7156013d
@ -14,6 +14,8 @@ import Hledger
|
|||||||
import Hledger.Cli.CliOptions
|
import Hledger.Cli.CliOptions
|
||||||
import System.Console.CmdArgs.Explicit
|
import System.Console.CmdArgs.Explicit
|
||||||
import Text.Printf
|
import Text.Printf
|
||||||
|
import System.Exit (exitFailure)
|
||||||
|
import Control.Monad (when)
|
||||||
|
|
||||||
checkdupesmode :: Mode RawOpts
|
checkdupesmode :: Mode RawOpts
|
||||||
checkdupesmode = hledgerCommandMode
|
checkdupesmode = hledgerCommandMode
|
||||||
@ -23,7 +25,11 @@ checkdupesmode = hledgerCommandMode
|
|||||||
hiddenflags
|
hiddenflags
|
||||||
([], Nothing)
|
([], Nothing)
|
||||||
|
|
||||||
checkdupes _opts j = mapM_ render $ checkdupes' $ accountsNames j
|
checkdupes _opts j = do
|
||||||
|
let dupes = checkdupes' $ accountsNames j
|
||||||
|
when (not $ null dupes) $ do
|
||||||
|
mapM_ render dupes
|
||||||
|
exitFailure
|
||||||
|
|
||||||
accountsNames :: Journal -> [(String, AccountName)]
|
accountsNames :: Journal -> [(String, AccountName)]
|
||||||
accountsNames j = map leafAndAccountName as
|
accountsNames j = map leafAndAccountName as
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user