Statistics
| Branch: | Tag: | Revision:

root @ fb4b885a

# Date Author Comment
fb4b885a 02/19/2013 09:36 pm Guido Trotter

HRoller design updates

- Specify that there will be options for selecting nodes by at least
nodegroups and tags, rather than just individually.
- Specify a better handling for non-redundant instances (eg. plain or
file) which today are simply ignored...

c3a5176f 02/19/2013 06:57 pm Michael Hanselmann

baserlib: Make "_OPCODE_ATTRS" public

"_OPCODE_ATTRS" will also be used in the Sphinx extension.

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

d6ee0e41 02/19/2013 06:56 pm Michael Hanselmann

Makefile: Add dependencies

The RAPI documentation now depends on “connector.py” (handler
registration) and “rlib2.py” (access permissions).

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

180fdc32 02/19/2013 06:55 pm Michael Hanselmann

RAPI documentation: Add link targets

A newly added table of RAPI access permissions will link to all
resources and their supported methods. For this reason link targets need
to be added.

The GET method on “/2/nodes/[node_name]” was not separately mentioned....

5224c9bf 02/19/2013 04:29 pm Michael Hanselmann

Helper to retrieve access permissions for RAPI resource

Merge similar code into a helper function.

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

c6793656 02/19/2013 04:29 pm Michael Hanselmann

Sphinx extension: Module-level constant for tab width

Use a module-level constant for the tab width.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Michele Tartara <>

46ab58d4 02/19/2013 04:29 pm Michael Hanselmann

RAPI documentation: Assertion for console fields

Assert that the documented fields are equal to those in the actual
object.

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

4a90bd4f 02/19/2013 04:27 pm Michele Tartara

Status change reason support for Reboot

Add support to the Reboot command for specifying the reason for the last
status change.

Some features are implemented as functions, even if used only once, because
they will be used by the future patches introducing reason support for all...

a59d5fa1 02/19/2013 04:27 pm Michele Tartara

Infrastructure for specifying instance status change reason

This patch introduces some infrastructural modifications that will be used by
the following commits to implement the support for specifying the reason for
the last status change of an instance.
...

834bea99 02/18/2013 06:08 pm Helga Velroyen

Unit tests for Query/Network.hs

This patch adds a couple of unit tests for Query/Network.hs.
Note that they'll need to be adapted, once issue 362 is addressed.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Iustin Pop <>

7dc27988 02/18/2013 05:35 pm Michele Tartara

Make Confd client usable for testing

Allow the Confd client to be able to connect to an arbitrary server
instead of just the real one running on a cluster.

This is meant to be used for testing.

If a data collector using the Confd client is tested with shelltest, it will...

c5a957c3 02/18/2013 05:35 pm Michele Tartara

Add Haskell parser for "xm uptime"

In order to fetch precise information about the uptime of the VMs
running in Xen, we need to analyze the output of the "xm uptime" command.

This commit adds the parser to do that, and its tests.

Signed-off-by: Michele Tartara <>...

b8585908 02/18/2013 05:35 pm Michele Tartara

Add Haskell parser for "xm list --long"

In order to fetch precise information about the status of the VMs running in
Xen, we need to analyze the output of the "xm list --long" command.

This commit adds the parser to do that, and its tests.

Signed-off-by: Michele Tartara <>...

332a83ca 02/18/2013 05:34 pm Michele Tartara

Add request type to Confd server for getting instance list

Add to Confd server a new request type (and its implementation) to ask for
the list of instances in a node.

Signed-off-by: Michele Tartara <>
Reviewed-by: Iustin Pop <>

3301805f 02/18/2013 12:32 pm Michele Tartara

Update monitoring agent report format

This commit expands the monitoring agent design document improving the
description of the general report file format.

There can be two kinds of data collectors (performance and status collectors).

