on master help sign in
command: Allow thunk pack to work on raw git repos
bafe4e6Elliot Cameron
lib/command/src/Obelisk/Command/Thunk.hs+4−4
@@ -814,11 +814,11 @@ packThunk = packThunk' False
814
814
815packThunk' :: MonadObelisk m => Bool -> ThunkPackConfig -> FilePath -> m ThunkPtr
815packThunk' :: MonadObelisk m => Bool -> ThunkPackConfig -> FilePath -> m ThunkPtr
816packThunk' noTrail (ThunkPackConfig force thunkConfig) thunkDir = checkThunkDirectory thunkDir *> readThunk thunkDir >>= \case
816packThunk' noTrail (ThunkPackConfig force thunkConfig) thunkDir = checkThunkDirectory thunkDir *> readThunk thunkDir >>= \case
817− Left err -> failWith [i|Can't pack thunk at ${thunkDir}: ${err}|]
818 Right (ThunkData_Packed _) -> failWith [i|Thunk at ${thunkDir} is is already packed|]
817 Right (ThunkData_Packed _) -> failWith [i|Thunk at ${thunkDir} is is already packed|]
819− Right (ThunkData_Checkout _) -> do
818+ _ -> withSpinner'
820− withSpinner' ("Packing thunk " <> T.pack thunkDir)
819+ ("Packing thunk " <> T.pack thunkDir)
821− (finalMsg noTrail $ const $ "Packed thunk " <> T.pack thunkDir) $ do
820+ (finalMsg noTrail $ const $ "Packed thunk " <> T.pack thunkDir) $
821+ do
822 thunkPtr <- modifyThunkPtrByConfig thunkConfig <$> getThunkPtr (not force) thunkDir (_thunkConfig_private thunkConfig)
822 thunkPtr <- modifyThunkPtrByConfig thunkConfig <$> getThunkPtr (not force) thunkDir (_thunkConfig_private thunkConfig)
823 callProcessAndLogOutput (Debug, Error) $ proc rmPath ["-rf", thunkDir] -- thunkDir may be a symlink
823 callProcessAndLogOutput (Debug, Error) $ proc rmPath ["-rf", thunkDir] -- thunkDir may be a symlink
824 createThunk thunkDir thunkPtr
824 createThunk thunkDir thunkPtr