| Branch: | Tag: | Revision:

root / src / Ganeti @ 15a53b1e

Name Size
BasicTypes.hs 14.3 kB
Common.hs 14.4 kB
Compat.hs 1.4 kB
Config.hs 15.1 kB
ConfigReader.hs 10.8 kB
ConstantUtils.hs 5.3 kB
Constants.hs 122 kB
Daemon.hs 15.8 kB
Errors.hs 6.5 kB
Hash.hs 1.8 kB
JQScheduler.hs 13.5 kB
JQueue.hs 21.4 kB
JSON.hs 12.3 kB
Jobs.hs 3.3 kB
Kvmd.hs 11.5 kB
Logging.hs 6.1 kB
Luxi.hs 11.8 kB
Metad.hs 3.2 kB
Network.hs 3.5 kB
Objects.hs 26.2 kB
OpCodes.hs 27.2 kB
OpParams.hs 48.2 kB
Parsers.hs 1.7 kB
Path.hs 4.1 kB
PyValue.hs 2.9 kB
Rpc.hs 22.6 kB
Runtime.hs 7.9 kB
Ssconf.hs 5.2 kB
THH.hs 51.2 kB
Types.hs 29.3 kB
UDSServer.hs 12.9 kB
Utils.hs 24.8 kB
VCluster.hs 1.6 kB 246 Bytes

Latest revisions

# Date Author Comment
15a53b1e 02/26/2014 06:23 pm Klaus Aehlig

Make Locks a JSON instance

As requests to acquire or release locks come via
inter-process communication, we need a serialization
of the locks data type.

All locks are serialised as JSON objects, where the
key "type" describes the type of lock, and the remaining...

71dc39a1 02/26/2014 06:23 pm Klaus Aehlig

Make LockAllocation an instance of JSON

In this way, we can serialize a lock state to disk, so that
locks can survive a restart of WConfD.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

59651d52 02/26/2014 02:07 pm Petr Pudlak

Export reading and writing the configuration using RPC

Note that currently these functions lack any kind of locking and
concurrent calls to 'writeConfig' will result in lost changes in the

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

833c32b3 02/26/2014 02:07 pm Petr Pudlak

Add a module for functions specific to config. management

.. and include ConfigData in WConfd's ConfigState.

Currently it includes functions for asynchronous saving the
configuration and reading and (over)writing it in the daemon state.

Load the configuration from the file at daemon startup and configure an...

13d26b66 02/26/2014 02:06 pm Petr Pudlak

Add more general conf. handling functions to WConfd's Monad

Add functions for reading and writing the configuration. Writing
triggers the asynchronous worker which saves the configuration into the
master file. The actual action that saves the configuration is passed as...

a6a6a1b5 02/26/2014 02:06 pm Petr Pudlak

Add functions for saving the configuration to Ganeti.Config

.. so that it can be not only read, but also written to the master
configuration file.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

c5f6dcdf 02/26/2014 02:06 pm Petr Pudlak

Add a module for creating and using asynchronous workers

Each such worker has its own background thread and performs a given
task when triggered. Triggers arriving when the worker is processing are
accumulated and processed together in a subsequent worker action....

5f6515b6 02/26/2014 02:06 pm Petr Pudlak

A separate module for functions for atomic file operations

Utils is getting too big, so better split this new set of functions into
a separate sub-module. This also allows us to use ResultG there.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

0efada2a 02/26/2014 02:06 pm Petr Pudlak

Add a function for lifting ResultT from a MonadBase

Often we have `ResultT e IO a` as the return type of our primitive
functions and we need to lift them into a monad stack that is also based
on IO. This function accomplishes this by lifting a ResultT in a base...

32be18fc 02/26/2014 02:06 pm Petr Pudlak

Add a type alias for "ResultT GanetiException IO"

This type occurs often in the upcoming code so it's worth having an
alias for it.

It's included in Errors instead of Utils, because it depends on
GanetiException, and importing Errors from Utils causes a cyclic...

View revisions

Also available in: Atom