ganeti
Safe HaskellSafe

Ganeti.Runtime

Description

Implementation of the runtime configuration details.

Synopsis

Documentation

data MiscGroup Source #

Constructors

DaemonsGroup 
AdminGroup 

Instances

Instances details
Bounded MiscGroup # 
Instance details

Defined in Ganeti.Runtime

Enum MiscGroup # 
Instance details

Defined in Ganeti.Runtime

Eq MiscGroup # 
Instance details

Defined in Ganeti.Runtime

Methods

(==) :: MiscGroup -> MiscGroup -> Bool

(/=) :: MiscGroup -> MiscGroup -> Bool

Ord MiscGroup # 
Instance details

Defined in Ganeti.Runtime

Methods

compare :: MiscGroup -> MiscGroup -> Ordering

(<) :: MiscGroup -> MiscGroup -> Bool

(<=) :: MiscGroup -> MiscGroup -> Bool

(>) :: MiscGroup -> MiscGroup -> Bool

(>=) :: MiscGroup -> MiscGroup -> Bool

max :: MiscGroup -> MiscGroup -> MiscGroup

min :: MiscGroup -> MiscGroup -> MiscGroup

Show MiscGroup # 
Instance details

Defined in Ganeti.Runtime

Methods

showsPrec :: Int -> MiscGroup -> ShowS

show :: MiscGroup -> String

showList :: [MiscGroup] -> ShowS

data GanetiGroup Source #

Instances

Instances details
Eq GanetiGroup # 
Instance details

Defined in Ganeti.Runtime

Methods

(==) :: GanetiGroup -> GanetiGroup -> Bool

(/=) :: GanetiGroup -> GanetiGroup -> Bool

Ord GanetiGroup # 
Instance details

Defined in Ganeti.Runtime

Show GanetiGroup # 
Instance details

Defined in Ganeti.Runtime

Methods

showsPrec :: Int -> GanetiGroup -> ShowS

show :: GanetiGroup -> String

showList :: [GanetiGroup] -> ShowS

data RuntimeEnts Source #

Constructors

RuntimeEnts 

Fields

daemonName :: GanetiDaemon -> String Source #

Returns the daemon name for a given daemon.

daemonOnlyOnMaster :: GanetiDaemon -> Bool Source #

Returns whether the daemon only runs on the master node.

daemonLogBase :: GanetiDaemon -> String Source #

Returns the log file base for a daemon.

daemonUser :: GanetiDaemon -> String Source #

Returns the configured user name for a daemon.

daemonGroup :: GanetiGroup -> String Source #

Returns the configured group for a daemon.

daemonsExtraLogbase :: GanetiDaemon -> ExtraLogReason -> String Source #

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 FilePath Source #

Returns the log file for a daemon.

daemonsExtraLogFile :: GanetiDaemon -> ExtraLogReason -> IO FilePath Source #

Returns the extra log files for a daemon.

daemonPidFile :: GanetiDaemon -> IO FilePath Source #

Returns the pid file name for a daemon.

allGroups :: [GanetiGroup] Source #

All groups list. A bit hacking, as we can't enforce it's complete at compile time.

getEnts :: Error e => ResultT e IO RuntimeEnts Source #

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 #

Check that two UIDs are matching or otherwise exit.