Revision 26e1312d

b/lib/objects.py
522 522
class Disk(ConfigObject):
523 523
  """Config object representing a block device."""
524 524
  __slots__ = (["name", "dev_type", "logical_id", "children", "iv_name",
525
                "size", "mode", "params", "spindles", "pci"] + _UUID +
525
                "size", "mode", "params", "spindles", "pci", "instance"]
526
               + _UUID +
526 527
               # dynamic_params is special. It depends on the node this instance
527 528
               # is sent to, and should not be persisted.
528 529
               ["dynamic_params"])
b/src/Ganeti/Objects.hs
399 399
  , diskSize       :: Int
400 400
  , diskMode       :: DiskMode
401 401
  , diskName       :: Maybe String
402
  , diskInstance   :: Maybe String
402 403
  , diskSpindles   :: Maybe Int
403 404
  , diskUuid       :: String
404 405
  } deriving (Show, Eq)
......
411 412
  , simpleField "size" [t| Int |]
412 413
  , defaultField [| DiskRdWr |] $ simpleField "mode" [t| DiskMode |]
413 414
  , optionalField $ simpleField "name" [t| String |]
415
  , optionalField $ simpleField "instance" [t| String |]
414 416
  , optionalField $ simpleField "spindles" [t| Int |]
415 417
  ]
416 418
  ++ uuidFields)
b/test/data/instance-prim-sec.txt
17 17
             "df9ff3f6-a833-48ff-8bd5-bff2eaeab759.disk0_data"
18 18
           ],
19 19
           "size": 1024,
20
           "instance": "aec390cb-5eae-44e6-bcc2-ec14d31347f0",
20 21
           "uuid": "eaff6322-1bfb-4d59-b306-4535730917cc"
21 22
         },
22 23
         {
......
31 32
             "df9ff3f6-a833-48ff-8bd5-bff2eaeab759.disk0_meta"
32 33
           ],
33 34
           "size": 128,
35
           "instance": "aec390cb-5eae-44e6-bcc2-ec14d31347f0",
34 36
           "uuid": "bf512e95-2a49-4cb3-8d1f-30a503f6bf1b"
35 37
         }
36 38
       ],
......
55 57
         "9bdb15fb7ab6bb4610a313d654ed4d0d2433713e"
56 58
       ],
57 59
       "size": 1024,
60
       "instance": "aec390cb-5eae-44e6-bcc2-ec14d31347f0",
58 61
       "uuid": "5d61e205-bf89-4ba8-a319-589b7bb7419e"
59 62
     }
60 63
   ],
b/test/hs/Test/Ganeti/Objects.hs
93 93
instance Arbitrary Disk where
94 94
  arbitrary = Disk <$> arbitrary <*> pure [] <*> arbitrary
95 95
                   <*> arbitrary <*> arbitrary <*> arbitrary
96
                   <*> arbitrary <*> arbitrary
96
                   <*> arbitrary <*> arbitrary <*> arbitrary
97 97

  
98 98
-- FIXME: we should generate proper values, >=0, etc., but this is
99 99
-- hard for partial ones, where all must be wrapped in a 'Maybe'
......
183 183
  size <- arbitrary
184 184
  mode <- arbitrary
185 185
  name <- genMaybe genName
186
  inst <- arbitrary
186 187
  spindles <- arbitrary
187 188
  uuid <- genName
188
  let disk = Disk logicalid children ivname size mode name spindles uuid
189
  let disk = Disk logicalid children ivname size mode name inst spindles uuid
189 190
  return disk
190 191

  
191 192
genDisk :: Gen Disk
......
554 555
      lv_name = "1234sdf-qwef-2134-asff-asd2-23145d.data" :: String
555 556
      d =
556 557
        Disk (LIDPlain vg_name lv_name) [] "diskname" 1000 DiskRdWr
557
          Nothing Nothing "asdfgr-1234-5123-daf3-sdfw-134f43"
558
          Nothing Nothing Nothing "asdfgr-1234-5123-daf3-sdfw-134f43"
558 559
  in
559 560
    HUnit.assertBool "Unable to detect that plain Disk includes logical ID" $
560 561
      includesLogicalId vg_name lv_name d
......
568 569
        Disk
569 570
          (LIDDrbd8 "node1.example.com" "node2.example.com" 2000 1 5 "secret")
570 571
          [ Disk (LIDPlain "onevg" "onelv") [] "disk1" 1000 DiskRdWr Nothing
571
              Nothing "145145-asdf-sdf2-2134-asfd-534g2x"
572
              Nothing Nothing "145145-asdf-sdf2-2134-asfd-534g2x"
572 573
          , Disk (LIDPlain vg_name lv_name) [] "disk2" 1000 DiskRdWr Nothing
573
              Nothing "6gd3sd-423f-ag2j-563b-dg34-gj3fse"
574
          ] "diskname" 1000 DiskRdWr Nothing Nothing
575
          "asdfgr-1234-5123-daf3-sdfw-134f43"
574
              Nothing Nothing "6gd3sd-423f-ag2j-563b-dg34-gj3fse"
575
          ] "diskname" 1000 DiskRdWr
576
          Nothing Nothing Nothing "asdfgr-1234-5123-daf3-sdfw-134f43"
576 577
  in
577 578
    HUnit.assertBool "Unable to detect that plain Disk includes logical ID" $
578 579
      includesLogicalId vg_name lv_name d
......
584 585
      lv_name = "1234sdf-qwef-2134-asff-asd2-23145d.data" :: String
585 586
      d =
586 587
        Disk (LIDPlain "othervg" "otherlv") [] "diskname" 1000 DiskRdWr
587
          Nothing Nothing "asdfgr-1234-5123-daf3-sdfw-134f43"
588
          Nothing Nothing Nothing "asdfgr-1234-5123-daf3-sdfw-134f43"
588 589
  in
589 590
    HUnit.assertBool "Unable to detect that plain Disk includes logical ID" $
590 591
      not (includesLogicalId vg_name lv_name d)

Also available in: Unified diff