provide file with content to export
Rather than providing the key to export, provide the file. When exporting a treeish that contains files that are not annexed, this will let the content of those files also be exported. There's still a Key in the interface; it will be used by the external special remote protocol. A SHA1 key can be used when exporting non-annexed files. This commit was sponsored by Brock Spratlen on Patreon.
This commit is contained in:
parent
8f35c6584d
commit
cca2764f91
2 changed files with 11 additions and 13 deletions
|
@ -233,15 +233,13 @@ checkPresentGeneric d ps = liftIO $
|
|||
exportPath :: FilePath -> ExportLocation -> FilePath
|
||||
exportPath d (ExportLocation loc) = d </> loc
|
||||
|
||||
storeExportDirectory :: FilePath -> Key -> ExportLocation -> MeterUpdate -> Annex Bool
|
||||
storeExportDirectory d k loc p = sendAnnex k rollback send
|
||||
storeExportDirectory :: FilePath -> FilePath -> Key -> ExportLocation -> MeterUpdate -> Annex Bool
|
||||
storeExportDirectory d src _k loc p = liftIO $ catchBoolIO $ do
|
||||
createDirectoryIfMissing True dest
|
||||
withMeteredFile src p (L.writeFile dest)
|
||||
return True
|
||||
where
|
||||
dest = exportPath d loc
|
||||
send src = liftIO $ catchBoolIO $ do
|
||||
createDirectoryIfMissing True dest
|
||||
withMeteredFile src p (L.writeFile dest)
|
||||
return True
|
||||
rollback = liftIO $ nukeFile dest
|
||||
|
||||
retrieveExportDirectory :: FilePath -> Key -> ExportLocation -> FilePath -> MeterUpdate -> Annex (Bool, Verification)
|
||||
retrieveExportDirectory d _k loc dest p = unVerified $ liftIO $ catchBoolIO $ do
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue