Revision a5efec93 src/Ganeti/Objects.hs

b/src/Ganeti/Objects.hs
31 31
module Ganeti.Objects
32 32
  ( HvParams
33 33
  , OsParams
34
  , OsParamsPrivate
34 35
  , PartialNicParams(..)
35 36
  , FilledNicParams(..)
36 37
  , fillNicParams
......
123 124
-- container, since the keys are dynamically declared by the OSes, and
124 125
-- the values are always strings.
125 126
type OsParams = Container String
127
type OsParamsPrivate = Container (Private String)
126 128

  
127 129
-- | Class of objects that have timestamps.
128 130
class TimeStampObject a where
......
440 442
  ])
441 443

  
442 444
$(buildObject "Instance" "inst" $
443
  [ simpleField "name"           [t| String             |]
444
  , simpleField "primary_node"   [t| String             |]
445
  , simpleField "os"             [t| String             |]
446
  , simpleField "hypervisor"     [t| Hypervisor         |]
447
  , simpleField "hvparams"       [t| HvParams           |]
448
  , simpleField "beparams"       [t| PartialBeParams    |]
449
  , simpleField "osparams"       [t| OsParams           |]
450
  , simpleField "admin_state"    [t| AdminState         |]
451
  , simpleField "nics"           [t| [PartialNic]       |]
452
  , simpleField "disks"          [t| [Disk]             |]
453
  , simpleField "disk_template"  [t| DiskTemplate       |]
454
  , simpleField "disks_active"   [t| Bool               |]
445
  [ simpleField "name"             [t| String             |]
446
  , simpleField "primary_node"     [t| String             |]
447
  , simpleField "os"               [t| String             |]
448
  , simpleField "hypervisor"       [t| Hypervisor         |]
449
  , simpleField "hvparams"         [t| HvParams           |]
450
  , simpleField "beparams"         [t| PartialBeParams    |]
451
  , simpleField "osparams"         [t| OsParams           |]
452
  , simpleField "osparams_private" [t| OsParamsPrivate    |]
453
  , simpleField "admin_state"      [t| AdminState         |]
454
  , simpleField "nics"             [t| [PartialNic]       |]
455
  , simpleField "disks"            [t| [Disk]             |]
456
  , simpleField "disk_template"    [t| DiskTemplate       |]
457
  , simpleField "disks_active"     [t| Bool               |]
455 458
  , optionalField $ simpleField "network_port" [t| Int  |]
456 459
  ]
457 460
  ++ timeStampFields
......
650 653

  
651 654
-- | Cluster OsParams.
652 655
type ClusterOsParams = Container OsParams
656
type ClusterOsParamsPrivate = Container (Private OsParams)
653 657

  
654 658
-- | Cluster NicParams.
655 659
type ClusterNicParams = Container FilledNicParams
......
665 669

  
666 670
-- * Cluster definitions
667 671
$(buildObject "Cluster" "cluster" $
668
  [ simpleField "rsahostkeypub"             [t| String           |]
672
  [ simpleField "rsahostkeypub"             [t| String                 |]
669 673
  , optionalField $
670
    simpleField "dsahostkeypub"             [t| String           |]
671
  , simpleField "highest_used_port"         [t| Int              |]
672
  , simpleField "tcpudp_port_pool"          [t| [Int]            |]
673
  , simpleField "mac_prefix"                [t| String           |]
674
    simpleField "dsahostkeypub"             [t| String                 |]
675
  , simpleField "highest_used_port"         [t| Int                    |]
676
  , simpleField "tcpudp_port_pool"          [t| [Int]                  |]
677
  , simpleField "mac_prefix"                [t| String                 |]
674 678
  , optionalField $
675
    simpleField "volume_group_name"         [t| String           |]
676
  , simpleField "reserved_lvs"              [t| [String]         |]
679
    simpleField "volume_group_name"         [t| String                 |]
680
  , simpleField "reserved_lvs"              [t| [String]               |]
677 681
  , optionalField $
678
    simpleField "drbd_usermode_helper"      [t| String           |]
679
  , simpleField "master_node"               [t| String           |]
680
  , simpleField "master_ip"                 [t| String           |]
681
  , simpleField "master_netdev"             [t| String           |]
682
  , simpleField "master_netmask"            [t| Int              |]
683
  , simpleField "use_external_mip_script"   [t| Bool             |]
684
  , simpleField "cluster_name"              [t| String           |]
685
  , simpleField "file_storage_dir"          [t| String           |]
686
  , simpleField "shared_file_storage_dir"   [t| String           |]
687
  , simpleField "gluster_storage_dir"       [t| String           |]
688
  , simpleField "enabled_hypervisors"       [t| [Hypervisor]     |]
689
  , simpleField "hvparams"                  [t| ClusterHvParams  |]
690
  , simpleField "os_hvp"                    [t| OsHvParams       |]
691
  , simpleField "beparams"                  [t| ClusterBeParams  |]
692
  , simpleField "osparams"                  [t| ClusterOsParams  |]
693
  , simpleField "nicparams"                 [t| ClusterNicParams |]
694
  , simpleField "ndparams"                  [t| FilledNDParams   |]
695
  , simpleField "diskparams"                [t| DiskParams       |]
696
  , simpleField "candidate_pool_size"       [t| Int              |]
697
  , simpleField "modify_etc_hosts"          [t| Bool             |]
698
  , simpleField "modify_ssh_setup"          [t| Bool             |]
699
  , simpleField "maintain_node_health"      [t| Bool             |]
700
  , simpleField "uid_pool"                  [t| UidPool          |]
701
  , simpleField "default_iallocator"        [t| String           |]
702
  , simpleField "default_iallocator_params" [t| IAllocatorParams |]
703
  , simpleField "hidden_os"                 [t| [String]         |]
704
  , simpleField "blacklisted_os"            [t| [String]         |]
705
  , simpleField "primary_ip_family"         [t| IpFamily         |]
706
  , simpleField "prealloc_wipe_disks"       [t| Bool             |]
707
  , simpleField "ipolicy"                   [t| FilledIPolicy    |]
708
  , simpleField "enabled_disk_templates"    [t| [DiskTemplate]   |]
709
  , simpleField "candidate_certs"           [t| CandidateCertificates |]
710
  , simpleField "max_running_jobs"          [t| Int              |]
682
    simpleField "drbd_usermode_helper"      [t| String                 |]
683
  , simpleField "master_node"               [t| String                 |]
684
  , simpleField "master_ip"                 [t| String                 |]
685
  , simpleField "master_netdev"             [t| String                 |]
686
  , simpleField "master_netmask"            [t| Int                    |]
687
  , simpleField "use_external_mip_script"   [t| Bool                   |]
688
  , simpleField "cluster_name"              [t| String                 |]
689
  , simpleField "file_storage_dir"          [t| String                 |]
690
  , simpleField "shared_file_storage_dir"   [t| String                 |]
691
  , simpleField "gluster_storage_dir"       [t| String                 |]
692
  , simpleField "enabled_hypervisors"       [t| [Hypervisor]           |]
693
  , simpleField "hvparams"                  [t| ClusterHvParams        |]
694
  , simpleField "os_hvp"                    [t| OsHvParams             |]
695
  , simpleField "beparams"                  [t| ClusterBeParams        |]
696
  , simpleField "osparams"                  [t| ClusterOsParams        |]
697
  , simpleField "osparams_private_cluster"  [t| ClusterOsParamsPrivate |]
698
  , simpleField "nicparams"                 [t| ClusterNicParams       |]
699
  , simpleField "ndparams"                  [t| FilledNDParams         |]
700
  , simpleField "diskparams"                [t| DiskParams             |]
701
  , simpleField "candidate_pool_size"       [t| Int                    |]
702
  , simpleField "modify_etc_hosts"          [t| Bool                   |]
703
  , simpleField "modify_ssh_setup"          [t| Bool                   |]
704
  , simpleField "maintain_node_health"      [t| Bool                   |]
705
  , simpleField "uid_pool"                  [t| UidPool                |]
706
  , simpleField "default_iallocator"        [t| String                 |]
707
  , simpleField "default_iallocator_params" [t| IAllocatorParams       |]
708
  , simpleField "hidden_os"                 [t| [String]               |]
709
  , simpleField "blacklisted_os"            [t| [String]               |]
710
  , simpleField "primary_ip_family"         [t| IpFamily               |]
711
  , simpleField "prealloc_wipe_disks"       [t| Bool                   |]
712
  , simpleField "ipolicy"                   [t| FilledIPolicy          |]
713
  , simpleField "enabled_disk_templates"    [t| [DiskTemplate]         |]
714
  , simpleField "candidate_certs"           [t| CandidateCertificates  |]
715
  , simpleField "max_running_jobs"          [t| Int                    |]
711 716
 ]
712 717
 ++ timeStampFields
713 718
 ++ uuidFields

Also available in: Unified diff