Every collector can now be part of a category of collectors (such as...

ab8747b7 02/15/2013 03:06 pm Guido Trotter

Design correct reporting of storage free space

This is a long standing bug in Ganeti. Add a small design on how we plan
to fix this for Ganeti 2.7.

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

fe502d25 02/15/2013 03:04 pm Iustin Pop

Merge branch 'devel-2.7'

  • devel-2.7:
    Rename lib/objectutils to outils.py
    Fix typo in gnt-group manpage
    Fix wrong type in a docstring of the RAPI subsystem
    Finish the remote→restricted commands rename
    Enable use of the priority option in hbal
    Add CLI-level option to override the priority...
d9a22528 02/15/2013 12:23 pm Iustin Pop

Revert "Disable live-RPC queries under split query"

This reverts commit fb251c2c4c582ec0d6c00a6f6c5e134ed5196e03. On the
master branch we want to continue to have them enabled.

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

473d87a3 02/15/2013 12:14 pm Iustin Pop

Rename lib/objectutils to outils.py

Back when this was introduced, I mentioned that it breaks heavily tab
completion (ob<TAB> doesn't work anymore), but at that moment I didn't
have a suggestion what to name it. I think outils is good and short
enough, and doesn't conflict with anything else, so here it goes....

4b11adcc 02/15/2013 12:12 pm Guido Trotter

Add hroller design to Makefile and design-drafts

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

09208925 02/15/2013 11:29 am Guido Trotter

Hroller design doc

Hroller in 2.7 was implemented (as an experiment) but never explicitly
designed. This design mentions the current functionality, and explains
the changes that will happen for the next release to support live
maintenance scheduling (rolling reboot)....

bfb1d750 02/14/2013 12:00 pm Ben Lipton

Fix typo in gnt-group manpage

The --ipol-disk-templates parameter should actually be
--ipolicy-disk-templates.

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

20ba96f5 02/13/2013 12:34 pm Michele Tartara

Fix wrong type in a docstring of the RAPI subsystem

Signed-off-by: Michele Tartara <>
Reviewed-by: Michael Hanselmann <>

02a5fe0e 02/12/2013 04:36 pm Michael Hanselmann

QA: Set disk template directly via instance object

Use a method on the instance object instead of going through
“qa_config.GetInstanceTemplate”. This provides for better encapsulation.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

0afce24e 02/12/2013 04:36 pm Michael Hanselmann

Remove qa_config.GetInstanceNicMac

Call the wrapped instance method directly.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

68c8c3df 02/12/2013 04:36 pm Michael Hanselmann

QA: Use constants for disk templates

Disk template names shouldn't be hardcoded.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

c6e300e6 02/12/2013 04:00 pm Bernardo Dal Seno

Fix a merge issue in 3c296f56

Lines removed in devel-2.7 (250a9404) weren't removed in the merge with
master.

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

551b44e2 02/12/2013 03:47 pm Iustin Pop

Add a function to change an OpCode's priority

This simply updates the metaopcode submit priority.

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

37fe56e0 02/12/2013 03:47 pm Iustin Pop

Add functions to parse CLI-level format of priorities

The current serialisation format for submit priorities is
integer-based, same as the opcode json serialisation. But for CLI
level, we need to support a string-based format, so we add functions
to parse and format this representation....

e247747c 02/12/2013 03:47 pm Iustin Pop

Add CLI-level option to override the priority

This just defined the new priority, with the same name as the Python one.

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

a81ca843 02/12/2013 03:47 pm Iustin Pop

Enable use of the priority option in hbal

This patch adds the option to hbal, and uses it to tweak the submitted
jobs. There are also two small shelltests for testing the parsing.

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

45bc4635 02/12/2013 03:47 pm Iustin Pop

Finish the remote→restricted commands rename

The documentation still points to /etc/ganeti/remote-commands,
although the code is already using restricted-command. Update the
documentation and a few docstrings accordingly.

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

d41f6558 02/12/2013 03:47 pm Iustin Pop

Make hbal opcode annotation more generic

Currently, hbal code always uses annotateOpCode function, which means
we would have to pass the options data to all function in the call
chain if we wanted to make this more flexible.

By abstracting the type of the annotator and passing it as an argument...

37a978e7 02/12/2013 03:39 pm Helga Velroyen

Force conflicts check in LUNetworkDisconnect

Until now if one disconnects a network with --no-conflicts-check
and then remove it, there is a possibility to leave instances with NICs
referencing non-existing networks. This causes network queries,
instance removal and modification to fail....

1b68f268 02/12/2013 03:39 pm Helga Velroyen

If _UnlockedLookupNetwork() fails raise error

Make _UnlockedLookupNetwork() raise OpPrereqError (instead of returning
None) in case it does not find the requested network. Remove useless and
duplicate code such as:

if net_uuid is None:
raise...

This is a cherry-pick of commit 1cce2c4....

bb63ccb0 02/12/2013 03:39 pm Helga Velroyen

Removes check for conflicts from NetworkDisconnect

This removes the check for conflicts from the Haskell
version of the OpCode NetworkDisconnect. This alignes
the Haskell code with the patch
"Force conflicts check in LUNetworkDisconnect" (which
is currently under review). I will submit these patches...

ae8de7e3 02/12/2013 03:39 pm Guido Trotter

Change default xen root path to /dev/xvda1

All recent-enough versions of linux see the xen paravirtual device as
/dev/xvd*.

This doesn't break old installations, as the default is only used on new
clusters.

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

bdecfea2 02/12/2013 03:39 pm Stratos Psomadakis

Fix rbd showmapped output parsing

'rbd showmapped' output formatting differs between older and newer versions of
the ceph tools. Try to use json output formatting if available (currently
available only in the ceph master branch). For bobtail, argonaut and older...

2e076ede 02/12/2013 03:39 pm Stratos Psomadakis

Add unit tests for RADOSBLockDevice

Add unit tests for the RADOSBlockDevice JSON output parsing function,
and modify the unit tests for the plain output parsing function to
work with the new code.

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

3c296f56 02/12/2013 03:25 pm Michael Hanselmann

Merge branch 'devel-2.7'

  • devel-2.7: (23 commits)
    QA: Support additional arguments for initialization
    qa_utils: Fix order of arguments passed to _AssertRetCode
    Improve reporting on errors.AddressPoolError exceptions
    Add note about lv-tags rename...
becf9d5c 02/12/2013 02:05 pm Michael Hanselmann

QA: Support additional arguments for initialization

In some scenarios it can be useful to add more arguments to “gnt-cluster
init”, such as “--no-drbd-storage”, if DRBD is not installed.

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

3b0db9e3 02/12/2013 02:02 pm Michael Hanselmann

qa_utils: Fix order of arguments passed to _AssertRetCode

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

74e642cd 02/12/2013 01:30 pm Michael Hanselmann

Improve reporting on errors.AddressPoolError exceptions

This patch improves the error messages given when a
“errors.AddressPoolError” exception is caught. Includes some small style
fixes.

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

2fc6329b 02/12/2013 11:25 am Iustin Pop

Add note about lv-tags rename

This is not included on the 2.6 branch, so update the NEWS for 2.7.0 beta1.

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

5cfa6c37 02/11/2013 05:31 pm Dimitris Aragiorgis

Remove network_type slot (Issue 363)

This slot was not used by Ganeti so the same info can be
provided via tags. In order not to break configuration data
we add a FromDict() method in Network config object that
removes the deprecated network_type (if found) and then invoke...

48616625 02/11/2013 05:31 pm Dimitris Aragiorgis

Remove family and size from network objects

This info is not used by Ganeti and therefore is removed.

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

7e8f03e3 02/11/2013 05:31 pm Dimitris Aragiorgis

Make use of HooksDict() for networks

This can be used in hypervisor code as well. For consistency
export *NETWORK_NAME and not *NETWORK throughout the code.

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

99f5fa44 02/11/2013 04:58 pm Michael Hanselmann

QA: Remove dictionary-like interface from config objects

These are no longer used.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

6998aefe 02/11/2013 04:58 pm Michael Hanselmann

QA: Drop dictionary support from qa_utils._GetName

This is no longer needed now that instance/node objects in QA have
attributes. Use a helper function instead to retrieve an entity's
identifying attribute.

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

b5f33afa 02/11/2013 04:58 pm Michael Hanselmann

QA: Convert instances from items to attributes

The new objects support attributes. Item access (like a dictionary) is
going away in a couple of patches.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

aecba21e 02/11/2013 04:58 pm Michael Hanselmann

QA: Convert nodes from items to attributes

The new objects support attributes, which are cleaner than
dictionary-style access. Item access (like a dictionary) is going away
in a couple of patches. Also, pylint is better at checking attributes
than dictionary entries....

565cb4bf 02/11/2013 04:58 pm Michael Hanselmann

QA: Release nodes through method

Instead of having a module-level function in “qa_config” to release a
node, a new method on node objects is used.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

3697def0 02/11/2013 04:21 pm Bernardo Dal Seno

Moved uniformity check for exclusive_storage flag

Cluster-verify used to check that the value of exclusive_storage is uniform
within node groups. Now, it's impossible to change the flag for a single
node, so that check has been removed and an equivalent one has been added...

250a9404 02/11/2013 04:21 pm Bernardo Dal Seno

"exclusive_storage" cannot be changed on single nodes

There's never been support for a configuration where nodes in the same node
group have different values of the exclusive_storage flag. This patch
disables the possibility to change the flag for individual nodes....

45f62156 02/11/2013 04:20 pm Bernardo Dal Seno

Upgrades made on loading the configuration are always saved

Before, only some upgrades were written back to the configuration file. A
little refactoring of _UpgradeConfig() has been done to write unit tests.

Signed-off-by: Bernardo Dal Seno <>...

dbdb0594 02/11/2013 03:30 pm Michael Hanselmann

QA: Convert nodes to objects

Up until now nodes were stored as a dictionary. The keys were hardcoded
in a lot of places and entries modified directly.

This patch introduces a new class for nodes in QA named “_QaNode”. It
still supports accessing details via dictionary syntax, but that will be...

7f5edc60 02/11/2013 12:28 pm Iustin Pop

Show correct daemon name on Luxi connect errors

Since now confd also serves a Luxi endpoint, the current message in
cli.FormatError is misleading when actually failing to connect to
it. The patch adds a somewhat hackish way to show the right daemon
name....

d70571bb 02/11/2013 12:28 pm Iustin Pop

Update the security document for Ganeti 2.7

This should address 359, but I'm not sure if it covers all of 2.7…

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

6f88e076 02/08/2013 03:36 pm Michael Hanselmann

QA: Release instances through method

Instead of having a module-level function in “qa_config” to release an
instance, a new method on instance objects is used.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Bernardo Dal Seno <>

6a654276 02/08/2013 03:36 pm Michael Hanselmann

QA: Convert instances to objects

Up until now instances were stored as a dictionary. The keys were
hardcoded in a lot of places and entries modified directly.

This patch introduces a new class for instances in QA named
“_QaInstance”. It still supports accessing details via dictionary...

a77e3d33 02/08/2013 03:35 pm Michael Hanselmann

QA: Release instance in ganeti-qa

Release instances directly from “ganeti-qa” instead of doing so in the
three tests removing instances. This is in line with how nodes are
released and makes it easier to find and debug double-release issues.

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

0ae14edd 02/08/2013 03:35 pm Michael Hanselmann

QA: Stop using "in" operator for node

The new configuration object for nodes will not support it anymore.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Helga Velroyen <>

2029fe3f 02/08/2013 03:35 pm Michael Hanselmann

QA: Support entity objects in qa_utils._GetName

This is a temporary solution until nodes and instances are converted to
objects with attributes.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Helga Velroyen <>

cf62af3a 02/08/2013 03:35 pm Michael Hanselmann

qa_config: Simplify IsTemplateSupported

The same code can be written in a single expression. The earlier patch
named “Refactor storage of runtime exclusive storage flag in QA”
provided the unit test.

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

a08e181f 02/08/2013 03:35 pm Michael Hanselmann

Refactor storage of runtime exclusive storage flag in QA

This is a follow-up for “qa_config: Remove exclusive storage flag from
config”. Instead of storing the flag in a module-level variable it is
now stored within the new QA configuration class and unit tests are...

8a96c5a6 02/08/2013 03:35 pm Michael Hanselmann

Refactor QA configuration code

Ever since its introduction (sometime before commit cec9845 in September
2007), the QA configuration was stored in a dictionary at module-level
in “qa/qa_config.py”. The configuration was loaded, verified and
evaluated using module-level functions. Since then the configuration has...

f9329a6c 02/08/2013 03:35 pm Michael Hanselmann

qa_config: Remove exclusive storage flag from config

Commit 6a0f22e added the ability to track the status of the cluster-wide
flag for exclusive storage. It did so in a way which modifies the
in-memory configuration dictionary. This patch changes the code to use a...

5ba35653 02/08/2013 01:40 pm Guido Trotter

Make ParticalNic's network field of type String

This was applied to "master" along with extra changes affecting the
master branch only. Cherry-picking just the Objects.hs change.

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

ee9516c8 02/08/2013 01:40 pm Guido Trotter

ConfigData: run UpgradeConfig on network objects

Although this does nothing for now, running it is safe, and consistent
with how other objects behave.

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

d89168ff 02/08/2013 01:40 pm Guido Trotter

OS environment: add network information

1) Move the hooks environment dict generator inside the object. This
also adds missing values such as network family and uuid.
2) Use the same generator both for the os environment and for the
instance hooks.
3) Update manpage and hooks documentation....

