Statistics
| Branch: | Tag: | Revision:

root @ dc2879ea

# Date Author Comment
dc2879ea 03/30/2012 03:03 pm Michael Hanselmann

jqueue: Cache prepared field list in _JobChangesChecker

… instead of re-calculating it on every file change.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

12e0ee0d 03/30/2012 03:03 pm Michael Hanselmann

NEWS: Deprecate LUXI calls replaced with query2

Adding the “luxi” namespace is necessary in “sphinx_ext”.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

a06c6ae8 03/30/2012 03:03 pm Michael Hanselmann

jqueue: Convert GetInfo to query2

This rather inefficient implementation (fields are evaluated on every
call to GetInfo) is not good for WaitForJobChanges and doesn't support
filters, but that will be rectified in later patches.

Signed-off-by: Michael Hanselmann <>...

9665bb3a 03/30/2012 03:03 pm Michael Hanselmann

query: Add definitions for job fields

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

03ec545a 03/30/2012 03:02 pm Michael Hanselmann

qlang.MakeFilter: Enable use of different name field

Jobs don't have a “name” field, so we must be able to control
the field used for simple filters.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

26a72a48 03/30/2012 03:02 pm Michael Hanselmann

Merge cli.FormatTimestamp and utils.FormatTime

… to some degree at least. Unittests are included.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

0b04b188 03/30/2012 03:02 pm Michael Hanselmann

constants: Don't hardcode priorities for LOCK_ATTEMPTS_TIMEOUT

Also include unittest for LOCK_ATTEMPTS_TIMEOUT.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

66abb9ff 03/30/2012 03:02 pm Michael Hanselmann

jqueue._QueuedOpCode: Change a docstring

There was a typo and it's not necessary to repeat the class name.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

c6a2c16e 03/30/2012 03:01 pm Michael Hanselmann

locking: Remove unused OldStyleQueryLocks

No longer used after commit 090377807.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

2ac41278 03/28/2012 07:29 pm Dimitris Aragiorgis

Update IP pool management design doc

Update IP pool managenent design doc to be consistent
with the implementation.

  • Add new NIC parameter: 'network'
    Can be None for backwards compatibility.
  • Introduce the term 'netparams'
    The NIC inherits netparams (mode, link) as its nicparams...
bd6d1202 03/28/2012 12:27 pm René Nussbaumer

RPC: Add a new client type for DNS only

This patch moves the “call_version” to a new RPC client definition and
then adds a new runner using the DNS resolver for getting the host
address.

The standard “BootstrapRunner”, where the call was before, tries to...

8ccecf10 03/28/2012 12:27 pm René Nussbaumer

LUNodeAdd: Make the version call only dependend on DNS

Also move the version check into prereq to abort before alter cluster
state if the version mismatch.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

f6d62af4 03/27/2012 06:10 pm Iustin Pop

Update install document

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

73225861 03/27/2012 06:10 pm Iustin Pop

Update admin doc

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

832f8c6a 03/27/2012 06:10 pm Iustin Pop

Update walkthrough document

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

b8203e1e 03/27/2012 06:10 pm Iustin Pop

Update default instance kernel version

We switch from vmlinuz-2.6-… to vmlinuz-3-…. To do this nicely, we
also add a ./configure-time setting for the KVM instance kernel.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

727ee1ec 03/27/2012 06:10 pm Iustin Pop

Update INSTALL and devnotes documents

Added the new Haskell library requirements, for both normal and
developer usage.

Furthermore, all commands are now converted to the shell-example
lexer.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

63b4bb1e 03/27/2012 12:27 pm Iustin Pop

Fix escaping of percent signs in the shell lexer

Of course, we do have cases where we want to escape the percent signs,
and our regexes were not fully correct for this case.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

7142485a 03/26/2012 06:26 pm Iustin Pop

Add a special lexer for sphinx/pygments

This will be used throughout our docs for better formatting example
shell sessions, with custom markup for comments, user fixed input and
user variable input.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

01eb6409 03/26/2012 06:06 pm Michael Hanselmann

ganeti.7: Add more filter examples

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

74e60746 03/26/2012 11:54 am Iustin Pop

Enable -Werror by default for htools

Since the code base is now "clean" across all supported GHC versions
(6.12-7.4), we can enable -Werror again.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

30d25dd8 03/26/2012 11:54 am Iustin Pop

Switch to new-style exception handling

Currently, we're using Prelude.catch to handle I/O errors in
htools. This style of error handling has been deprecated for a while,
but it still used to work without warnings.

