Statistics
| Branch: | Tag: | Revision:

root / qa @ 090128b6

# Date Author Comment
090128b6 04/17/2013 07:04 pm Christos Stavrakakis

Update QA tests to check disk and NIC names

Modify existing tests to use the name option for instance disks. The
configuration options 'disk' and 'disk-growth' are merged into a single
'disks' option, which is a list of dictionaries with 'size', 'growth' and...

2ef21e6e 04/15/2013 01:17 am Bernardo Dal Seno

QA: Test enabled disk templates with known configuration

The test failed because it was executed also in a configuration that wasn't
expected, i.e., with exclusive storage enabled.

Also the docstring is shortened, as it was being truncated in the QA output....

02cff8aa 04/15/2013 01:17 am Bernardo Dal Seno

QA: Decision about disk templates to use is more modular

qa_config.IsTemplateSupported() is already used to decide which disk
templates are supported by QA. Enabled templates now are part of that
decision.

Unit tests are updated.

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

6f665bf7 04/11/2013 11:53 pm Helga Velroyen

QA: creating instances of dis/enabled disk templates

This patch makes sure that instance creation is only possible
for instances that use enabled disk templates.

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

462f0faa 04/11/2013 11:53 pm Helga Velroyen

QA: dis/enabling of used disk templates

This extends the QA for 'gnt-cluster modify'. It ensures
that disabling of a disk template is only possible if the
cluster does not have any instances using the template.

Signed-off-by: Helga Velroyen <>...

f41dc024 04/11/2013 11:53 pm Helga Velroyen

qa_instance: refactoring wrt disk templates

This patch is a preparation for later patches in QA in this series
it refactors the instance QA to make it more flexible regarding
creation of instances with different disk templates. Right now we
only support creation of instances with disk templates 'drbd', 'plain',...

2dae8d64 04/11/2013 11:53 pm Helga Velroyen

QA: Test cluster init/modify wrt enabled disk templates

Fixes the QA of 'gnt-cluster init' and 'gnt-cluster modify' with respect
to enabling disk templates.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Michele Tartara <>

f0ed67ed 04/10/2013 09:28 pm Guido Trotter

qa: fix TestInstanceModifyPrimaryAndBack flakiness

The test tries to scp the instance disks from the primary node to the
new destination, but connects to the master node instead. Thus it works
only when the primary node is the master node. Fixing by correcting to...

b0b7bf8f 04/09/2013 04:08 pm Guido Trotter

qa: Fix mistake in _DestroyInstanceDisks

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

cc2a70b1 04/08/2013 04:18 pm Guido Trotter

qa: fix instance recreate disks for ST_FILE disks

More lvm commands "sprinkled" in qa :/ We really have to factor them out
in the storage layer, once we have a good one.

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

301c3bbb 04/07/2013 02:59 pm Guido Trotter

qa: skip gnt-backup for file instances

Note that this fixes the "current issue" but doesn't fix the underlying
problem. :/

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

318bbaa9 04/07/2013 02:59 pm Guido Trotter

qa: fix RemoveInstanceOfflineNode for file-based

