29 lines
743 B
Haskell
Raw Permalink Normal View History

module Main where
import qualified Data.ByteString.Lazy.Char8 as ByteString
import MiniGenericJson.Manifest
( decodeManifest
, encodeManifest
, parseArgs
, renderManifest
)
import System.Environment (getArgs)
import System.Exit (die)
main :: IO ()
main = do
args <- getArgs
let inputArgs =
case args of
[] -> ["api", "production", "3", "platform,security", "stable"]
_ -> args
case parseArgs inputArgs of
Left err -> die err
Right manifest -> do
let encodedManifest = encodeManifest manifest
ByteString.putStrLn encodedManifest
case decodeManifest encodedManifest of
Left err -> die err
Right decodedManifest -> putStrLn (renderManifest decodedManifest)