haskell-ci-0.4: src/HaskellCI/Config/Ubuntu.hs
module HaskellCI.Config.Ubuntu where
import HaskellCI.Prelude
import qualified Distribution.Parsec as C
import qualified Distribution.Pretty as C
import qualified Text.PrettyPrint as PP
data Ubuntu = Xenial | Bionic
deriving (Eq, Ord, Show)
instance C.Parsec Ubuntu where
parsec = do
t <- C.parsecToken
case t of
"xenial" -> return Xenial
"bionic" -> return Bionic
_ -> fail $ "Unknown ubuntu release " ++ t
instance C.Pretty Ubuntu where
pretty = PP.text . showUbuntu
showUbuntu :: Ubuntu -> String
showUbuntu Xenial = "xenial"
showUbuntu Bionic = "bionic"