- The cleanup should only happen for non externally mirrored disk
templates
- It should behave differently for file and lvm based instances
- It should definitely not be explicit in the qa file :/ (but it's...

34ddd63a 04/07/2013 02:59 pm Guido Trotter

qa: disable inter-cluster-instance-move for file

This actually hides a real issue that was discovered by enabling
file-based qa, so bug was filed for it. On the other hand it's better
than keeping the qa broken, since this functionality was broken anyway....

1012ecf4 04/07/2013 02:59 pm Guido Trotter

qa: fix rename instance for non-lvm backed storage

The rename instance test performs an lvm-specific check for tags on the
instance volume. This should be in the future abstracted inside the
template class, and not explicitly called from qa.

This would allow other disks to perform the checks that make sense for...

0b85e1bd 04/07/2013 02:59 pm Guido Trotter

qa: fix modify primary test

This test uses a non-existing config value "file-storage-dir" and fails.
Fixing it by using the default value, which is currently what qa does.

Signed-off-by: Guido Trotter <>
Reviewed-by: Bernardo Dal Seno <>

049a6c6b 04/07/2013 02:59 pm Guido Trotter

qa: pass some extra options to make scp work

scp by itself won't work on a cluster: a few extra options are needed to
tell it where to find the "right" ssh global known hosts file managed by
Ganeti.

Signed-off-by: Guido Trotter <>
Reviewed-by: Bernardo Dal Seno <>

5f6d1b42 04/04/2013 12:28 pm Bernardo Dal Seno

gnt-node info uses a revised format

The code is more modular, and the output is YAML-compliant. QA has been
updated to reflect the new format.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

d0a44ec0 04/02/2013 02:02 pm Klaus Aehlig

Add QA for gnt-instance modify --new-primary

Add a simple walk through the intended use case of
gnt-instance modify --new-primary for the disk template
file. The tested scenario is shutting down an instance,
manually moving the disk to the new node, setting the...

6970c89c 04/02/2013 02:01 pm Klaus Aehlig

Additionally support disk-type file in QA

Also perform QA tests for the file disk template. The main reason
is that testing gnt-instance modify --new-primary requires a
manual move of disks, which is most easily simulated for files.

Signed-off-by: Klaus Aehlig <>...

da5f09ef 03/27/2013 12:46 pm Bernardo Dal Seno

Refactor ispecs in ipolicy structures

Minimum and maximum instance specs are put together into a single element
of the instance policy. This is in preparation for introducing multiple
min/max specs.

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

e118deb1 03/27/2013 12:44 pm Bernardo Dal Seno

QA: Fix assertion

The assertion was always true because "all" was missing.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>
Reviewed-by: Michele Tartara <>

2cbcf95d 03/26/2013 01:57 pm Bernardo Dal Seno

gnt-instance info uses a revised format

The code is more modular and the output is YAML-compliant. QA updated to
take advantage of it.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

0e79564a 03/26/2013 01:57 pm Bernardo Dal Seno

gnt-cluster info uses a revised format

The code is more modular and the output is YAML-compliant.

Added function in QA that uses PyYAML to parse the command output, and QA
is updated to take advantage of it (instead of using lots of complicated
REs).

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

dacd8ba4 03/21/2013 05:41 pm Helga Velroyen

QA: Extend cluster QA wrt enabled storage types

This extends the QA scripts to test the changes in 'gnt-cluster init',
'gnt-cluster info', and 'gnt-cluster modify' with respect to enabled
storage types.

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

33c730a2 03/21/2013 05:40 pm Helga Velroyen

Add constants for storage types to constants.py

This patch adds the currently known and used storage methods to the
constants.py file. Note that storage types are different from disk
templates. For example both disk templates, drbd and plain, use lvm
storage types....

ad658827 03/12/2013 03:52 pm Bernardo Dal Seno

Fix QA: skip reinstall for diskless instances

Diskless instances cannot really be reinstalled, not even through RAPI.

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

46d21495 03/12/2013 01:32 pm Bernardo Dal Seno

Merge branch 'devel-2.7'

  • devel-2.7
    Add QA for instance creation with policy violation
    Add QA for policy-instance interactions
    Add QA for cluster policies
    Unit tests for objects.InstancePolicy + a fix
    Unit tests for objects.FillIPolicy() + small fix...
fa84c8a4 03/11/2013 08:57 pm Bernardo Dal Seno

Add QA for instance creation with policy violation

When instance policy is violated, creation fails.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

ab4832d1 03/11/2013 08:57 pm Bernardo Dal Seno

Add QA for policy-instance interactions

Violations on policy changes are checked.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

b3f3aa3d 03/11/2013 08:57 pm Bernardo Dal Seno

Add QA for cluster policies

qa_cluster.TestClusterSetISpecs() is exported as it will be used in future
tests.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

6ea2bb8c 03/11/2013 08:56 pm Bernardo Dal Seno

Fix restoring default instance specs in group policies

"default" was not accepted as a valid input value for instance specs in
group policies, due to a bug introduced in 2cc673a3e (and released with
2.6.0). Added QA for this and another similar case.

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

491d02ca 03/05/2013 01:56 pm Iustin Pop

Merge branch 'devel-2.7'

  • devel-2.7: (23 commits)
    Add export lists for files which didn't have them
    Fix Haskell compatibility tests with disabled file storage
    Fix QA with disabled file storage
    Fix convert-constants handling of booleans
    Fix handling of disabled (shared) file storage...
3c87d614 03/04/2013 05:18 pm Iustin Pop

Fix QA with disabled file storage

Currently QA tries to use “gnt-node list-storage” with all storage
types, but when file storage is disabled this will fail.

The patch changes it so that if file storage is disabled, we test that
indeed fails, and otherwise we include it in the regular tests....

59c75517 02/28/2013 04:52 pm Michael Hanselmann

QA: Support diskless instances

This is an initial implementation of diskless instances.

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

00650761 02/28/2013 04:52 pm Michael Hanselmann

QA: Compare ipolicy directly with None

If a value was set to numeric 0, the parameter wouldn't be passed to the
command.

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

89d11332 02/28/2013 04:52 pm Michael Hanselmann

QA: List all ipolicy options in example configuration

This makes it easier to know what options are available.

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

b296c810 02/28/2013 04:52 pm Michael Hanselmann

QA: Update assertion for diskless instances

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

a90636b2 02/28/2013 04:52 pm Michael Hanselmann

QA: Disable reinstall test for diskless instances

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

1a6db3df 02/28/2013 04:52 pm Michael Hanselmann

QA: Fix dictionary formatting

Make it match the style guide.

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

04b5f222 02/28/2013 04:52 pm Michael Hanselmann

QA: Disable drbd-offline test if no DRBD instance is used

If “instance-add-drbd-disk” is not enabled it usually also means to not
use DRBD at all.

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

301adaae 02/27/2013 04:00 pm Michael Hanselmann

QA: Disable RAPI tests for virtual clusters

The QA script connects to the RAPI daemon. In virtual cluster setups the
daemon is usually listening on a local interface not reachable from the
outside.

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

2df92990 02/27/2013 04:00 pm Michael Hanselmann

QA: Add virtual cluster support to queue drain test

The path to the queue drain file must use the virtual node path.

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

db41409c 02/27/2013 04:00 pm Michael Hanselmann

QA: Disable copyfile test for virtual clusters

This test will need some more work for virtual clusters. Disable it in
the meantime.

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

c0464536 02/27/2013 04:00 pm Michael Hanselmann

QA: Disable OOB tests for virtual clusters

They do not work properly at the moment.

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

734fd6b4 02/27/2013 04:00 pm Michael Hanselmann

QA: Update virtual node's RAPI users file

The file is located below the virtual node directory.

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

dcd85eef 02/27/2013 04:00 pm Michael Hanselmann

QA: Read virtual node's RAPI certificate

The virtual node prefix must be added to the path.

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

c9cf3f1a 02/27/2013 03:59 pm Michael Hanselmann

qa_os: Disable checks for virtual clusters

The OS definitions are not virtualized. Tests configuring different OS
definitions on different nodes don't work properly.

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

e35c341e 02/27/2013 03:59 pm Michael Hanselmann

qa_instance: Virtual cluster support for instance list

Use path of virtual node when retrieving ssconf's instance list.

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

ea0d8b70 02/27/2013 03:58 pm Michael Hanselmann

qa_daemon: Virtual cluster support

Use virtual node path when removing the watcher status file.

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

7160f14a 02/27/2013 03:58 pm Michael Hanselmann

qa_utils: Support virtual cluster for backup files

“qa_utils.BackupFile” is always called with the path for a normal node.
In virtual clusters the node prefix path must be added.

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

50eaa5da 02/27/2013 03:58 pm Michael Hanselmann

qa_utils: Virtual cluster support for SSH commands

In virtual clusters, all “gnt-*” and “ganeti-*” commands require
environment variables to be set for the virtual cluster root directory
and node name. The “cmd” script generated by “vcluster-setup” is a
wrapper setting those variables....

c072e788 02/27/2013 03:11 pm Michael Hanselmann

qa_config: Support callable test checks

Until now all tests depended on simple AND/OR conditions. With the
introduction of virtual cluster support, some tests can only run if
virtual clusters are not in use (e.g. not yet supported or not
possible). Instead of introducing more logic for enabling/disabling...

76fda900 02/27/2013 03:11 pm Michael Hanselmann

QA: Add config entries for virtual cluster

If these new options are set, a virtual cluster is created and used.
Virtual clusters consist of 1..N virtual nodes on a single physical (or
virtual) node. The design of virtual clusters is described in
“doc/design-virtual-clusters.rst”....

41be279f 02/20/2013 06:45 pm Michael Hanselmann

qa_config.AcquireNode: Use sort key function

Use a sort key function instead of using a comparing function (“cmp=…”).
The latter is not supported in Python 3 and using a sort key function is
easier.

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

e80edd3b 02/20/2013 06:45 pm Michael Hanselmann

qa_config: Add repr for instance/node classes

Having a readable representation makes debugging easier.

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

47aa6ec9 02/20/2013 03:38 pm Michael Hanselmann

QA: Add validation for cluster name

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

2176724e 02/20/2013 03:38 pm Michael Hanselmann

QA: Acquire instance via method

Also make “used” a property.

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

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 <>

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 <>

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 <>

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....

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...

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...

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 <>...

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 <>

35e18c38 02/01/2013 06:21 pm Michael Hanselmann

Merge branch 'devel-2.7'

  • devel-2.7: (24 commits)
    Fix typo in ganeti-noded man page
    QA: Run instance tests with different cluster configurations
    QA: Run cluster-verify after instance tests
    QA: Refactored launching of the various instance tests
    QA: Use lists of nodes as argument to instance tests...
deadfa13 02/01/2013 12:25 pm Bernardo Dal Seno

QA: Run instance tests with different cluster configurations

Instance tests are run with or without the exclusive-storage flag set. More
configurations can be added easily.

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

5de31440 02/01/2013 12:25 pm Bernardo Dal Seno

QA: Instance tests check the configuration before running

Instance test functions check the current configuration, and they will run
the actual tests only if the configuration supports them. This will be
used for refactoring in following patches.

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

c99200a3 02/01/2013 12:25 pm Bernardo Dal Seno

QA: Use lists of nodes as argument to instance tests

Some instance test functions took two node arguments, some took one, and
some took two but the second argument could be None. This patch makes such
functions uniform by using a list of nodes as an argument. This simplifies...

27eba428 02/01/2013 12:25 pm Bernardo Dal Seno

QA: Refactored launching of the various instance tests

The code launching instance tests for "plain" and "drbd" templates has been
unified. In this way it's easier to add more templates, and to re-use the same
tests with different configurations.

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

a36f690c 02/01/2013 12:25 pm Bernardo Dal Seno

QA: Run cluster-verify after instance tests

We want to make sure that instance operations don't leave the cluster in a
bad state. The "instance-remove-drbd-offline" test leaves some debris
behind, so it's been moved to the last position.

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

7d4f1b45 02/01/2013 12:24 pm Bernardo Dal Seno

QA: Added functions to allocate/free N nodes at once

These make possible to simplify the logic of tests requiring more
nodes. Used in the following patches.

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

6a0f22e1 02/01/2013 12:23 pm Bernardo Dal Seno

QA: Added exclusive_storage to qa_config

QA configuration now tracks the state of the exclusive_storage flag at
cluster level. This will be used to selectively enable tests according to
the configuration.

Also, it's now possible to specify the initial value of the...

deaa347b 02/01/2013 12:20 pm Bernardo Dal Seno

QA fix: TestInstanceExportWithRemove() updates configuration

When the instance is removed from the cluster by this test, it's also freed
in the QA configuration.

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

e4c346a5 02/01/2013 12:20 pm Bernardo Dal Seno

QA cleanup: Removed instance-disk-failure test

The test was broken, out of sync with the rest of the code, and prone to
crashes. Until someone does a better job, it's better to remove the
test. This simplifies further refactoring.

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

906a0346 02/01/2013 12:20 pm Bernardo Dal Seno

QA: Added disk template to config

The disk templates used by the instances are tracked in the QA
configuration. This will be used to selectively enable tests according to
the configuration.

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

cf632f3e 02/01/2013 12:20 pm Bernardo Dal Seno

QA: Better initialization of a global dictionary

The global 'cfg' variable is initialized to an empty dictionary, so there
is no more need to disable some pylint checks.

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

21e2734f 02/01/2013 12:19 pm Bernardo Dal Seno

QA: Cluster-verify reports shared PVs with exclusive storage

Exclusive storage forbids sharing PVs between unrelated LVs. This is a test
that cluster-verify correctly report such cases.

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

23610ff8 02/01/2013 12:16 pm Bernardo Dal Seno

QA: Added constants for LVM volumes

The LVM volume group becomes a configurable parameter, and a prefix for
logical volume names used in tests is introduced as a constant.

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