However, the GHC release 7.4 has started to emit deprecation warnings...

d80e3485 03/26/2012 11:54 am Iustin Pop

Change a type computation for compatibility with 6.12

This is the last warning related to TemplateHaskell that was 6.12
specific; for some reason, it doesn't "see" that traw/tname were used.

The patch just replaces the quoting syntax with an explicit type...

ffbd9592 03/26/2012 11:53 am Iustin Pop

Fix compatibility with TemplateHaskell from GHC 7.4

GHC 7.4 has updated the TemplateHaskell library, and it turns out that
the way we built the JSON instance implementation for showJSON was not
good (probably this is why GHC 6.12 was generating some warnings)....

30f2802f 03/26/2012 11:30 am Iustin Pop

Add trivial tests for gnt-* cli

While testing some other stuff, I realised that the gnt-* commands
could be broken (as in, the script fails with syntax errors), but make
check doesn't detect it. Since we have shelltest, we can now add
trivial tests for this case....

3c4afa2e 03/26/2012 11:04 am Iustin Pop

Fix hardcoded Xen kernel path

We already have a ./configure-time variable for this, but it seems to
be actually unused.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

73b0fa69 03/23/2012 03:56 pm Iustin Pop

Enable selection between Python and Haskell confd

This patch changes configure.ac Makefile.am so that the user can pass:

- --disable-confd (or --enable-confd=no) to disable it completely
- --enable-confd=yes or --enable-confd=python to select the
traditional implementation (this is the default setting)...

acf70442 03/23/2012 03:56 pm Iustin Pop

Fix qemu-img configure.ac check

By accident, commit a002ed7 introduced the qemu-img checks in the
htools block. I found this also by mistake while investigating
another issue :)

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

88a10df5 03/22/2012 07:30 pm Iustin Pop

Rework exit model

While updating the confd code, I realised that we have lots of
duplication in the exit model for the various programs.

So this patch attempts to abstract all the exits via a couple of new
functions; sorry for the somewhat big patch, but I hope the payoff is...

3e5012c6 03/22/2012 05:10 pm Iustin Pop

Fix out-of-tree builds

The new shell tests do not succeed out-of-tree, due to static paths
and other issues. This trivial patch fixes these issue, make distcheck
now passes.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

53d4cdf1 03/22/2012 04:01 pm Iustin Pop

Convert manual shell tests to shelltestrunner

This is more of a RFC… Basically most of the shell-based tests are
converted from exec+grep to shelltestrunner.

Things are not all fine and nice though:

- we have dependencies between tests, as some generate some data files...

b714ff89 03/22/2012 03:58 pm Iustin Pop

Add command line option for controlling syslog use

… and enable it in hconfd.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

a6e2a138 03/22/2012 03:58 pm Iustin Pop

Add support for syslog logging to Ganeti.Logging

Currently this is initialised to no from Daemon.hs, but will in the
future allow command-line options for controlling it.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

0985325d 03/21/2012 02:08 pm Iustin Pop

Only build hconfd if --enable-confd was passed

A later, more complete patch, will allow selecting between either the
Python version or the Haskell version. This is just a temporary
solution to help building without all the needed Haskell libraries.

Signed-off-by: Iustin Pop <>...

3096524e 03/21/2012 12:37 pm Iustin Pop

Build test helpers that point to hpc-htools

Instead of using just shell constructs to run hpc-htools correctly
(i.e. HTOOLS=role htools/hpc-htools …), let's add some shell fragments
that do this for us.

This will ease the running of tests directly.

Signed-off-by: Iustin Pop <>...

f183de56 03/21/2012 12:37 pm Iustin Pop

Allow hail to read data from stdin

This patch makes hail treat '-' as denoting stdin, per the usual Unix
convention. This will help with testing.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

19cff311 03/21/2012 12:37 am Iustin Pop

Update hconfd bind address handling

Instead of hardcoded IPv4 INADDR_ANY, this patch changes hconfd to use
either the any network for the configured cluster address family
(ipv4/ipv6), or whatever the user passes in via the --bind option.

Signed-off-by: Iustin Pop <>...

aa3adf35 03/21/2012 12:25 am Iustin Pop

Add skeleton ssconf module

This currently has only one export function in it, which will be used
for future bind address functionality in daemons.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

1091021c 03/21/2012 12:25 am Iustin Pop

Add two utility functions

These both are work with/on the Result type, so we add them to
BasicTypes. The functions will be used as more generic versions of
some more specialised functions that are right now spread across the
modules.

Signed-off-by: Iustin Pop <>...