16a833d7 02/08/2013 12:04 pm Iustin Pop

Fix OCF files installation in devel/upload

LIBDIR was not defined, so the files ended up directly under /, not
good. Now they're properly installed under /usr/lib/ocf, as per
http://linux-ha.org/wiki/OCF_Resource_Agents.

Also add "set -u" to prevent future occurrences of this kind of bug....

58bc8fbc 02/08/2013 12:04 pm Iustin Pop

Make gnt-os list work with no OSes

When absolutely no OSes are present on the cluster, the result of
OpOsDiagnose is an empty list. This is currently handled in gnt-os as
an error condition, probably due to how OpOsDiagnose used to return
errors in the past....

11eb5cd0 02/08/2013 11:59 am Michael Hanselmann

baserlib: Fix two mistakes in docstring

The method names were wrong due to copy & paste.

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

595149d5 02/08/2013 11:48 am Michael Hanselmann

vcluster: Make _MakeNodeRoot public

The QA code will also have to generate virtual paths and this function
comes in handy.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Michele Tartara <>

1cced301 02/07/2013 06:14 pm Iustin Pop

Workaround hlint behaviour with no warnings/errors

When hlint sees a perfectly nice code tree, it will skip generating
the reports (both stdout and html). This means that usually the old
report will remain in place, so it makes development harder, as the...

72747d91 02/07/2013 06:14 pm Iustin Pop

Remove use of 'head' and add hlint warning for it

Since 'head' is unsafe to use in most cases, this patch removes its
use from most of the code, adds a lint warning for it (and for tail as
well), and adds override annotations in the few cases where it's
actually OK to use it (mainly when using head over the result of...

546a1dcf 02/07/2013 05:02 pm Dato Simó

Harep.hs: fix a couple typos in comments and docstrings

Signed-off-by: Dato Simó <>
Reviewed-by: Guido Trotter <>

afa9bb2e 02/07/2013 01:29 pm Michael Hanselmann

hv_kvm: Error messages, punctuation, other style fixes

- Capitalize acronyms such as “QMP” or “SPICE”
- Remove punctuation from error messages
- Improve error reporting when sending a monitor command failed
- Put “or” at end of line
- Fix indentation for a concatenated string...

eace6157 02/07/2013 12:50 pm Michael Hanselmann

hv_kvm: Add TODO regarding monitor commands

Monitor calls should be replaced with QMP once KVM >= 0.14 is required.

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

b6ad806f 02/06/2013 03:14 pm Guido Trotter

Add release date for 2.7.0 beta1

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

94042ae4 02/06/2013 02:16 pm Michele Tartara

Fix improperly formatted docstring

Change the docstring of chompPrefix to prevent the error
"doc comment parse failed" that was raised by some version of
haddock while generating the documentation for this function.

Signed-off-by: Michele Tartara <>...

b830193c 02/06/2013 12:44 pm Guido Trotter

Version bump for 2.7.0~beta1

Also update the documentation target versions and the cfgupgrade tool to
recognize 2.6 and upgrade to 2.7

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

950e32ec 02/06/2013 12:43 pm Guido Trotter

Update hooks.rst for Ganeti 2.7

- The migrate instance hook now also executes on the primary node in
the "pre" phase.
- Instance hooks now get full network information on each nic, if a
nic's network is set.

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

83251115 02/05/2013 06:55 pm Michael Hanselmann

Merge branch 'devel-2.7'

  • devel-2.7:
    Redirect output for gnt-* list/list-fields commands
    Add function to execute QA commands with redirected output
    Implement option to skip logging of QA commands
    Fix typo in a comment
    Add some more Haskell/Python equivalence tests...
93146c8c 02/05/2013 06:15 pm Iustin Pop

Redirect output for gnt-* list/list-fields commands

This enabled the redirection; QA output after this patch should become
much much smaller (on a 'quick' QA, we are left with ~0.5MB output on
stdout and 64MB redirected output).

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

afd5ca04 02/05/2013 06:15 pm Iustin Pop

Add function to execute QA commands with redirected output

Some QA commands generate non-trivial output: for a full QA, the gnt-*
list commands generate more than 300MB of data. To make the QA logs
more parseable by humans, we need support for redirecting output of...

56b9f2db 02/05/2013 06:15 pm Iustin Pop

Implement option to skip logging of QA commands

This patch adds an optional kwarg that allows skipping the "Command:
…" line in QA output. This is helpful if we only need to run some
maintenance actions, that are QA-related and not Ganeti-related.

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

0c6d6a52 02/05/2013 03:37 pm Helga Velroyen

Making ParticalNic's network field of type String

This is yet another fix for type confusion between python
and haskell. ;) The network field of PartialNic should be
a string and not of type Network. This makes it necessary
to add a helper function to look up a network by name...

