gitlab-api-0.0.0.1: src/Gitlab/Projects.hs
{-# LANGUAGE TemplateHaskell #-}
module Gitlab.Projects where
import Data.Yaml
import Gitlab.Core
import Lens.Micro.Platform
import RIO
import RIO.Time
data GitlabCommitData = GitlabCommitData {
_authoredDate :: UTCTime,
_authorEmail :: Text,
_authorName :: Text,
_committedDate :: UTCTime,
_committerName :: Text,
_commitId :: Text
} deriving (Eq, Show)
$(makeLenses ''GitlabCommitData)
instance FromJSON GitlabCommitData where
parseJSON = withObject "GitlabCommitData" $ \v -> GitlabCommitData
<$> v .: "authored_date"
<*> v .: "author_email"
<*> v .: "author_name"
<*> v .: "committed_date"
<*> v .: "committer_name"
<*> v .: "id"
getCommitData :: MonadGitlab env m => Text -> Text -> m GitlabCommitData
getCommitData p r = gitlabRequest
"GET"
("/projects/" <> rParam p <> "/repository/commits/" <> rParam r)
mempty