make --json-error-messages capture url download errors
Convert Utility.Url to return Either String so the error message can be displated in the annex monad and so captured. (When curl is used, its errors are still not caught.)
This commit is contained in:
parent
99536e3a0b
commit
890330f0fe
16 changed files with 161 additions and 121 deletions
|
@ -40,9 +40,10 @@ import Utility.Metered
|
|||
import qualified Utility.Lsof as Lsof
|
||||
import qualified BuildInfo
|
||||
import qualified Utility.Url as Url
|
||||
import qualified Annex.Url as Url
|
||||
import qualified Annex.Url as Url hiding (download)
|
||||
import Utility.Tuple
|
||||
|
||||
import Data.Either
|
||||
import qualified Data.Map as M
|
||||
|
||||
{- Upgrade without interaction in the webapp. -}
|
||||
|
@ -323,8 +324,8 @@ downloadDistributionInfo = do
|
|||
liftIO $ withTmpDir "git-annex.tmp" $ \tmpdir -> do
|
||||
let infof = tmpdir </> "info"
|
||||
let sigf = infof ++ ".sig"
|
||||
ifM (Url.download nullMeterUpdate distributionInfoUrl infof uo
|
||||
<&&> Url.download nullMeterUpdate distributionInfoSigUrl sigf uo
|
||||
ifM (isRight <$> Url.download nullMeterUpdate distributionInfoUrl infof uo
|
||||
<&&> (isRight <$> Url.download nullMeterUpdate distributionInfoSigUrl sigf uo)
|
||||
<&&> verifyDistributionSig gpgcmd sigf)
|
||||
( parseInfoFile <$> readFileStrict infof
|
||||
, return Nothing
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue