| Safe Haskell | None |
|---|
Jenkins.Rest.Internal
Description
Jenkins REST API interface internals
- newtype Jenkins a = Jenkins {}
- data JenkinsF a where
- Get :: Method Complete f -> (ByteString -> a) -> JenkinsF a
- Post :: (forall f. Method Complete f) -> ByteString -> (ByteString -> a) -> JenkinsF a
- Conc :: Jenkins a -> Jenkins b -> (a -> b -> c) -> JenkinsF c
- IO :: IO a -> JenkinsF a
- With :: (Request -> Request) -> Jenkins b -> (b -> a) -> JenkinsF a
- Dcon :: JenkinsF a
- liftJ :: JenkinsF a -> Jenkins a
- data ConnectInfo = ConnectInfo {}
- data Result e v
- = Error e
- | Disconnect
- | Result v
- runJenkins :: ConnectInfo -> Jenkins a -> IO (Result HttpException a)
- _Error :: Prism (Result e a) (Result e' a) e e'
- _Disconnect :: Prism' (Result e a) ()
- _Result :: Prism (Result e a) (Result e b) a b
- iterJenkinsIO :: Manager -> Jenkins a -> MaybeT (ReaderT Request (ResourceT IO)) a
- iterJenkins :: Monad m => (JenkinsF (m a) -> m a) -> Jenkins a -> m a
- interpreter :: Manager -> JenkinsF (MaybeT (ReaderT Request (ResourceT IO)) a) -> MaybeT (ReaderT Request (ResourceT IO)) a
- defaultConnectInfo :: ConnectInfo
- jenkinsUrl :: Lens' ConnectInfo String
- jenkinsPort :: Lens' ConnectInfo Int
- jenkinsUser :: Lens' ConnectInfo Text
- jenkinsApiToken :: Lens' ConnectInfo Text
- jenkinsPassword :: Lens' ConnectInfo Text
Documentation
Jenkins REST API query sequence description
Jenkins REST API query
Constructors
| Get :: Method Complete f -> (ByteString -> a) -> JenkinsF a | |
| Post :: (forall f. Method Complete f) -> ByteString -> (ByteString -> a) -> JenkinsF a | |
| Conc :: Jenkins a -> Jenkins b -> (a -> b -> c) -> JenkinsF c | |
| IO :: IO a -> JenkinsF a | |
| With :: (Request -> Request) -> Jenkins b -> (b -> a) -> JenkinsF a | |
| Dcon :: JenkinsF a |
data ConnectInfo Source
Jenkins connection settings
_jenkinsApiToken may be user's password, Jenkins
does not make any distinction between these concepts
Constructors
| ConnectInfo | |
Fields
| |
The result of Jenkins REST API queries
Constructors
| Error e | Exception |
| Disconnect | The client was explicitly disconnected |
| Result v | Querying successfully finished the with value |
runJenkins :: ConnectInfo -> Jenkins a -> IO (Result HttpException a)Source
Query Jenkins API using Jenkins description
Successful result is either Disconnect or
Result v
If HttpException was thrown by http-conduit, runJenkins catches it
and wraps in Error. Other exceptions are not catched
_Disconnect :: Prism' (Result e a) ()Source
A prism into disconnect
iterJenkins :: Monad m => (JenkinsF (m a) -> m a) -> Jenkins a -> m aSource
interpreter :: Manager -> JenkinsF (MaybeT (ReaderT Request (ResourceT IO)) a) -> MaybeT (ReaderT Request (ResourceT IO)) aSource
JenkinsF AST interpreter
defaultConnectInfo :: ConnectInfoSource
Default Jenkins connection settings
defaultConnectInfo = ConnectInfo
{ _jenkinsUrl = "http://example.com/jenkins"
, _jenkinsPort = 8080
, _jenkinsUser = "jenkins"
, _jenkinsApiToken = ""
}
jenkinsUrl :: Lens' ConnectInfo StringSource
A lens into Jenkins URL
jenkinsPort :: Lens' ConnectInfo IntSource
A lens into Jenkins port
jenkinsUser :: Lens' ConnectInfo TextSource
A lens into Jenkins user
jenkinsApiToken :: Lens' ConnectInfo TextSource
A lens into Jenkins user API token
jenkinsPassword :: Lens' ConnectInfo TextSource
A lens into Jenkins password
jenkinsPassword = jenkinsApiToken