packages feed

stack-2.11.1: src/Stack/Options/UploadParser.hs

{-# LANGUAGE NoImplicitPrelude #-}

-- | Functions to parse command line arguments for Stack's @upload@ command.
module Stack.Options.UploadParser
  ( uploadOptsParser
  ) where

import           Options.Applicative ( Parser, flag, help, long )
import           Stack.Options.SDistParser ( sdistOptsParser )
import           Stack.Prelude
import           Stack.Upload ( UploadOpts (..), UploadVariant (..) )

-- | Parse command line arguments for Stack's @upload@ command.
uploadOptsParser :: Parser UploadOpts
uploadOptsParser =
  UploadOpts
    <$> sdistOptsParser
    <*> uploadVariant
  where
    uploadVariant = flag Publishing Candidate
      (  long "candidate"
      <> help "Upload as a package candidate."
      )