Safe HaskellSafe-Infered



Implementation of the Ganeti Confd client functionality.



getConfdClient :: Maybe String -> Maybe Int -> IO ConfdClientSource

Builds a properly initialized ConfdClient. The parameters (an IP address and the port number for the Confd client to connect to) are mainly meant for testing purposes. If they are not provided, the list of master candidates and the default port number will be used.

query :: ConfdClient -> ConfdRequestType -> ConfdQuery -> IO (Maybe ConfdReply)Source

Sends a query to all the Confd servers the client is connected to. Returns the most up-to-date result according to the serial number, chosen between those received before the timeout.

queryOneServer :: MVar () -> MVar (Maybe ConfdReply) -> ConfdRequestType -> ConfdQuery -> HashKey -> (String, PortNumber) -> IO ()Source