module Dist (distArg, distRemote, distTag, distTarget, hackageRelease, ltsStream) where import Data.Maybe (fromMaybe) import FedoraDists (Dist(..), distBranch) import SimpleCmdArgs (Parser, argumentWith, auto) -- | Used for Koji sidetag when needed. sidetag :: Dist -> Maybe String --sidetag (Fedora n) | n == 31 = Just "ghc" sidetag _ = Nothing -- | Maps `Dist` to build tag distTag :: Dist -> String distTag d = show d ++ "-" ++ fromMaybe "build" (sidetag d) -- | Maps `Dist` to target tag distTarget :: Dist -> String distTarget d = show d ++ maybe "" ("-" ++) (sidetag d) -- | optparse-application DIST arg distArg :: Parser Dist distArg = argumentWith auto "DIST" -- | Maps `Dist` to remote branch: eg "origin/master" distRemote :: Dist -> String distRemote d = "origin/" ++ distBranch d -- | Fedora release being tracked in Hackage Distro data hackageRelease :: Dist hackageRelease = Fedora 31 -- | Stackage LTS stream major version ltsStream :: String ltsStream = "lts-13"