6d3d13ab 02/05/2013 03:14 pm Iustin Pop

Fix typo in a comment

Signed-off-by: Iustin Pop <>
Reviewed-by: Michele Tartara <>

ca7b4f48 02/05/2013 10:36 am Iustin Pop

Add some more Haskell/Python equivalence tests

This would have caught the log file problem fixed in the previous
patch (9411474b), for example. Also we test user/group equivalence,
name only.

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

9411474b 02/05/2013 10:36 am Iustin Pop

Fix Haskell log file naming after virtual cluster changes

Commit 3329f4de changed the Haskell log file from constants to
functions, but introduced a bug: it uses now the daemon name instead
of the correct log file, which means "ganeti-confd.log" instead of...

f006f110 02/04/2013 05:40 pm Bernardo Dal Seno

QA: Clean up after "instance-remove-drbd-offline" test

This test used to leave a node with orphan logical volumes and unused DRBD
minors. Now, the expected leftovers are cleaned up after the test, and
cluster-verify is run.

Signed-off-by: Bernardo Dal Seno <>...

c5cd9637 02/04/2013 05:34 pm Michael Hanselmann

qa_config: Remove useless "options" variable

It is only used in one place and not necessary.

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

473ab806 02/04/2013 04:52 pm Michael Hanselmann

