Revision e51e0f88 src/Ganeti/HTools/Instance.hs

b/src/Ganeti/HTools/Instance.hs
70 70
  { name         :: String    -- ^ The instance name
71 71
  , alias        :: String    -- ^ The shortened name
72 72
  , mem          :: Int       -- ^ Memory of the instance
73
  , dsk          :: Int       -- ^ Disk size of instance
73
  , dsk          :: Int       -- ^ Total disk usage of the instance
74
  , disks        :: [Int]     -- ^ Sizes of the individual disks
74 75
  , vcpus        :: Int       -- ^ Number of VCPUs
75 76
  , runSt        :: T.InstanceStatus -- ^ Original run status
76 77
  , pNode        :: T.Ndx     -- ^ Original primary node
......
171 172
           , alias = name_init
172 173
           , mem = mem_init
173 174
           , dsk = dsk_init
175
           , disks = [dsk_init]
174 176
           , vcpus = vcpus_init
175 177
           , runSt = run_init
176 178
           , pNode = pn
......
265 267
instBelowISpec :: Instance -> T.ISpec -> T.OpResult ()
266 268
instBelowISpec inst ispec
267 269
  | mem inst > T.iSpecMemorySize ispec = Bad T.FailMem
268
  | dsk inst > T.iSpecDiskSize ispec   = Bad T.FailDisk
270
  | any (> T.iSpecDiskSize ispec) (disks inst) = Bad T.FailDisk
269 271
  | vcpus inst > T.iSpecCpuCount ispec = Bad T.FailCPU
270 272
  | otherwise = Ok ()
271 273

  
......
273 275
instAboveISpec :: Instance -> T.ISpec -> T.OpResult ()
274 276
instAboveISpec inst ispec
275 277
  | mem inst < T.iSpecMemorySize ispec = Bad T.FailMem
276
  | dsk inst < T.iSpecDiskSize ispec   = Bad T.FailDisk
278
  | any (< T.iSpecDiskSize ispec) (disks inst) = Bad T.FailDisk
277 279
  | vcpus inst < T.iSpecCpuCount ispec = Bad T.FailCPU
278 280
  | otherwise = Ok ()
279 281

  

Also available in: Unified diff