git-annex/Command/InAnnex.hs
Joey Hess 53526136e8
move commandAction out of CmdLine.Seek
This is groundwork for nested seek loops, eg seeking over all files and
then performing commandActions on a list of remotes, which can be done
concurrently.

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2018-10-01 14:12:06 -04:00

29 lines
642 B
Haskell

{- git-annex command
-
- Copyright 2010 Joey Hess <id@joeyh.name>
-
- Licensed under the GNU GPL version 3 or higher.
-}
module Command.InAnnex where
import Command
import Annex.Content
cmd :: Command
cmd = noCommit $
command "inannex" SectionPlumbing
"checks if keys are present in the annex"
(paramRepeating paramKey)
(withParams seek)
seek :: CmdParams -> CommandSeek
seek = withKeys (commandAction . start)
start :: Key -> CommandStart
start key = inAnnexSafe key >>= dispatch
where
dispatch (Just True) = stop
dispatch (Just False) = exit 1
dispatch Nothing = exit 100
exit n = liftIO $ exitWith $ ExitFailure n