LGTM, thanks

On Wed, 1 Apr 2015 at 14:41 'Klaus Aehlig' via ganeti-devel <
[email protected]> wrote:

>
>
> commit 102982863d739e99b12396668234a0331deca7d2
> Merge: aa93573 ac20b4a
> Author: Klaus Aehlig <[email protected]>
> Date:   Wed Apr 1 14:32:41 2015 +0200
>
>     Merge branch 'stable-2.12' into stable-2.13
>
>     * stable-2.12
>       Add default values for hv_state_static and disk_state_static
>       Add a value for the empty Container
>       Verify if we're master before demoting
>       Also consider connection time out a network error
>
>     * stable-2.11
>       (no changes)
>
>     * stable-2.10
>       Fixed typos
>       Pass correct params in move-instance
>       In CanTieredAlloc test set IPolicy
>       Make genInstanceMaybeBiggerThanNode honor policy lower bound
>       Also export a null ISpec
>       Support instance generation within ranges
>       Add a function to leave the list monad
>
>     Signed-off-by: Klaus Aehlig <[email protected]>
>
> diff --cc src/Ganeti/JSON.hs
> index dac72ba,b12dfc9..c97c8c0
> --- a/src/Ganeti/JSON.hs
> +++ b/src/Ganeti/JSON.hs
> @@@ -328,6 -319,19 +329,10 @@@ newtype GenericContainer a b
>   instance (NFData a, NFData b) => NFData (GenericContainer a b) where
>     rnf = rnf . Map.toList . fromContainer
>
>  -instance Functor (GenericContainer a) where
>  -  fmap f = GenericContainer . fmap f . fromContainer
>  -
>  -instance F.Foldable (GenericContainer a) where
>  -  foldMap f = F.foldMap f . fromContainer
>  -
>  -instance F.Traversable (GenericContainer a) where
>  -  traverse f = fmap GenericContainer . F.traverse f . fromContainer
>  -
> + -- | The empty container.
> + emptyContainer :: GenericContainer a b
> + emptyContainer = GenericContainer Map.empty
> +
>   -- | Type alias for string keys.
>   type Container = GenericContainer String
>
> diff --cc src/Ganeti/Objects.hs
> index 8e95334,be0c056..ecf7f88
> --- a/src/Ganeti/Objects.hs
> +++ b/src/Ganeti/Objects.hs
> @@@ -937,59 -807,60 +937,61 @@@ type HypervisorState = Container JSValu
>
>   -- * Cluster definitions
>   $(buildObject "Cluster" "cluster" $
>  -  [ simpleField "rsahostkeypub"                  [t| String
>    |]
>  +  [ simpleField "rsahostkeypub"                  [t| String
>     |]
>     , optionalField $
>  -    simpleField "dsahostkeypub"                  [t| String
>    |]
>  -  , simpleField "highest_used_port"              [t| Int
>     |]
>  -  , simpleField "tcpudp_port_pool"               [t| [Int]
>     |]
>  -  , simpleField "mac_prefix"                     [t| String
>    |]
>  +    simpleField "dsahostkeypub"                  [t| String
>     |]
>  +  , simpleField "highest_used_port"              [t| Int
>      |]
>  +  , simpleField "tcpudp_port_pool"               [t| [Int]
>      |]
>  +  , simpleField "mac_prefix"                     [t| String
>     |]
>     , optionalField $
>  -    simpleField "volume_group_name"              [t| String
>    |]
>  -  , simpleField "reserved_lvs"                   [t| [String]
>    |]
>  +    simpleField "volume_group_name"              [t| String
>     |]
>  +  , simpleField "reserved_lvs"                   [t| [String]
>     |]
>     , optionalField $
>  -    simpleField "drbd_usermode_helper"           [t| String
>    |]
>  -  , simpleField "master_node"                    [t| String
>    |]
>  -  , simpleField "master_ip"                      [t| String
>    |]
>  -  , simpleField "master_netdev"                  [t| String
>    |]
>  -  , simpleField "master_netmask"                 [t| Int
>     |]
>  -  , simpleField "use_external_mip_script"        [t| Bool
>    |]
>  -  , simpleField "cluster_name"                   [t| String
>    |]
>  -  , simpleField "file_storage_dir"               [t| String
>    |]
>  -  , simpleField "shared_file_storage_dir"        [t| String
>    |]
>  -  , simpleField "gluster_storage_dir"            [t| String
>    |]
>  -  , simpleField "enabled_hypervisors"            [t| [Hypervisor]
>    |]
>  -  , simpleField "hvparams"                       [t| ClusterHvParams
>     |]
>  -  , simpleField "os_hvp"                         [t| OsHvParams
>    |]
>  -  , simpleField "beparams"                       [t| ClusterBeParams
>     |]
>  -  , simpleField "osparams"                       [t| ClusterOsParams
>     |]
>  -  , simpleField "osparams_private_cluster"       [t|
> ClusterOsParamsPrivate |]
>  -  , simpleField "nicparams"                      [t| ClusterNicParams
>    |]
>  -  , simpleField "ndparams"                       [t| FilledNDParams
>    |]
>  -  , simpleField "diskparams"                     [t| GroupDiskParams
>     |]
>  -  , simpleField "candidate_pool_size"            [t| Int
>     |]
>  -  , simpleField "modify_etc_hosts"               [t| Bool
>    |]
>  -  , simpleField "modify_ssh_setup"               [t| Bool
>    |]
>  -  , simpleField "maintain_node_health"           [t| Bool
>    |]
>  -  , simpleField "uid_pool"                       [t| UidPool
>     |]
>  -  , simpleField "default_iallocator"             [t| String
>    |]
>  -  , simpleField "default_iallocator_params"      [t| IAllocatorParams
>    |]
>  -  , simpleField "hidden_os"                      [t| [String]
>    |]
>  -  , simpleField "blacklisted_os"                 [t| [String]
>    |]
>  -  , simpleField "primary_ip_family"              [t| IpFamily
>    |]
>  -  , simpleField "prealloc_wipe_disks"            [t| Bool
>    |]
>  -  , simpleField "ipolicy"                        [t| FilledIPolicy
>     |]
>  +    simpleField "drbd_usermode_helper"           [t| String
>     |]
>  +  , simpleField "master_node"                    [t| String
>     |]
>  +  , simpleField "master_ip"                      [t| String
>     |]
>  +  , simpleField "master_netdev"                  [t| String
>     |]
>  +  , simpleField "master_netmask"                 [t| Int
>      |]
>  +  , simpleField "use_external_mip_script"        [t| Bool
>     |]
>  +  , simpleField "cluster_name"                   [t| String
>     |]
>  +  , simpleField "file_storage_dir"               [t| String
>     |]
>  +  , simpleField "shared_file_storage_dir"        [t| String
>     |]
>  +  , simpleField "gluster_storage_dir"            [t| String
>     |]
>  +  , simpleField "enabled_hypervisors"            [t| [Hypervisor]
>     |]
>  +  , simpleField "hvparams"                       [t| ClusterHvParams
>      |]
>  +  , simpleField "os_hvp"                         [t| OsHvParams
>     |]
>  +  , simpleField "beparams"                       [t| ClusterBeParams
>      |]
>  +  , simpleField "osparams"                       [t| ClusterOsParams
>      |]
>  +  , simpleField "osparams_private_cluster"       [t|
> ClusterOsParamsPrivate  |]
>  +  , simpleField "nicparams"                      [t| ClusterNicParams
>     |]
>  +  , simpleField "ndparams"                       [t| FilledNDParams
>     |]
>  +  , simpleField "diskparams"                     [t| GroupDiskParams
>      |]
>  +  , simpleField "candidate_pool_size"            [t| Int
>      |]
>  +  , simpleField "modify_etc_hosts"               [t| Bool
>     |]
>  +  , simpleField "modify_ssh_setup"               [t| Bool
>     |]
>  +  , simpleField "maintain_node_health"           [t| Bool
>     |]
>  +  , simpleField "uid_pool"                       [t| UidPool
>      |]
>  +  , simpleField "default_iallocator"             [t| String
>     |]
>  +  , simpleField "default_iallocator_params"      [t| IAllocatorParams
>     |]
>  +  , simpleField "hidden_os"                      [t| [String]
>     |]
>  +  , simpleField "blacklisted_os"                 [t| [String]
>     |]
>  +  , simpleField "primary_ip_family"              [t| IpFamily
>     |]
>  +  , simpleField "prealloc_wipe_disks"            [t| Bool
>     |]
>  +  , simpleField "ipolicy"                        [t| FilledIPolicy
>      |]
> -   , simpleField "hv_state_static"                [t| HypervisorState
>      |]
> -   , simpleField "disk_state_static"              [t| DiskState
>      |]
> +   , defaultField [| emptyContainer |] $
> +     simpleField "hv_state_static"                [t| HypervisorState
>     |]
> +   , defaultField [| emptyContainer |] $
> +     simpleField "disk_state_static"              [t| DiskState
>     |]
>  -  , simpleField "enabled_disk_templates"         [t| [DiskTemplate]
>    |]
>  -  , simpleField "candidate_certs"                [t|
> CandidateCertificates  |]
>  -  , simpleField "max_running_jobs"               [t| Int
>     |]
>  -  , simpleField "max_tracked_jobs"               [t| Int
>     |]
>  -  , simpleField "install_image"                  [t| String
>    |]
>  -  , simpleField "instance_communication_network" [t| String
>      |]
>  -  , simpleField "zeroing_image"                  [t| String
>    |]
>  -  , simpleField "compression_tools"              [t| [String]
>    |]
>  -  , simpleField "enabled_user_shutdown"          [t| Bool
>    |]
>  +  , simpleField "enabled_disk_templates"         [t| [DiskTemplate]
>     |]
>  +  , simpleField "candidate_certs"                [t|
> CandidateCertificates   |]
>  +  , simpleField "max_running_jobs"               [t| Int
>      |]
>  +  , simpleField "max_tracked_jobs"               [t| Int
>      |]
>  +  , simpleField "install_image"                  [t| String
>     |]
>  +  , simpleField "instance_communication_network" [t| String
>       |]
>  +  , simpleField "zeroing_image"                  [t| String
>     |]
>  +  , simpleField "compression_tools"              [t| [String]
>     |]
>  +  , simpleField "enabled_user_shutdown"          [t| Bool
>     |]
>  +  , simpleField "data_collectors"         [t| Container
> DataCollectorConfig  |]
>    ]
>    ++ timeStampFields
>    ++ uuidFields
>
> --
> Klaus Aehlig
> Google Germany GmbH, Dienerstr. 12, 80331 Muenchen
> Registergericht und -nummer: Hamburg, HRB 86891
> Sitz der Gesellschaft: Hamburg
> Geschaeftsfuehrer: Graham Law, Christine Elizabeth Flores
>

Reply via email to