152e05e1 03/21/2012 12:25 am Iustin Pop

Add the bind-address option

This implements the same logic as the Python code: if the option is
not used, use the default appropriate for the cluster, otherwise try
to parse and use whatever was passed in.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

a5183d3d 03/20/2012 02:11 pm Alexander Schreiber

Typo fix: s/aditional/additional/

Trivial fix for a typo in message output of LUInstanceSetParams

Signed-off-by: Alexander Schreiber <>
Reviewed-by: René Nussbaumer <>

3c6b7403 03/19/2012 05:45 pm Iustin Pop

Fix exported constants

I "forgot" to run the unittests before commit :(

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

47334810 03/19/2012 05:34 pm Iustin Pop

Export the AF_INET/AF_INET6 constants

These are needed to ensure that htools uses the same numeric values as
Python.

By the way, I'm not sure what's the best option: importing socket into
constants (this patch), or adding custom exports to
autotools/convert-constants....

896b2850 03/19/2012 05:34 pm Iustin Pop

Rename htools-hpc to hpc-tools to fix laziness

This is a stupid/trivial patch. I didn't realise when adding
htools-hpc that this will "break" tab completion on htools; as in, I
will have to add / manually always when completing files on the
command line....

e6812a1a 03/19/2012 12:00 pm Iustin Pop

htools: fix long version of --port for daemons

The dashes do not need to be in, if they are then the resulting option
is:

-p PORT  ----port=PORT     Network port (default: 1814)

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

91e5a351 03/19/2012 11:50 am Iustin Pop

Add htools/rapi test directory to DIRS

Sorry!

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

5ec23388 03/19/2012 11:50 am Iustin Pop

Update gnt-node evacuate man page/help text

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

36c70d4d 03/16/2012 01:40 pm Iustin Pop

Fix gnt-group --help display

Copy-paste mismatch :)

Signed-off-by: Iustin Pop <>
Reviewed-by: Bernardo Dal Seno <>

f0753837 03/16/2012 12:35 pm René Nussbaumer

hspace: Make use of the spindle_use

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

5850e990 03/16/2012 12:08 pm Iustin Pop

htools: Fix some compiler warnings

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

6bbd76d2 03/15/2012 06:22 pm Iustin Pop

Add new hail (shell) tests

Using some hand-crafted files (manually modified from a real cluster
running master branch), we test that hail behaves as we expect:
doesn't load obvious wrong data, can do relocations/allocations, etc.

Signed-off-by: Iustin Pop <>...

d575c755 03/15/2012 06:22 pm Iustin Pop

Enhance the RAPI backend to accept file:// URLs

This will allow offline testing of this backend (except for the actual
curl part), also in the case where we didn't compile against curl.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

55ffacfa 03/15/2012 06:22 pm Iustin Pop

Add RAPI shell-level unittest

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

30084381 03/15/2012 06:22 pm Iustin Pop

Enable pipefail mode for shell tests

These allow more accurate checks.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

8d616d4d 03/15/2012 06:22 pm Iustin Pop

Add utilisation and instance selection tests

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

9915fb20 03/15/2012 06:22 pm Iustin Pop

Add tests for custom text files

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

ec629280 03/15/2012 04:25 pm René Nussbaumer

htools: Reflect the rename of spindle_usage to spindle_use

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

34700f5b 03/15/2012 04:25 pm René Nussbaumer

Rename spindle_usage to spindle_use on Ganeti side

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

fafd0773 03/15/2012 04:05 pm Iustin Pop

Add a helper function for mirrorType computations

We most always use `templateMirrorType . diskTemplate`, so let's add a
helper function for this.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

1d42996b 03/15/2012 04:05 pm Iustin Pop

Fix TLMigrateInstance use of IAllocator

hail now expects correctly that relocate_from is of equal length with
the number of required nodes (fixme: there's a lot of not well
documented behaviour here… not nice for any other potential
IAllocators). As such, we need to pass just the instance's primary...

64946775 03/15/2012 04:05 pm Iustin Pop

Enable all disk templates in unit-tests

After the many patches implementing the shared storage functionality
in iallocator, balances, etc., and after the patches preparing the
unit-tests to do the right thing for shared storage, we can finally
flip the bits that make instances have "random" disk templates as...

f9f6480e 03/15/2012 04:05 pm Iustin Pop

Enable evacuation/relocation for shared storage

This patch toggles the final bit and enables nodeEvacInstance to work
on shared storage instances. Diskless instances are handled the same
(as in, None is the same everywhere :).

Signed-off-by: Iustin Pop <>...

