diff options
Diffstat (limited to 'src/Propellor/Keyring.hs')
| -rw-r--r-- | src/Propellor/Keyring.hs | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/src/Propellor/Keyring.hs b/src/Propellor/Keyring.hs deleted file mode 100644 index c3018eb9..00000000 --- a/src/Propellor/Keyring.hs +++ /dev/null @@ -1,50 +0,0 @@ -module Propellor.Keyring where - -import Propellor -import Utility.SafeCommand - -keyring :: FilePath -keyring = privDataDir </> "keyring.gpg" - -addKey :: String -> IO () -addKey keyid = exitBool =<< allM id [ gpg, gitadd, gitconfig, gitcommit ] - where - gpg = do - createDirectoryIfMissing True privDataDir - boolSystem "sh" - [ Param "-c" - , Param $ "gpg --export " ++ keyid ++ " | gpg " ++ - unwords (gpgopts ++ ["--import"]) - ] - gitadd = boolSystem "git" - [ Param "add" - , File keyring - ] - - gitconfig = boolSystem "git" - [ Param "config" - , Param "user.signingkey" - , Param keyid - ] - - gitcommit = gitCommit - [ File keyring - , Param "-m" - , Param "propellor addkey" - ] - - gpgopts = - [ "--options" - , "/dev/null" - , "--no-default-keyring" - , "--keyring", keyring - ] - -{- Automatically sign the commit if there'a a keyring. -} -gitCommit :: [CommandParam] -> IO Bool -gitCommit ps = do - k <- doesFileExist keyring - boolSystem "git" $ catMaybes $ - [ Just (Param "commit") - , if k then Just (Param "--gpg-sign") else Nothing - ] ++ map Just ps |
