Revision c22d4dd4 htools/Ganeti/HTools/Text.hs

b/htools/Ganeti/HTools/Text.hs
128 128
-- | Generate policy data from a given policy object.
129 129
serializeIPolicy :: String -> IPolicy -> String
130 130
serializeIPolicy owner ipol =
131
  let IPolicy stdspec minspec maxspec dts vcpu_ratio = ipol
131
  let IPolicy stdspec minspec maxspec dts vcpu_ratio spindle_ratio = ipol
132 132
      strings = [ owner
133 133
                , serializeISpec stdspec
134 134
                , serializeISpec minspec
135 135
                , serializeISpec maxspec
136 136
                , serializeDiskTemplates dts
137 137
                , show vcpu_ratio
138
                , show spindle_ratio
138 139
                ]
139 140
  in intercalate "|" strings
140 141

  
......
236 237

  
237 238
-- | Loads an ipolicy from a field list.
238 239
loadIPolicy :: [String] -> Result (String, IPolicy)
239
loadIPolicy [owner, stdspec, minspec, maxspec, dtemplates, vcpu_ratio] = do
240
loadIPolicy [owner, stdspec, minspec, maxspec, dtemplates,
241
             vcpu_ratio, spindle_ratio] = do
240 242
  xstdspec <- loadISpec (owner ++ "/stdspec") (commaSplit stdspec)
241 243
  xminspec <- loadISpec (owner ++ "/minspec") (commaSplit minspec)
242 244
  xmaxspec <- loadISpec (owner ++ "/maxspec") (commaSplit maxspec)
243 245
  xdts <- mapM diskTemplateFromRaw $ commaSplit dtemplates
244 246
  xvcpu_ratio <- tryRead (owner ++ "/vcpu_ratio") vcpu_ratio
245
  return $ (owner, IPolicy xstdspec xminspec xmaxspec xdts xvcpu_ratio)
247
  xspindle_ratio <- tryRead (owner ++ "/spindle_ratio") spindle_ratio
248
  return $ (owner, IPolicy xstdspec xminspec xmaxspec xdts
249
            xvcpu_ratio xspindle_ratio)
246 250
loadIPolicy s = fail $ "Invalid ipolicy data: '" ++ show s ++ "'"
247 251

  
248 252
loadOnePolicy :: (IPolicy, Group.List) -> String

Also available in: Unified diff