diff options
-rw-r--r-- | CmdLine.hs | 6 | ||||
-rw-r--r-- | Storage/Network.hs | 1 | ||||
-rw-r--r-- | keysafe.hs | 4 |
3 files changed, 7 insertions, 4 deletions
@@ -11,6 +11,7 @@ import qualified Gpg import Options.Applicative import qualified Data.ByteString.UTF8 as BU8 import System.Directory +import Network.Wai.Handler.Warp (Port) data CmdLine = CmdLine { mode :: Maybe Mode @@ -21,7 +22,7 @@ data CmdLine = CmdLine , customShareParams :: Maybe ShareParams } -data Mode = Backup | Restore | UploadQueued | Server | Benchmark +data Mode = Backup | Restore | UploadQueued | Server Port | Benchmark deriving (Show) parse :: Parser CmdLine @@ -45,8 +46,9 @@ parse = CmdLine ( long "uploadqueued" <> help "Upload any data to servers that was queued by a previous --backup run." ) - server = flag' Server + server = Server <$> option auto ( long "server" + <> metavar "PORT" <> help "Run as a keysafe server, accepting objects and storing them to ~/.keysafe/objects/local/" ) benchmark = flag' Benchmark diff --git a/Storage/Network.hs b/Storage/Network.hs index 16ed97d..0b6ff49 100644 --- a/Storage/Network.hs +++ b/Storage/Network.hs @@ -9,6 +9,7 @@ module Storage.Network (Server(..), networkServers, networkStorage) where import Types import Types.Storage +import HTTP.Client newtype Server = Server { serverName :: String } @@ -63,8 +63,8 @@ dispatch cmdline ui storagelocations tunables possibletunables = do restore storagelocations ui possibletunables Gpg.anyKey go CmdLine.UploadQueued _ = uploadQueued - go CmdLine.Server _ = - runServer 80 + go (CmdLine.Server port) _ = + runServer port go CmdLine.Benchmark _ = benchmarkTunables tunables |