From 9f97efe65210e623de2a2b92529829ac069daefb Mon Sep 17 00:00:00 2001 From: Keagan McClelland Date: Mon, 27 Sep 2021 10:58:48 -0600 Subject: [PATCH] rename appmgr calls to be more descriptive of the API --- src/Handler/Apps.hs | 14 ++++---- src/Handler/Icons.hs | 21 ++++++------ src/Handler/Marketplace.hs | 6 ++-- src/Lib/External/AppMgr.hs | 70 +++++++++++++++++++------------------- 4 files changed, 56 insertions(+), 55 deletions(-) diff --git a/src/Handler/Apps.hs b/src/Handler/Apps.hs index b901df7..a4e5c4e 100644 --- a/src/Handler/Apps.hs +++ b/src/Handler/Apps.hs @@ -33,7 +33,6 @@ import Yesod.Persist.Core import Database.Queries import Foundation -import Lib.Error import Lib.External.AppMgr import Lib.Registry import Lib.Types.AppIndex @@ -79,10 +78,10 @@ getAppManifestR appId = do Just v -> pure v let appDir = (<> "/") . ( show av) . ( show appId) $ appsDir addPackageHeader appMgrDir appDir appExt - getManifest appMgrDir - appDir - appExt - (\bsSource -> respondSource "application/json" (bsSource .| awaitForever sendChunkBS)) + sourceManifest appMgrDir + appDir + appExt + (\bsSource -> respondSource "application/json" (bsSource .| awaitForever sendChunkBS)) where appExt = Extension (show appId) :: Extension "s9pk" getAppConfigR :: AppIdentifier -> Handler TypedContent @@ -95,7 +94,10 @@ getAppConfigR appId = do Just v -> pure v let appDir = (<> "/") . ( show av) . ( show appId) $ appsDir addPackageHeader appMgrDir appDir appExt - config <- getConfig appMgrDir appDir appExt (\bsSource -> _) + config <- sourceConfig appMgrDir + appDir + appExt + (\bsSource -> respondSource "application/json" (bsSource .| awaitForever sendChunkBS)) pure $ TypedContent "application/json" (toContent config) where appExt = Extension (show appId) :: Extension "s9pk" diff --git a/src/Handler/Icons.hs b/src/Handler/Icons.hs index 056c58e..fabdb92 100644 --- a/src/Handler/Icons.hs +++ b/src/Handler/Icons.hs @@ -19,7 +19,6 @@ import Data.Conduit ( (.|) ) import qualified Data.Conduit.List as CL import Foundation -import Lib.Error import Lib.External.AppMgr import Lib.Registry import Lib.Types.AppIndex @@ -45,7 +44,7 @@ getIconsR appId = do Nothing -> sendResponseStatus status404 ("Specified App Version Not Found" :: Text) Just v -> pure v let appDir = (<> "/") . ( show spec) . ( show appId) $ appsDir - manifest' <- getManifest appMgrDir appDir ext (\bsSource -> runConduit $ bsSource .| CL.foldMap BS.fromStrict) + manifest' <- sourceManifest appMgrDir appDir ext (\bsSource -> runConduit $ bsSource .| CL.foldMap BS.fromStrict) manifest <- case eitherDecode manifest' of Left e -> do $logError "could not parse service manifest!" @@ -66,10 +65,10 @@ getIconsR appId = do SVG -> pure typeSvg JPG -> pure typeJpeg JPEG -> pure typeJpeg - getIcon appMgrDir - (appDir show ext) - ext - (\bsSource -> respondSource mimeType (bsSource .| awaitForever sendChunkBS)) + sourceIcon appMgrDir + (appDir show ext) + ext + (\bsSource -> respondSource mimeType (bsSource .| awaitForever sendChunkBS)) where ext = Extension (show appId) :: Extension "s9pk" getLicenseR :: AppIdentifier -> Handler TypedContent @@ -82,7 +81,7 @@ getLicenseR appId = do case servicePath of Nothing -> notFound Just p -> - getLicense appMgrDir p ext (\bsSource -> respondSource typePlain (bsSource .| awaitForever sendChunkBS)) + sourceLicense appMgrDir p ext (\bsSource -> respondSource typePlain (bsSource .| awaitForever sendChunkBS)) where ext = Extension (show appId) :: Extension "s9pk" getInstructionsR :: AppIdentifier -> Handler TypedContent @@ -94,8 +93,8 @@ getInstructionsR appId = do servicePath <- liftIO $ getVersionedFileFromDir appsDir ext spec case servicePath of Nothing -> notFound - Just p -> getInstructions appMgrDir - p - ext - (\bsSource -> respondSource typePlain (bsSource .| awaitForever sendChunkBS)) + Just p -> sourceInstructions appMgrDir + p + ext + (\bsSource -> respondSource typePlain (bsSource .| awaitForever sendChunkBS)) where ext = Extension (show appId) :: Extension "s9pk" diff --git a/src/Handler/Marketplace.hs b/src/Handler/Marketplace.hs index 61567e2..5cc6c13 100644 --- a/src/Handler/Marketplace.hs +++ b/src/Handler/Marketplace.hs @@ -414,7 +414,7 @@ getServiceDetails settings metadata maybeVersion appId = do Just v -> pure v let appDir = (<> "/") . ( show version) . ( show appId) $ appsDir let appExt = Extension (show appId) :: Extension "s9pk" - manifest' <- getManifest appMgrDir appDir appExt (\bs -> sinkMem (bs .| mapC BS.fromStrict)) + manifest' <- sourceManifest appMgrDir appDir appExt (\bs -> sinkMem (bs .| mapC BS.fromStrict)) case eitherDecode $ manifest' of Left e -> pure $ Left $ "Could not parse service manifest for " <> show appId <> ": " <> show e Right m -> do @@ -467,7 +467,7 @@ decodeInstructions :: (MonadUnliftIO m, MonadHandler m, KnownSymbol a, MonadThro -> Extension a -> m Text decodeInstructions appmgrPath depPath package = do - getInstructions appmgrPath depPath package (\bs -> sinkMem (bs .| CT.decode CT.utf8)) + sourceInstructions appmgrPath depPath package (\bs -> sinkMem (bs .| CT.decode CT.utf8)) decodeLicense :: (MonadUnliftIO m, MonadThrow m, MonadHandler m, KnownSymbol a) => FilePath @@ -475,7 +475,7 @@ decodeLicense :: (MonadUnliftIO m, MonadThrow m, MonadHandler m, KnownSymbol a) -> Extension a -> m Text decodeLicense appmgrPath depPath package = - getLicense appmgrPath depPath package (\bs -> sinkMem (bs .| CT.decode CT.utf8)) + sourceLicense appmgrPath depPath package (\bs -> sinkMem (bs .| CT.decode CT.utf8)) fetchAllAppVersions :: Key SApp -> HandlerFor RegistryCtx ([VersionInfo], ReleaseNotes) fetchAllAppVersions appId = do diff --git a/src/Lib/External/AppMgr.hs b/src/Lib/External/AppMgr.hs index 56628e8..389dfe7 100644 --- a/src/Lib/External/AppMgr.hs +++ b/src/Lib/External/AppMgr.hs @@ -57,36 +57,36 @@ readProcessInheritStderr a b c sink = do $ System.Process.Typed.proc a b withProcessTerm_ pc $ \p -> sink (getStdout p) -getConfig :: (MonadUnliftIO m, MonadThrow m, KnownSymbol a) - => FilePath - -> FilePath - -> Extension a - -> (ConduitT () ByteString m () -> m r) - -> m r -getConfig appmgrPath appPath e@(Extension appId) sink = do +sourceConfig :: (MonadUnliftIO m, MonadThrow m, KnownSymbol a) + => FilePath + -> FilePath + -> Extension a + -> (ConduitT () ByteString m () -> m r) + -> m r +sourceConfig appmgrPath appPath e@(Extension appId) sink = do let appmgr = readProcessInheritStderr (appmgrPath <> "embassy-sdk") ["inspect", "config", appPath show e, "--json"] "" appmgr sink `catch` \ece -> throwIO (AppMgrE [i|inspect config #{appId} \--json|] (eceExitCode ece)) -getManifest :: (MonadUnliftIO m, KnownSymbol a) - => FilePath - -> FilePath - -> Extension a - -> (ConduitT () ByteString m () -> m r) - -> m r -getManifest appmgrPath appPath e@(Extension appId) sink = do +sourceManifest :: (MonadUnliftIO m, KnownSymbol a) + => FilePath + -> FilePath + -> Extension a + -> (ConduitT () ByteString m () -> m r) + -> m r +sourceManifest appmgrPath appPath e@(Extension appId) sink = do let appmgr = readProcessInheritStderr (appmgrPath <> "embassy-sdk") ["inspect", "manifest", appPath show e] "" appmgr sink `catch` \ece -> throwIO (AppMgrE [i|embassy-sdk inspect manifest #{appId}|] (eceExitCode ece)) -getIcon :: (MonadUnliftIO m, KnownSymbol a) - => FilePath - -> FilePath - -> Extension a - -> (ConduitT () ByteString m () -> m r) - -> m r -getIcon appmgrPath appPath (Extension icon) sink = do +sourceIcon :: (MonadUnliftIO m, KnownSymbol a) + => FilePath + -> FilePath + -> Extension a + -> (ConduitT () ByteString m () -> m r) + -> m r +sourceIcon appmgrPath appPath (Extension icon) sink = do let appmgr = readProcessInheritStderr (appmgrPath <> "embassy-sdk") ["inspect", "icon", appPath] "" appmgr sink `catch` \ece -> throwIO $ AppMgrE [i|embassy-sdk inspect icon #{icon}|] (eceExitCode ece) @@ -96,23 +96,23 @@ getPackageHash appmgrPath appPath e@(Extension appId) = do appmgr (\bsSource -> runConduit $ bsSource .| CL.foldMap id) `catch` \ece -> throwIO $ AppMgrE [i|embassy-sdk inspect hash #{appId}|] (eceExitCode ece) -getInstructions :: (MonadUnliftIO m, KnownSymbol a) - => FilePath - -> FilePath - -> Extension a - -> (ConduitT () ByteString m () -> m r) - -> m r -getInstructions appmgrPath appPath (Extension appId) sink = do +sourceInstructions :: (MonadUnliftIO m, KnownSymbol a) + => FilePath + -> FilePath + -> Extension a + -> (ConduitT () ByteString m () -> m r) + -> m r +sourceInstructions appmgrPath appPath (Extension appId) sink = do let appmgr = readProcessInheritStderr (appmgrPath <> "embassy-sdk") ["inspect", "instructions", appPath] "" appmgr sink `catch` \ece -> throwIO $ AppMgrE [i|embassy-sdk inspect instructions #{appId}|] (eceExitCode ece) -getLicense :: (MonadUnliftIO m, KnownSymbol a) - => FilePath - -> FilePath - -> Extension a - -> (ConduitT () ByteString m () -> m r) - -> m r -getLicense appmgrPath appPath (Extension appId) sink = do +sourceLicense :: (MonadUnliftIO m, KnownSymbol a) + => FilePath + -> FilePath + -> Extension a + -> (ConduitT () ByteString m () -> m r) + -> m r +sourceLicense appmgrPath appPath (Extension appId) sink = do let appmgr = readProcessInheritStderr (appmgrPath <> "embassy-sdk") ["inspect", "license", appPath] "" appmgr sink `catch` \ece -> throwIO $ AppMgrE [i|embassy-sdk inspect license #{appId}|] (eceExitCode ece)