kiroku-cli-0.2.0.11: src/Kiroku/Cli/Command.hs
module Kiroku.Cli.Command
( KirokuCommand (..),
OutputFormat (..),
RemoteEndpoint (..),
StatusOptions (..),
SubscriptionCommand (..),
)
where
import Data.Text (Text)
data KirokuCommand
= KirokuNoCommand
| KirokuSubscriptions SubscriptionCommand
deriving stock (Eq, Show)
data SubscriptionCommand
= SubscriptionStatus StatusOptions
deriving stock (Eq, Show)
-- | The base URL of a running worker's @kiroku-metrics@ server (e.g.
-- @http://worker:9091@), used to query its @\/subscriptions@ endpoint.
newtype RemoteEndpoint = RemoteEndpoint Text
deriving stock (Eq, Show)
data StatusOptions = StatusOptions
{ outputFormat :: !OutputFormat,
-- | 'Nothing' = read the in-process registry (embeddable library); 'Just' =
-- query a remote worker over HTTP.
endpoint :: !(Maybe RemoteEndpoint)
}
deriving stock (Eq, Show)
data OutputFormat
= OutputTable
| OutputJson
deriving stock (Eq, Show)