Copyright | (C) 2016 Awake Networks |
---|---|
License | Apache-2.0 |
Maintainer | Awake Networks <opensource@awakenetworks.com> |
Stability | stable |
Safe Haskell | None |
Language | Haskell2010 |
- mapPool :: Traversable t => Int -> ((String -> IO ()) -> a -> Hocker FilePath) -> t a -> Hocker (t (Either HockerException FilePath))
- forPool :: Traversable t => Int -> t a -> ((String -> IO ()) -> a -> Hocker FilePath) -> Hocker (t (Either HockerException FilePath))
- fetchLayer :: (String -> IO ()) -> (RefLayer, Layer) -> Hocker FilePath
- createImageManifest :: RepoTag -> FilePath -> [RefLayer] -> Hocker ()
- createImageRepository :: RepoTag -> [RefLayer] -> Hocker ()
- createImageTar :: Hocker FilePath
Documentation
:: Traversable t | |
=> Int | Number of pooled worker threads |
-> ((String -> IO ()) -> a -> Hocker FilePath) | Processing function |
-> t a | A Traversable container |
-> Hocker (t (Either HockerException FilePath)) |
Like mapM
but concurrently apply a function to the elements of
the Traversable
, limiting the maximum number of worker threads by
_n_.
:: Traversable t | |
=> Int | Number of pooled worker threads |
-> t a | A Traversable container |
-> ((String -> IO ()) -> a -> Hocker FilePath) | Processing function |
-> Hocker (t (Either HockerException FilePath)) |
Like mapPool
but with the arguments flipped.
:: (String -> IO ()) | Concurrent terminal output function |
-> (RefLayer, Layer) | A tuple of the reference layer hash digest from the image's config JSON and hash digest from the image's manifest JSON |
-> Hocker FilePath |
Download, verify, decompress, and write a docker container image layer to the filesystem.
:: RepoTag | e.g: registry.mydomain.net:5001reponameimagename |
-> FilePath | Path of image config file for manifest |
-> [RefLayer] | Layer hash digests sourced from the image's config JSON |
-> Hocker () |
Generate a manifest.json
file.
createImageRepository Source #
:: RepoTag | e.g: registry.mydomain.net:5001reponameimagename |
-> [RefLayer] | Layer hash digests sourced from the image's configuration JSON |
-> Hocker () |
Generate a repositories
json file.
NB: it is JSON but Docker doesn't want it a .json
extension
unlike its sibling the manifest.json
file.
createImageTar :: Hocker FilePath Source #
Tar and gzip the output dir into the final docker image archive and remove the output dir.