Revision 76ae2e5b
b/htools/Ganeti/HTools/Loader.hs | ||
---|---|---|
124 | 124 |
-- | Lookups a node into an assoc list. |
125 | 125 |
lookupNode :: (Monad m) => NameAssoc -> String -> String -> m Ndx |
126 | 126 |
lookupNode ktn inst node = |
127 |
case M.lookup node ktn of |
|
128 |
Nothing -> fail $ "Unknown node '" ++ node ++ "' for instance " ++ inst |
|
129 |
Just idx -> return idx |
|
127 |
maybe (fail $ "Unknown node '" ++ node ++ "' for instance " ++ inst) return $ |
|
128 |
M.lookup node ktn |
|
130 | 129 |
|
131 | 130 |
-- | Lookups an instance into an assoc list. |
132 | 131 |
lookupInstance :: (Monad m) => NameAssoc -> String -> m Idx |
133 | 132 |
lookupInstance kti inst = |
134 |
case M.lookup inst kti of |
|
135 |
Nothing -> fail $ "Unknown instance '" ++ inst ++ "'" |
|
136 |
Just idx -> return idx |
|
133 |
maybe (fail $ "Unknown instance '" ++ inst ++ "'") return $ M.lookup inst kti |
|
137 | 134 |
|
138 | 135 |
-- | Lookups a group into an assoc list. |
139 | 136 |
lookupGroup :: (Monad m) => NameAssoc -> String -> String -> m Gdx |
140 | 137 |
lookupGroup ktg nname gname = |
141 |
case M.lookup gname ktg of |
|
142 |
Nothing -> fail $ "Unknown group '" ++ gname ++ "' for node " ++ nname |
|
143 |
Just idx -> return idx |
|
138 |
maybe (fail $ "Unknown group '" ++ gname ++ "' for node " ++ nname) return $ |
|
139 |
M.lookup gname ktg |
|
144 | 140 |
|
145 | 141 |
-- | Check for prefix matches in names. |
146 | 142 |
-- Implemented in Ganeti core utils.text.MatchNameComponent |
Also available in: Unified diff