According to my notes, I LGTM'd all patches in this series (some with minor
improvements to be made before pushing). I hope I didn't miss anything...

Cheers,
Thomas


On Mon, Oct 7, 2013 at 4:37 PM, Jose A. Lopes <[email protected]> wrote:

> This patch series adds almost all constants in 'lib/constants.py' to
> the Haskell to Python constant generation.
>
> As a general rule, if there is a Haskell type for a given group of
> constants, then we try to make the Haskell constants take their values
> from that type.  Therefore, several constants will take their values,
> for example, from Haskell types defined in 'Ganeti.Types'.  Other
> constants will have their values directly assigned in
> 'Ganeti.HsConstants'.  In some cases, it is necessary to move
> constants from other modules to module such as 'Ganenti.ConstantUtils'
> in order to escape GHC stage restrictions imposed by Template Haskell
> or import circularity.
>
> An overview of this patch series:
> * move confd related constants to 'Ganeti.ConstantUtils' and add them
> * 'declareILADT' defines a type, similarly to 'declareLADT', but with
>   integer literals (avoids GHC stage restrictions)
> * add constants related to 'Ganeti.Confd' types
> * add assorted constants
> * update target in Makefile to ignore comments in 'Ganeti.HsConstants'
>   when extracting the constant names to take part in Hs2Py
> * add OS API versions
> * add 'ReplaceDisksMode' related constants
> * add RPC timeout related constants
> * add node parameter related
> * add 'Ganeti.HTools.Types' related
> * add local disk status related
> * add Luxi related
> * add forgotten 'SOCAT_ESCAPE_CODE' constant: it was in Haskell but
>   its Python reference was outdated
> * add network mirrored disk templates
> * add SSH related
> * move VTypes around in 'Ganeti.HsConstants' to mimic
>   'lib/constants.py' order
> * add CPU pinning related
> * add console types, security, I/O compression, import/export, hooks,
>   and hkr related
> * add storage related
> * add DRBD and RBD related
> * add import/export related, and import/export config related
> * add network related
> * remove some comments in 'lib/constants.py' because these are moved
>   to Haskell
> * add more constants
> * move 'ipCommandPath' to the correct place to mimic
>   'lib/constants.py' order
> * add script and action related
> * add instance reboot related
> * move instance reboot types to the correct place according to
>   'lib/constants.py'
> * add assorted and HVS related
> * add HVST and disk state related
> * add backend and logical disks related
> * add DRBD and dynamic disk related
> * add nics related
> * add assorted, idisk, and inic related
> * add node verify related
> * add SSL, job queue, and locks related
> * add VNC related
> * add '/etc/hosts' ad job queue related
> * add query resources related
> * add HT related
> * add dynamic devices related
> * add SSCONF related
> * add 'hvcGlobals' and 'ndcGlobals'
> * add assorted
> * remove more comments in 'lib/constants.py' that have been moved to
>   Haskell
> * add UID pool related
> * add assorted
> * add hail, opcode, and SSH related
> * add node daemon setup related
> * add opcode related
> * improve 'autoRepair*' constants to take their values from Haskell
>   types instead of having their values defined in 'Ganeti.HsConstants'
> * fix import order in 'Ganeti.HsConstants'
> * fix import of 'AutoConf'
>
>
> Jose A. Lopes (66):
>   Move confd request constants to 'Ganeti.ConstantUtils'
>   Hs2Py constants: add confd requests
>   Update reference to proper module
>   Add 'declareILADT' to declare integer literal datatypes
>   Hs2Py constants: add 'Ganeti.Confd' types
>   Hs2Py constants: add more constants
>   Disregard comments in 'src/Ganeti/ListContants.hs' target
>   Fix typo in documentation
>   Fix indentation
>   Hs2Py constants: add 'osApiVersions'
>   Hs2Py constants: add 'ReplaceDisksMode' related constants
>   Hs2Py constants: add RPC timeout constants
>   Hs2Py constants: add node parameter related
>   Hs2Py constants: constants related to 'Ganeti.Htools.Types'
>   Hs2Py constants: add local disk status
>   Hs2Py constants: add 'fileDriver'
>   Hs2Py constants: add Luxi constants
>   Hs2Py constants: update forgotten 'SOCAT_ESCAPE_CODE'
>   Fix documentation comment
>   Hs2Py constants: add network mirrored disk templates
>   Hs2Py constants: add SSH key files
>   Move VTypes to the appropriate place
>   Hs2Py constants: add export versions
>   Hs2Py constants: add CPU pinning
>   Hs2Py constants: add 2 more constants
>   Hs2Py constants: add several groups of constants
>   Hs2Py constants: storage related groups
>   Hs2Py constants: add DRBD and RBD
>   Hs2Py constants: add 'RIE' related
>   Hs2Py constants: add import/export config
>   Hs2Py constants: network related
>   Hs2Py constants: remove comments
>   Hs2Py constants: 'diskTransferConnectTimeout'
>   Hs2Py constants: 'jobIdsKey', 'runparts' and 'rpc'
>   Hs2Py constants: move 'ipCommandPath'
>   Hs2Py constants: scripts and actions
>   Hs2Py constants: reboot behaviour
>   Hs2Py constants: move reboot types
>   Hs2Py constants: assorted and HVS
>   Hs2Py constants: HVST and disk state
>   Hs2Py constants: backend and logical disks
>   Hs2Py constant: DRBD and dynamic disk
>   Hs2Py constants: nics
>   Hs2Py constants: assorted, idisk, and inic
>   Hs2Py constants: node verify
>   Hs2Py constants: SSL, job queue, and locks
>   Hs2Py constants: VNC
>   Hs2Py constants: '/etc/hosts' and job queue
>   Hs2py constants: query resources
>   Hs2Py constants: HT related constants
>   Hs2Py constants: dynamic devices
>   Hs2Py constants: SSCONF
>   Hs2Py constants: 'defaultEnabledHypervisor'
>   Hs2Py constants: 'hvcGlobals' and 'ndcGlobals'
>   Hs2Py constants: 'ispecsMinmaxDefaults'
>   Hs2Py constants: assorted constants
>   Hs2Py constants: remove comments
>   Hs2Py constants: 'maxUdpDataSize'
>   Hs2Py constants: UID pool
>   Hs2Py constants: assorted constants
>   Hs2Py constants: hail, opcode, and SSH
>   Hs2Py constants: node daemon setup
>   Hs2Py constants: opcodes
>   Hs2Py constants: improve auto repair
>   Fix import order
>   Fix 'AutoConf' import
>
>  Makefile.am                    |    4 +-
>  lib/constants.py               | 2124 +++++++++++---------------------
>  lib/pathutils.py               |    8 +-
>  src/Ganeti/Confd/Server.hs     |    4 +-
>  src/Ganeti/Confd/Types.hs      |  108 +-
>  src/Ganeti/ConstantUtils.hs    |   89 +-
>  src/Ganeti/HTools/Types.hs     |  125 +-
>  src/Ganeti/HsConstants.hs      | 2662
> ++++++++++++++++++++++++++++++++++++++--
>  src/Ganeti/JSON.hs             |    2 +-
>  src/Ganeti/Objects.hs          |   37 +-
>  src/Ganeti/OpCodes.hs          |    2 +-
>  src/Ganeti/OpParams.hs         |    9 -
>  src/Ganeti/PyValueInstances.hs |    1 +
>  src/Ganeti/Query/Common.hs     |   12 +-
>  src/Ganeti/Query/Server.hs     |    6 +-
>  src/Ganeti/Rpc.hs              |   12 -
>  src/Ganeti/THH.hs              |   16 +-
>  src/Ganeti/Types.hs            |   51 +
>  18 files changed, 3581 insertions(+), 1691 deletions(-)
>
> --
> 1.8.4
>
>


-- 
Thomas Thrainer | Software Engineer | [email protected] |

Google Germany GmbH
Dienerstr. 12
80331 München

Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Graham Law, Christine Elizabeth Flores

Reply via email to