91575c31 03/15/2012 04:05 pm Iustin Pop

Replace explicit case with 'either'

Instead of manually case-ing on the Either contents, let's just use
either with const functions (not really readable, but…).

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

a1741ae5 03/15/2012 04:04 pm Iustin Pop

Rename evacDrbdSecondaryInner to evacOneNodeInner

The function is now generic, so let's rename it and cleanup/improve
the docstrings.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

6ab3ce90 03/15/2012 04:04 pm Iustin Pop

Abstract the secondary evac into a separate function

This is generic enough (no longer depending on the replace type) that
it will be used for other replace modes too. So all we need to do is
to abstract it to a separate function (that can be called from...

53bddadd 03/15/2012 04:04 pm Iustin Pop

Fix Node_addPriFD test for arbitrary disk templates

Currently, this test assumes localStorageTemplates, so let's make sure
we enforce that on the given instance

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

0c8cef35 03/15/2012 04:04 pm Iustin Pop

Extend the possible move types with FailoverToAny

This brings together all previous pieces and allows balancing to work
(with the known caveats related to disk space calculation) for shared
storage disk templates.

Signed-off-by: Iustin Pop <>...

d953a965 03/15/2012 03:53 pm René Nussbaumer

htools: Add the new ipolicy field

Also add the spindle usage to QC

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

553cb5f7 03/15/2012 03:53 pm René Nussbaumer

ipolicy: Keep track of spindle usage

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

4c18f468 03/15/2012 12:29 pm René Nussbaumer

htools: Use the spindle usage in the algorithms

In the same transition also do a simple refactor of the caculation

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

b003b8c0 03/15/2012 12:29 pm René Nussbaumer

htools: Convert all the other backends as this is trivial

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

52cc1370 03/15/2012 12:29 pm René Nussbaumer

htools: Adapt the Text backend to spindle usage

The old text files remain compatible with this change.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

981bb5cf 03/15/2012 12:29 pm René Nussbaumer

htools: Adding spindle usage to Instance

For now we just pass in "1" as spindle usage and adapt the backend
later.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

37b918c2 03/15/2012 12:29 pm René Nussbaumer

iallocator: Add the spindle_usage to iallocator

This adapts the Ganeti side to export the spindle_usage

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

ccbbb434 03/15/2012 12:29 pm René Nussbaumer

constants: Add new spindle_usage parameter to BE

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

1cdcf8f3 03/15/2012 12:24 pm Iustin Pop

Rework unit parsing

Due to how conversions were implemented previously, 1TB failed to
parse on 32-bit, as we were overflowing during computation, even
though the final result would fit easily.

This patch moves the parsing of the scaling factor to a separate...

1bf72492 03/14/2012 12:50 pm Alexander Schreiber

Enable lvmstrap to run under Linux 3.x

Extend the kernel version check to also accept Linux 3.x as valid.

Signed-off-by: Alexander Schreiber <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

d3cd5a3f 03/14/2012 12:21 pm Iustin Pop

Fix make distcheck after the new shell tests

With the new shell tests, we have for the first time the situation
where tests require a binary built (via make), but the binary itself
is not the test. Hence, we need to declare and use check_SCRIPTS for
it.
...

25cdf177 03/13/2012 06:11 pm Iustin Pop

Build a coverage-enabled version of the tools

This allows the offline tests to also generate coverage data, and the
hs-coverage target is changed to show both unit-test and offline-tests
coverage.

The downside is that now we build yet-another-binary, which makes the...

3e7220e4 03/13/2012 06:11 pm Iustin Pop

Enhance the offline tests

This adds new offline tests:

- checks that files generated by hspace can be read by hbal/hinfo
- checks that hbal handles node groups as expected
- checks that enabling multiple backends results in failure
- checks hspace machine readable code and higher verbosity...

16197d69 03/13/2012 06:11 pm Iustin Pop

Add more rebalance offline tests

These test that we can actually rebalance (and that it results in
replace-disks and failovers/migrations), and that we don't
double-rebalance, etc.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

04d15e63 03/13/2012 05:56 pm Iustin Pop

Enable htools offline tests as Haskell tests

This enables the offline-test.sh run both in the special "hs-check"
rule and during normal "make check".

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

42089b55 03/13/2012 05:56 pm Iustin Pop

Add a simple binary tester for htools

This only tests the command line basic options. In the future, it can
be expanded to check other things.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

01c23d75 03/13/2012 05:56 pm Iustin Pop

Add a helper for htools CLI tests

… and update live-test.sh to use it, instead of hard-coding the
program paths.

A few additional style fixes are also done (indentation).

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

358a0a8f 03/13/2012 03:12 pm Iustin Pop

htools: add confd server module

This contains a more-or-less complete implementation for the
server-side confd.

Note that most of the code is behaving identical to the Python code,
with a notable exception: the asyncore/inotify code was changed (since
Haskell doesn't have asyncore) to 3-thread system. While otherwise I...

3c899290 03/13/2012 03:12 pm Iustin Pop

htools: add confd daemon binary

This is currently not installed anywhere, just built.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

6ec7a50e 03/13/2012 02:48 pm Iustin Pop

htools: add basic daemon-related functionality

This is not complete for now, just the basic functionality has been
implemented:

- daemonize
- check we're running under the correct user
- call setup logging

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

ba4e38e8 03/13/2012 02:48 pm Iustin Pop

htools: add logging functionality

This adds a dependency on hslogger 1.1+, which is not available in
Debian Squeeze, only in later versions.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

7946c25d 03/13/2012 02:48 pm Iustin Pop

htools: add runtime functionality

This duplicates the lib/runtime.py functionality, allowing us to check
for runtime users and groups consistency.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

21dc8694 03/13/2012 02:48 pm Iustin Pop

htools: add a small module for crypto functions

This adds a dependency on the following new libraries:

- Data.HMAC module from the 'crypto' library
- Data.Text from the 'text' library
- Data.ByteString from the 'bytestring' library

In Debian, the bytestring library comes with the ghc compiler, whereas...

417cc253 03/13/2012 02:48 pm Iustin Pop

htools: add definitions for confd types

While we have some of these as plain types in Constants.hs, we add
proper ADT definitions for them in a new file. Furthermore, we add the
ConfdRequest and ConfdReply types here (in Python they are in
objects.py).

Signed-off-by: Iustin Pop <>...

eaa64cd8 03/13/2012 02:48 pm Iustin Pop

htools: add a very basic lib/config.py equivalent

This only is able to load the configuration data for now.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

b1e81520 03/13/2012 02:48 pm Iustin Pop

htools: add partial implementation of lib/objects.py

This is partial since not all object types can be easily converted for
now (will need some changes on the Python side for this).

Most importantly, the *Params types do not have a good solution now:
the Python code, due to its dynamic typing, hides the fact that we...

0547d608 03/13/2012 11:29 am René Nussbaumer

htools: Make it possible to load an IAlloc request

This is only useful in the stand-alone command line tools:

- hbal
- hspace
- hinfo

This change also documents the flag in all man-pages.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

81f7ea25 03/09/2012 04:46 pm Iustin Pop

Fix lint error in commit 035b33e2

Commit 035b33e2 forgot one blank space, and current pylint in Debian
Sid doesn't run on our code… so I didn't realise this until after
commit, sorry.

Signed-off-by: Guido Trotter <>
Reviewed-by: Guido Trotter <>

7018af9c 03/07/2012 11:35 pm Iustin Pop

Fix relocation test ClusterAllocRelocate

As for the evacuate tests, we require a mirrored disk template, but
otherwise the test should work for both mirror types.

Additionally, we perform a simplification that was left as TODO.

Signed-off-by: Iustin Pop <>...

3d7d3a1f 03/07/2012 11:34 pm Iustin Pop

Fix IAlloc.processRelocate to support shared storage

Currently, this function expects (but doesn't really check! only via
secondary node being defined) a DRBD8 template type.

This patch (not very readable, sorry) changes it so that we check
whether we're internally mirrored, externally mirrored, or not...

ac1c0a07 03/07/2012 11:31 pm Iustin Pop

Fix up Cluster nodeEvac unittests for shared storage

Currently, these presume that the instance being generated always is
DRBD/relocatable (but won't be in the future), and also presume that
all relocation modes can be used (hint: not ☺).

So we add a couple of helper functions to restrict the used disk...

a593113c 03/07/2012 11:25 pm Iustin Pop

Small improvement for nicer unit-testing

In case you just run "make htools/test" to recompile the unittests,
the old .tix file should be removed, otherwise you get the message
about inconsistent tick boxes. Let's make the compilation process
automatically remove this, for easier testing....

80b27509 03/07/2012 11:24 pm Iustin Pop

Rework evacDrbdSecondaryInner to take the imove

Instead of hard-coding the instance move operation, let's accept is as
a parameter from the caller. This is the single thing that makes this
DRBD-specific, so removing it will help for future
patches. Furthermore, this abstract the imove op type into a single...