keter-2.0.1: Web application deployment manager, focusing on Haskell web frameworks
Safe HaskellNone
LanguageHaskell98

Keter.HostManager

Synopsis

Types

Actions

reserveHosts :: (LogMessage -> IO ()) -> HostManager -> AppId -> Set Host -> IO Reservations Source #

Reserve the given hosts so that no other application may use them. Does not yet enable any action. The semantics are:

  1. If a requested host is currently actively used or by an app of the same name, it is considered reserved.
  2. If a requested host is currently reserved by an app of the same name, it is considered an error in calling this API. Only one app reservation can happen at a time.
  3. If any requested host is currently used or reserved by an app with a different name, then those values are returned as Left.
  4. Otherwise, the hosts which were reserved are returned as Right. This does not include previously active hosts.

forgetReservations :: (LogMessage -> IO ()) -> HostManager -> AppId -> Reservations -> IO () Source #

Forget previously made reservations.

activateApp :: (LogMessage -> IO ()) -> HostManager -> AppId -> Map Host (ProxyAction, Credentials) -> IO () Source #

Activate a new app. Note that you must first reserve the hostnames you'll be using.

Initialize