Revision a6a6a1b5 src/Ganeti/Config.hs
b/src/Ganeti/Config.hs | ||
---|---|---|
27 | 27 |
( LinkIpMap |
28 | 28 |
, NdParamObject(..) |
29 | 29 |
, loadConfig |
30 |
, saveConfig |
|
30 | 31 |
, getNodeInstances |
31 | 32 |
, getNodeRole |
32 | 33 |
, getNodeNdParams |
... | ... | |
59 | 60 |
import qualified Data.Map as M |
60 | 61 |
import qualified Data.Set as S |
61 | 62 |
import qualified Text.JSON as J |
63 |
import System.IO |
|
62 | 64 |
|
63 | 65 |
import Ganeti.BasicTypes |
64 | 66 |
import qualified Ganeti.Constants as C |
... | ... | |
82 | 84 |
parseConfig :: String -> Result ConfigData |
83 | 85 |
parseConfig = fromJResult "parsing configuration" . J.decodeStrict |
84 | 86 |
|
87 |
-- | Encodes the configuration file. |
|
88 |
encodeConfig :: ConfigData -> String |
|
89 |
encodeConfig = J.encodeStrict |
|
90 |
|
|
85 | 91 |
-- | Wrapper over 'readConfig' and 'parseConfig'. |
86 | 92 |
loadConfig :: FilePath -> IO (Result ConfigData) |
87 | 93 |
loadConfig = fmap (>>= parseConfig) . readConfig |
88 | 94 |
|
95 |
-- | Wrapper over 'hPutStr' and 'encodeConfig'. |
|
96 |
saveConfig :: Handle -> ConfigData -> IO () |
|
97 |
saveConfig fh = hPutStr fh . encodeConfig |
|
98 |
|
|
89 | 99 |
-- * Query functions |
90 | 100 |
|
91 | 101 |
-- | Computes the nodes covered by a disk. |
Also available in: Unified diff