ganeti

Safe HaskellSafe-Infered

Ganeti.Runtime

Description

Implementation of the runtime configuration details.

Synopsis

Documentation

data MiscGroup Source

Constructors

DaemonsGroup 
AdminGroup 

Instances

Bounded MiscGroup 
Enum MiscGroup 
Eq MiscGroup 
Ord MiscGroup 
Show MiscGroup 

data RuntimeEnts Source

Constructors

RuntimeEnts 

Fields

reUserToUid :: Map GanetiDaemon UserID
 
reUidToUser :: Map UserID String
 
reGroupToGid :: Map GanetiGroup GroupID
 
reGidToGroup :: Map GroupID String
 

daemonName :: GanetiDaemon -> StringSource

Returns the daemon name for a given daemon.

daemonOnlyOnMaster :: GanetiDaemon -> BoolSource

Returns whether the daemon only runs on the master node.

daemonLogBase :: GanetiDaemon -> StringSource

Returns the log file base for a daemon.

daemonUser :: GanetiDaemon -> StringSource

Returns the configured user name for a daemon.

daemonGroup :: GanetiGroup -> StringSource

Returns the configured group for a daemon.

daemonsExtraLogbase :: GanetiDaemon -> ExtraLogReason -> StringSource

Some daemons might require more than one logfile. Specifically, right now only the Haskell http library snap, used by the monitoring daemon, requires multiple log files.

daemonLogFile :: GanetiDaemon -> IO FilePathSource

Returns the log file for a daemon.

daemonsExtraLogFile :: GanetiDaemon -> ExtraLogReason -> IO FilePathSource

Returns the extra log files for a daemon.

daemonPidFile :: GanetiDaemon -> IO FilePathSource

Returns the pid file name for a daemon.

getEnts :: FromString e => ResultT e IO RuntimeEntsSource

Computes the group/user maps.

verifyDaemonUser :: GanetiDaemon -> RuntimeEnts -> IO ()Source

Checks whether a daemon runs as the right user.

checkUidMatch :: String -> UserID -> UserID -> IO ()Source