module Main (main) where import Prelude import Control.Exception.Safe import Data.Aeson import Faktory.Job (perform) import Faktory.Producer import GHC.Generics import System.Environment (getArgs) -- | Must match examples/consumer newtype Job = Job {jobMessage :: String} deriving stock (Generic) deriving anyclass (ToJSON) main :: IO () main = bracket newProducerEnv closeProducer $ \producer -> do args <- getArgs jobId <- perform mempty producer Job {jobMessage = unwords args} putStrLn $ "Pushed job: " <> show jobId