on master help sign in
restore start and create endpoints
888d3dfDeni Bertovic
Network/Docker.hs+12−4
@@ -14,7 +14,15 @@ import Data.Aeson.TH
14import qualified Data.ByteString.Lazy as L
14import qualified Data.ByteString.Lazy as L
15import Data.Char
15import Data.Char
16import qualified Data.Text as T
16import qualified Data.Text as T
17+import qualified Data.Text as T
17import Network.Docker.Options
18import Network.Docker.Options
19+import Network.Wreq
20+-- import Pipes
21+-- import qualified Pipes.ByteString as PB
22+-- import qualified Pipes.HTTP as PH
23+
24+
25+import Network.Docker.Internal
18import Network.Docker.Types
26import Network.Docker.Types
19import Network.HTTP.Client.OpenSSL
27import Network.HTTP.Client.OpenSSL
20import Network.Wreq
28import Network.Wreq
@@ -101,11 +109,11 @@ listContainers clientOpts = decodeResponse <$> run (listContainersM clientOpts S
101listImages :: DockerClientOpts -> IO (Maybe [DockerImage])
109listImages :: DockerClientOpts -> IO (Maybe [DockerImage])
102listImages clientOpts = decodeResponse <$> run (listImagesM clientOpts SListImagesEndpoint)
110listImages clientOpts = decodeResponse <$> run (listImagesM clientOpts SListImagesEndpoint)
103
111
104−-- createContainer :: DockerClientOpts -> CreateContainerOpts -> IO(Maybe T.Text)
112+createContainer :: DockerClientOpts -> CreateContainerOpts -> IO(Maybe T.Text)
105−-- createContainer clientOpts createOpts = getElemFromResponse "Id" <$> (_dockerPostQuery "/containers/create" clientOpts createOpts)
113+createContainer clientOpts createOpts = getElemFromResponse "Id" <$> run (createContainerM clientOpts (SCreateContainerEndpoint) createOpts)
106
114
107−-- startContainer :: DockerClientOpts -> String -> StartContainerOpts -> IO(Status)
115+startContainer :: DockerClientOpts -> String -> StartContainerOpts -> IO(Status)
108−-- startContainer clientOpts containerId startOpts = (^. responseStatus) <$> _dockerPostQuery (printf "/containers/%s/start" containerId) clientOpts startOpts
116+startContainer clientOpts cid startOpts = (^. responseStatus) <$> run (startContainerM clientOpts (SStartContainerEndpoint cid) startOpts)
109
117
110stopContainer :: DockerClientOpts -> String -> IO (Status)
118stopContainer :: DockerClientOpts -> String -> IO (Status)
111stopContainer clientOpts cid = (^. responseStatus) <$> run (stopContainerM clientOpts (SStopContainerEndpoint cid))
119stopContainer clientOpts cid = (^. responseStatus) <$> run (stopContainerM clientOpts (SStopContainerEndpoint cid))
Network/Docker/Internal.hs+6
@@ -79,4 +79,10 @@ pauseContainerM clientOpts e = _dockerEmptyPostQuery clientOpts e
79unpauseContainerM :: DockerClientOpts -> SEndpoint UnpauseContainerEndpoint -> HttpRequestM (SEndpoint UnpauseContainerEndpoint)
79unpauseContainerM :: DockerClientOpts -> SEndpoint UnpauseContainerEndpoint -> HttpRequestM (SEndpoint UnpauseContainerEndpoint)
80unpauseContainerM clientOpts e = _dockerEmptyPostQuery clientOpts e
80unpauseContainerM clientOpts e = _dockerEmptyPostQuery clientOpts e
81
81
82+createContainerM :: DockerClientOpts -> SEndpoint CreateContainerEndpoint -> CreateContainerOpts -> HttpRequestM (SEndpoint CreateContainerEndpoint)
83+createContainerM clientOpts e c = _dockerPostQuery clientOpts e c
84+
85+startContainerM :: DockerClientOpts -> SEndpoint StartContainerEndpoint -> StartContainerOpts -> HttpRequestM (SEndpoint StartContainerEndpoint)
86+startContainerM clientOpts e c = _dockerPostQuery clientOpts e c
87+
82
88