-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A build tool for multiple docker image layers -- -- Build and manage multiple docker image layers to speed up deployment @package dockercook @version 0.4.0.0 module Cook.Types data CookConfig CookConfig :: FilePath -> FilePath -> Maybe FilePath -> Maybe String -> Int -> Bool -> Bool -> [String] -> CookConfig cc_dataDir :: CookConfig -> FilePath cc_buildFileDir :: CookConfig -> FilePath cc_boringFile :: CookConfig -> Maybe FilePath cc_tagprefix :: CookConfig -> Maybe String cc_cookFileDropCount :: CookConfig -> Int cc_autoPush :: CookConfig -> Bool cc_forceRebuild :: CookConfig -> Bool cc_buildEntryPoints :: CookConfig -> [String] dummyCookConfig :: CookConfig data ErrorWarningOk EWOError :: Text -> ErrorWarningOk EWOWarning :: Text -> ErrorWarningOk EWOOk :: ErrorWarningOk newtype StreamHook StreamHook :: (ByteString -> IO ()) -> StreamHook unStreamHook :: StreamHook -> ByteString -> IO () newtype SHA1 SHA1 :: ByteString -> SHA1 unSha1 :: SHA1 -> ByteString newtype DockerImage DockerImage :: Text -> DockerImage unDockerImage :: DockerImage -> Text newtype DockerImageId DockerImageId :: Text -> DockerImageId unDockerImageId :: DockerImageId -> Text instance Show CookConfig instance Eq CookConfig instance Show SHA1 instance Eq SHA1 instance Show DockerImage instance Eq DockerImage instance Hashable DockerImage instance Show DockerImageId instance Eq DockerImageId instance Hashable DockerImageId module Cook.Util quickHash :: [ByteString] -> SHA1 concatHash :: [SHA1] -> SHA1 initLoggingFramework :: Priority -> IO () logInfo :: MonadIO m => String -> m () logDebug :: MonadIO m => String -> m () logWarn :: MonadIO m => String -> m () logError :: MonadIO m => String -> m () systemStream :: Maybe FilePath -> String -> (ByteString -> IO ()) -> IO ExitCode compressFilesInDir :: FilePath -> FilePath -> [FilePath] -> IO () module Cook.Uploader data Uploader mkUploader :: Int -> IO Uploader killUploader :: Uploader -> IO [DockerImage] enqueueImage :: Uploader -> DockerImage -> IO () waitForCompletion :: Uploader -> IO () module Cook.State.Manager data StateManager data HashManager HashManager :: (forall m. MonadIO m => FilePath -> m SHA1 -> m SHA1) -> (forall m. MonadIO m => FilePath -> m Bool) -> HashManager hm_lookup :: HashManager -> forall m. MonadIO m => FilePath -> m SHA1 -> m SHA1 hm_didFileChange :: HashManager -> forall m. MonadIO m => FilePath -> m Bool createStateManager :: FilePath -> IO (StateManager, HashManager) markUsingImage :: StateManager -> DockerImage -> IO () isImageKnown :: StateManager -> DockerImage -> IO Bool fastFileHash :: MonadIO m => HashManager -> FilePath -> m SHA1 -> m SHA1 syncImages :: StateManager -> (DockerImage -> IO Bool) -> IO () waitForWrites :: StateManager -> IO () getImageId :: StateManager -> DockerImage -> IO (Maybe DockerImageId) setImageId :: StateManager -> DockerImage -> DockerImageId -> IO () _STATE_DIR_NAME_ :: [Char] findStateDirectory :: IO FilePath module Cook.Sync runSync :: FilePath -> IO () module Cook.BuildFile newtype BuildFileId BuildFileId :: Text -> BuildFileId unBuildFileId :: BuildFileId -> Text data BuildFile BuildFile :: BuildFileId -> BuildBase -> Maybe FilePath -> Vector (Either TxRef DockerCommand) -> Vector FilePattern -> Vector Text -> HashMap TxRef (Vector Text) -> BuildFile bf_name :: BuildFile -> BuildFileId bf_base :: BuildFile -> BuildBase bf_unpackTarget :: BuildFile -> Maybe FilePath bf_dockerCommands :: BuildFile -> Vector (Either TxRef DockerCommand) bf_include :: BuildFile -> Vector FilePattern bf_prepare :: BuildFile -> Vector Text bf_transactions :: BuildFile -> HashMap TxRef (Vector Text) data BuildBase BuildBaseDocker :: DockerImage -> BuildBase BuildBaseCook :: BuildFileId -> BuildBase data DockerCommand DockerCommand :: Text -> Text -> DockerCommand dc_command :: DockerCommand -> Text dc_args :: DockerCommand -> Text data TxRef dockerCmdToText :: DockerCommand -> Text parseBuildFile :: CookConfig -> FilePath -> IO (Either String BuildFile) buildTxScripts :: FilePath -> BuildFile -> IO (Vector DockerCommand, SHA1) copyTarAndUnpack :: FilePath -> FilePath -> [DockerCommand] data FilePattern matchesFilePattern :: FilePattern -> FilePath -> Bool parseFilePattern :: Text -> Either String FilePattern parseBuildFileText :: CookConfig -> FilePath -> Text -> IO (Either String BuildFile) instance Show BuildFileId instance Eq BuildFileId instance Show TxRef instance Eq TxRef instance Hashable TxRef instance Show BuildBase instance Eq BuildBase instance Show DockerCommand instance Eq DockerCommand instance Show PatternPart instance Eq PatternPart instance Show FilePattern instance Eq FilePattern instance Show BuildFileLine instance Eq BuildFileLine instance Show BuildFile instance Eq BuildFile module Cook.Build cookBuild :: FilePath -> CookConfig -> Uploader -> Maybe StreamHook -> IO [DockerImage] cookParse :: FilePath -> IO ()