keter-1.2.0: Web application deployment manager, focusing on Haskell web frameworks

Safe HaskellNone

Keter.HostManager

Contents

Synopsis

Types

Actions

reserveHosts :: (LogMessage -> IO ()) -> HostManager -> AppId -> Set Host -> IO ReservationsSource

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 -> IO ()Source

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

Initialize