module Main where import MiniDependency.Order ( catalog , renderPlan , resolveDeploymentOrder ) import System.Environment (getArgs) import System.Exit (die) main :: IO () main = do args <- getArgs let requestedServices = case args of [] -> ["frontend", "billing"] _ -> args case resolveDeploymentOrder catalog requestedServices of Left err -> die err Right deploymentPlan -> putStrLn (renderPlan deploymentPlan)