Extract container converters

“objects.ConfigObject” contains two useful functions for working with
containers of serialized objects, “_ContainerToDicts” and
“_ContainerFromDicts”. This patch separates those functions and moves
them into “objectutils” as they'll be useful for converting parts of the...

81124130 02/04/2013 04:52 pm Michael Hanselmann

hv_xen: Fix epydoc error

“utils.RunCmd” is re-exported from “utils.process.RunCmd”. Epydoc
doesn't fully understand this, so we have to refer to the original.

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

4d36fbf4 02/04/2013 04:22 pm Michael Hanselmann

objects: Improve handling of TCP/UDP port pool

- Handle de-serialization correctly when pool is not defined
- Serialize to empty list when the attribute is None (this should never
happen in reality as the attribute is always set when de-serializing)
- Add tests...

1f4b9d39 02/04/2013 03:06 pm Iustin Pop

Switch KVM to multi-error verify results

This uses the new _FormatVerifyResults helper function to return
multiple errors.

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

0628a50a 02/04/2013 03:06 pm Iustin Pop

Make LXC fail verification if cgroup is not mounted

Since LXC now relies on cgroup memory limits to enforce memory, let's
make hypervisor verification (and thus cluster-verify) return errors
when the cgroup filesystem is not mounted.

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

53fde1ac 02/04/2013 03:06 pm Iustin Pop

Add a helper function for hypervisor verification

This will allow easier multi-error results from hypervisors; right
now, we only report the first error, which is not nice.

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

e4157912 02/04/2013 09:48 am Guido Trotter

hv_lxc: fix whitespace errors

The latest lxc patches included a few whitespace style errors, that make
lint fail. This patch fixes those.

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