On Tue, Oct 08, 2013 at 02:06:05PM +0200, Thomas Thrainer wrote: > 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... >
Yes! Thanks! Jose > 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 -- Jose Antonio Lopes Ganeti Engineering 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 Steuernummer: 48/725/00206 Umsatzsteueridentifikationsnummer: DE813741370
