Statistics
| Branch: | Tag: | Revision:

root @ 72bb6b4e

# Date Author Comment
72bb6b4e 10/03/2011 12:17 pm Iustin Pop

A few minor test improvements

This patch adds a few niceties to the test suite:

- allows matching test groups case insensitive and emit warnings when
we give test group names that don't match anything
- add a new operator that is similar to assertEqual in Python: it...

23fe06c2 10/03/2011 12:17 pm Iustin Pop

Use TemplateHaskell to decorate tests with names

This makes error message change from "Test 4 failed …" to "Test
prop_Loader_mergeData failed", which is much more readable. It also
removes the duplication of test suite names in the test.hs file.

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

12c19659 10/03/2011 12:17 pm Iustin Pop

Use TemplateHaskell to generate opcode serialisation

This replaces the hand-coded opcode serialisation code with
auto-generation based on TemplateHaskell.

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

6111e296 10/03/2011 12:17 pm Iustin Pop

Use TemplateHaskell to build the opID function

This replaces the hand-coded opID with one automatically generated
from the constructor names, similar to the way Python does it, except
it's done at compilation time as opposed to runtime.

Again, the code line delta does not favour this patch, but this...

e9aaa3c6 10/03/2011 12:17 pm Iustin Pop

Use TemplateHaskell instead of hand-coded instances

This patch replaces the current hard-coded JSON instances (all alike,
just manual conversion to/from string) with auto-generated code based
on Template Haskell
(http://www.haskell.org/haskellwiki/Template_Haskell)....

2c9336a4 10/03/2011 12:17 pm Iustin Pop

Rename some helper functions for consistency

This changes the names for some helper functions so that future
patches are touching less unrelated code. The change replaces
shortened prefixes with the full type name.

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

f047f90f 10/03/2011 12:16 pm Iustin Pop

Split part of Utils.hs into JSON.hs

Utils is a bit big, let's split the JSON stuff (not all of it) into a
separate module that doesn't have any other dependencies.

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

3398bff1 09/30/2011 06:23 pm Andrea Spadaccini

Merge branch 'devel-2.5'

  • devel-2.5:
    Use --yes to deactivate master ip in cluster merge
    Use deactivate-master-ip in cluster-merge
    Add gnt-cluster commands to toggle the master IP
    Split starting and stopping master IP and daemons
    listrunner: Don't pass arguments if there are none...
cea3abbd 09/30/2011 05:45 pm Andrea Spadaccini

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    listrunner: Don't pass arguments if there are none
    ssh: Quote strings in error message
    utils.log: Write error messages to stderr
    Add signal handling doc to hbal man page
    Fix handling of cluster verify hooks...
aeb24d97 09/30/2011 04:37 pm Guido Trotter

Use --yes to deactivate master ip in cluster merge

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

a3fad332 09/30/2011 03:43 pm Andrea Spadaccini

Use deactivate-master-ip in cluster-merge

Use the gnt-cluster deactivate-master-ip command in cluster-merge to
disable the master IP.

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

fb44c6db 09/30/2011 03:43 pm Andrea Spadaccini

Add gnt-cluster commands to toggle the master IP

lib/client/gnt_cluster.py:
  • Add activate-master-ip and deactivate-master-ip commands
man/gnt-cluster.rst:
  • Document the new commands
lib/opcodes.py lib/cmdlib.py
  • Add two opcodes and the LU that call the relevant RPCs...
c06e0c83 09/30/2011 03:42 pm Andrea Spadaccini

Split starting and stopping master IP and daemons

lib/backend.py
  • split StartMaster() in ActivateMasterIp() and StartMasterDaemons()
  • split StopMaster() in DeactivateMasterIp() and StopMasterDaemons()
lib/server/noded.py, lib/rpc.py
  • adapt the call chains to the new functions, define new RPCs...
e87e5afb 09/30/2011 02:06 pm Andrea Spadaccini

Use deactivate-master-ip in cluster-merge

Use the gnt-cluster deactivate-master-ip command in cluster-merge to
disable the master IP.

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

fb926117 09/30/2011 02:06 pm Andrea Spadaccini

Add gnt-cluster commands to toggle the master IP

lib/client/gnt_cluster.py:
  • Add activate-master-ip and deactivate-master-ip commands
man/gnt-cluster.rst:
  • Document the new commands
lib/opcodes.py lib/cmdlib.py
  • Add two opcodes and the LU that call the relevant RPCs...
fb460cf7 09/30/2011 02:05 pm Andrea Spadaccini

Split starting and stopping master IP and daemons

lib/backend.py
  • split StartMaster() in ActivateMasterIp() and StartMasterDaemons()
  • split StopMaster() in DeactivateMasterIp() and StopMasterDaemons()
lib/server/noded.py, lib/rpc.py
  • adapt the call chains to the new functions, define new RPCs...
34aa8b7c 09/30/2011 01:10 pm Michael Hanselmann

utils.log: Write error messages to stderr

When “gnt-cluster copyfile” failed it would only print “Copy of file …
to node … failed”. A detailed message is written using logging.error.
Writing error messages to stderr can be helpful in figuring out what
went wrong (the messages also go to the log file, but not everyone might...

9dc45ab1 09/30/2011 01:10 pm Michael Hanselmann

ssh: Quote strings in error message

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

0c009cc5 09/30/2011 01:10 pm Michael Hanselmann

listrunner: Don't pass arguments if there are none

If no arguments were specified the “exec_args” variable was “None”,
leading to the command being run as “… ./… None”.

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

2b634302 09/30/2011 12:27 pm Iustin Pop

Add signal handling doc to hbal man page

Also remove a bug note, since hbal can now for a long time directly
execute jobs.

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

60af751d 09/29/2011 12:41 pm Andrea Spadaccini

Adapt non-KVM hypervisors to new migration RPCs

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

61643226 09/29/2011 12:41 pm Andrea Spadaccini

Add memory transfer progress info to migration

  • hypervisor/hv_kvm.py
    - parse the memory transfer status
  • cmdlib.py
    - represent memory transfer info, if available

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

6a1434d7 09/29/2011 12:41 pm Andrea Spadaccini

Make migration RPC non-blocking

To add status reporting for the KVM migration, the instance_migrate RPC
must be non-blocking. Moreover, there must be a way to represent the
migration status and a way to fetch it.

  • constants.py:
    - add constants representing the migration statuses...
f8326fca 09/29/2011 12:41 pm Andrea Spadaccini

Move _TimeoutExpired to utils

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

b8a2c0ab 09/29/2011 10:16 am Iustin Pop

Add an allocation limit to hspace

This is very useful for testing/benchmarking.

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

1bf6d813 09/29/2011 10:16 am Iustin Pop

Small simplification in tryAlloc

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

b0631f10 09/29/2011 10:16 am Iustin Pop

Change how node pairs are generated/used

Currently, the node pairs used for allocation are a simple [(primary,
secondary)] list of tuples, as this is how they were used before the
previous patch. However, for that patch, we use them separately per
primary node, and we have to unpack this list right after generation....

f828f4aa 09/29/2011 10:15 am Iustin Pop

Parallelise instance allocation/capacity computation

This patch finally enables parallelisation in instance placement.

My original try for enabling this didn't work well, but it took a
while (and liberal use of threadscope) to understand why. The attempt...

d7339c99 09/29/2011 10:15 am Iustin Pop

Abstract comparison of AllocElements

This is moved outside of the concatAllocs as it will be needed in
another place in the future.

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

129734d3 09/29/2011 10:14 am Iustin Pop

Change type of Cluster.AllocSolution

Originally, this data type was used both by instance allocation (1
result), and by instance relocation (many results, one per
instance). As such, the field 'asSolutions' was a list, and the
various code paths checked whether the length of the list matches the...

34fbc862 09/28/2011 02:34 pm Andrea Spadaccini

Migration: warn the user about hv version mismatch

  • hv_kvm.py, hv_xen.py
    - return the hypervisor version (if available) from GetNodeInfo
  • cmdlib.py
    - if hypervisor version is available during the migration, and the
    versions differ, warn the user...
3656c889 09/28/2011 02:27 pm Iustin Pop

Fix handling of cluster verify hooks

The change to enforce boolean results for cluster verify group opcode
missed the HooksCallBack, which uses a very ugly 1/0
logic. Furthermore, the logic is wrong, since it unconditionally
resets the verify result to true....

90b2eeb0 09/28/2011 01:15 pm Michael Hanselmann

http.client: Show pending requests as “owner”

In the context of the lock monitor a “pending” item does not yet own the
requested resource. Since these HTTP requests are already undergoing
they should be shown as owners.

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

aea5caef 09/28/2011 01:15 pm Michael Hanselmann

rpc/http: Show pending RPC requests in lock monitor

Not all requests use an instance of RpcRunner yet and therefore won't
show up (only instances have access to the global Ganeti context).
Currently only the IP address is accessible. Another patch will add a...

7cb2d205 09/28/2011 01:15 pm Michael Hanselmann

http.client: Add nice name to requests

With this change a node name instead of the IP address can be shown for
pending RPC requests:
Name Pending
rpc/node18.example.com/test_delay thread:Jq1/Job692/TEST_DELAY

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

ecd61b4e 09/28/2011 01:06 pm Michael Hanselmann

http.client: Factorize code interacting with cURL

This simplifies HttpClientPool.ProcessRequests significantly and will be
handy for showing pending RPC requests in the lock monitor.

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

835f8b23 09/28/2011 12:13 pm Iustin Pop

Redistribute the RAPI certificate

This reverts to the old behaviour in Ganeti 2.4 and before.

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

6567f1d9 09/27/2011 04:32 pm Agata Murawska

Adding qemu-img dependency to INSTALL

Signed-off-by: Agata Murawska <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

a3c10d31 09/27/2011 02:47 pm Michael Hanselmann

http.client: Reduce performance impact by assertion

Call dict.values once instead of N times.

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

00267bfe 09/27/2011 02:47 pm Michael Hanselmann

rpc: Overhaul client structure

- Clearly separate node name to IP address resolution into separate
functions
- Simplified code structure (one code path instead of several)
- Fully unittested
- Preparation for more RPC improvements

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

30474135 09/27/2011 02:47 pm Michael Hanselmann

rpc: Make compression function module-global

No need to keep it in the class.

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

87b3cb26 09/27/2011 02:47 pm Michael Hanselmann

Keep only one global RPC runner in Ganeti context

Instead of having one RPC runner per mcpu processor this will keep only
one instance as part of the masterd-wide Ganeti context. Upcoming
patches will change the RPC runner to report pending requests to the...

daa4dcc1 09/26/2011 06:04 pm Agata Murawska

Update INSTALL with ovfconverter requirements

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

0c1a5b1e 09/26/2011 05:33 pm Agata Murawska

TemporaryFilesManager implementation

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

d92518d3 09/26/2011 05:10 pm Agata Murawska

Export: unittests

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

54f834df 09/26/2011 05:10 pm Agata Murawska

Export: documentation

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

7432d332 09/26/2011 05:10 pm Agata Murawska

Export: saving data to ovf file

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

b179ce72 09/26/2011 05:10 pm Agata Murawska

Export: parsing data from config file

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

0963b26a 09/26/2011 05:10 pm Agata Murawska

Export: initial commit - manifest, ova creation etc

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

1e6fab60 09/26/2011 05:10 pm Agata Murawska

Import: unittests

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

7bde29b5 09/26/2011 05:10 pm Agata Murawska

Import: backend, hypervisor and os

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

24b9469d 09/26/2011 05:09 pm Agata Murawska

Import: networks

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

99381e3b 09/26/2011 05:09 pm Agata Murawska

Import: disk conversion

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

864cf6bf 09/26/2011 05:09 pm Agata Murawska

Import: reading ovf file

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

ced78a66 09/26/2011 05:09 pm Agata Murawska

Initial commit for ovfconverter tool

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>

0805519a 09/26/2011 03:13 pm Iustin Pop

doc: glossary improvements

These will be used to remove some inline definitions and replace them
with :term:`foo`.

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

e3c39cc3 09/26/2011 03:13 pm Iustin Pop

doc: re-wrap design-oob to 72 chars

I started with just adding some :term:`SoW` and similar to design-oob,
but then I realised this was 80-chars wrapped, not 72-chars. So I went
and re-wrapped most of it, plus adding the glossary references.

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

1b225415 09/26/2011 03:13 pm Iustin Pop

doc: sphinx config file changes

I wanted to just enable another extension (the graphviz one), but then
I went and did a lot of changes:

- replaced ' with " for consistency with our style guide
- imported new settings (commented out) that current python-sphinx...

b76fd1bc 09/26/2011 01:06 pm Michael Hanselmann

serializer: Add comment about simplejson vs. built-in json

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

cdeda3b6 09/26/2011 12:35 pm Michael Hanselmann

Revert "Fail if dictionary uses invalid keys" and "Support newer “json” module"

This reverts commit fd0351aef246f5d36e641209429e2ec093d325f8 and
9869e771704ada62bab001e729c52a36525ef081. The built-in module is a lot
slower in Python 2.6.

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

fd0351ae 09/23/2011 05:39 pm Michael Hanselmann

serializer: Fail if dictionary uses invalid keys

JSON only supports a very restricted set of types for dictionary keys,
among them strings, booleans and “null”. Integers and floats are
converted to strings. Since this can cause a lot of confusion in Python,...

9869e771 09/23/2011 05:39 pm Michael Hanselmann

serializer: Support newer “json” module

This module is included from Python 2.6 and is based on
simplejson.

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

acd9fa11 09/23/2011 02:04 pm Iustin Pop

htools: man page improvements

This patch moves all the backend options into the main htools man
page, and it adds documentation for the -t option, which so far was
not documented w.r.t. the file structure.

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

2ef8013f 09/23/2011 02:04 pm Iustin Pop

hspace: add short forms for the group policy

This adds a shortened versions of the allocation policies, as writing
out the whole name in the command line can become tedious.

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

1d8a7812 09/23/2011 11:57 am Andrea Spadaccini

Fix interaction between CPU pinning and KVM migration

CPU pinning requires the KVM hypervisor to start in the paused state, in
order to retrieve information, and immediately unpauses it.

This does not play well with live migration, as the unpausing was done...

a7418448 09/22/2011 02:31 pm Michael Hanselmann

QA: Add tests for instance start/stop via RAPI

This would have detected the issue fixed in the previous patch.

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

d71369d7 09/22/2011 02:31 pm Michael Hanselmann

RAPI: Fix wrong check on instance shutdown

Commit 7fa310f6d84 (April 1st, 2011) converted the RAPI resource for
shutting down an instance to FillOpCode. Unfortunately it missed the
fact that the shutdown resource gets its parameters as query arguments.

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

fa411651 09/22/2011 02:31 pm Michael Hanselmann

baserlib: Accept empty body in FillOpcode

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>
(cherry picked from commit c6e1a3eef05674d637570c39f25a799cec7ba187)

Signed-off-by: Michael Hanselmann <>

1c7c4578 09/22/2011 12:44 pm Iustin Pop

htools: add a MonadPlus instance for Result

This will be used to implement more easily 'choice' parsing of input
data, without resorting to syntax (case … of Bad _ -> …).

Signed-off-by: Iustin Pop <>
Reviewed-by: Agata Murawska <>

5916e61a 09/20/2011 06:50 pm Andrea Spadaccini

Merge branch 'devel-2.5'

  • devel-2.5:
    Add tls_ciphers and use_vdagent options
    Updated man pages with new SPICE TLS options
    Implementation of TLS-protected SPICE connections
    Added SPICE TLS option and related cert paths
    Fix OS creation's error handling when pausing sync...
42d4d8b9 09/20/2011 06:17 pm Michael Hanselmann

RAPI: Add resource to powercycle node

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

3e40b587 09/20/2011 06:03 pm Andrea Spadaccini

Add tls_ciphers and use_vdagent options

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

bfe86c76 09/20/2011 05:04 pm Andrea Spadaccini

Added SPICE TLS option and related cert paths

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

b6267745 09/20/2011 05:04 pm Andrea Spadaccini

Implementation of TLS-protected SPICE connections

Added support for TLS-protected SPICE connections:

client/gnt_cluster.py, cli.py:
  • added three new parameters to renew-crypto (--new-spice-certificate,
    --spice-certificate, --spice-ca-certificate) and their validation....
b8a10435 09/20/2011 05:04 pm Andrea Spadaccini

Updated man pages with new SPICE TLS options

man/gnt-cluster.rst:
  • documented the --new-spice-certificate, --spice-certificate and
    --spice-ca-certificate options of renew-crypto.
man/gnt-instance.rst:
  • documented the spice_use_tls KVM hypervisor option....
fac30cea 09/20/2011 04:35 pm Faidon Liambotis

Fix OS creation's error handling when pausing sync

Commit 41e1e79 introduced a feature in which when wait_for_sync is not
set, DRBD sync is paused during the OS installation.

Doing so, however, broke OS creation's error handling: the result value
from the instance_os_add RPC call was overwritten by the one of the...

471a31b6 09/20/2011 03:23 pm Andrea Spadaccini

Fix two pylint errors

- hv_kvm.py: silence F0401, that is raised if pylint does not find the
affinity module
- rlib2.py: change disable-msg to disable

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

c03fe62b 09/19/2011 05:05 pm Andrea Spadaccini

Fix backend.MigrateInstance docs

The MigrateInstance function does not return anything, so the relevant
lines are removed from the documentation. Instead, the raised exception
is documented.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: René Nussbaumer <>

c607b1f7 09/16/2011 05:54 pm Tsachy Shacham

hv_kvm: bugfix

Signed-off-by: Tsachy Shacham <>
Signed-off-by: René Nussbaumer <>
Reviewed-by: René Nussbaumer <>

97c60815 09/16/2011 03:07 pm Agata Murawska

Import: further doc updates

Signed-off-by: Agata Murawska <>
Signed-off-by: René Nussbaumer <>
Reviewed-by: René Nussbaumer <>

a52978c7 09/16/2011 10:44 am Michael Hanselmann

RAPI: Add resource to recreate instance's disks

This was still missing from RAPI.

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

23f0b93e 09/16/2011 10:18 am René Nussbaumer

Adding an updated design doc for the caching mechanism

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

b693125f 09/15/2011 06:58 pm Tsachy Shacham

hv_kvm: support for CPU pinning

Signed-off-by: Tsachy Shacham <>
Signed-off-by: Iustin Pop <>
[: fixed some small code and style issues]
Reviewed-by: Iustin Pop <>

714e7fbb 09/15/2011 06:58 pm Tsachy Shacham

hv_kvm: fix hardcoded KVM command string

Signed-off-by: Tsachy Shacham <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

5b43cc23 09/15/2011 06:58 pm Tsachy Shacham

hv_xen: fix use of CPU pinning constants

… to be consistent with hv_kvm

Signed-off-by: Tsachy Shacham <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

bf5681c0 09/15/2011 06:06 pm Tsachy Shacham

constants: support for CPU pinning under KVM

Signed-off-by: Tsachy Shacham <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

e4f4896b 09/15/2011 04:40 pm Guido Trotter

Merge branch 'devel-2.5'

  • devel-2.5: (33 commits)
    htools: remove dead code
    hail: don't select the primary as new secondary
    hail: add an extra safety check in relocate
    Fix RAPI documentation for gnt-instance console
    Add SPICE compression and streaming options...
4f6396fd 09/15/2011 02:38 pm Iustin Pop

Make affinity module optional

This was overlooked in the review, sorry.

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

0cd2fe76 09/15/2011 12:04 pm Tsachy Shacham

configure.ac: changes for CPU pinning

Also added optional affinity Python package for CPU pinning under KVM
to the INSTALL doc.

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

8497c267 09/14/2011 06:29 pm Michael Hanselmann

docs unittest: Add verification of opcodes covered by RAPI

All opcodes which are not yet covered or can't with the current design
(e.g. cluster initialization) are excluded. This test is added to the
docs unittest since here the code already has access to a list of all...

1315b792 09/14/2011 06:29 pm Michael Hanselmann

docs unittest: Split into two separate test cases

The RAPI and hooks documentation aren't related at all.

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

bf317058 09/14/2011 06:29 pm Michael Hanselmann

docs unittest: Make _ReadDocFile a global function

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

f6ce0ba2 09/14/2011 06:29 pm Michael Hanselmann

rlib2: Declare all opcodes and equivalents

By declaring all used opcodes or opcodes equivalent to the operations
executed in a resource we will be able to ensure all opcodes are covered
by RAPI (with some exceptions).

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

b8ab1c7f 09/14/2011 06:29 pm Michael Hanselmann

baserlib: Function to retrieve opcodes used by handler

This will be used to verify opcodes used by RAPI.

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

6804faa0 09/14/2011 05:42 pm Iustin Pop

htools: remove dead code

The tryEvac/evacuateInstance functions are no longer used in the new
multi-group world order, so we remove them and change the unit-test to
test the actual IAllocator function.

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

7073b3a8 09/14/2011 05:42 pm Iustin Pop

hail: don't select the primary as new secondary

This just adds the primary node of the instance as 'non-allocable'
during the choosing of the new secondary.

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

f25508be 09/14/2011 05:42 pm Iustin Pop

hail: add an extra safety check in relocate

If we select the primary as new secondary, better to fail than return
wrong data to Ganeti.

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

6f4a2e9d 09/13/2011 04:18 pm Andrea Spadaccini

Fix RAPI documentation for gnt-instance console

Fix a failing pyassert in the RAPI docs and update it to reflect the
addition of SPICE to gnt-instance console.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

ea064d24 09/13/2011 03:35 pm Andrea Spadaccini

Add SPICE compression and streaming options

Add the following SPICE audio/image compression and video streaming
detection hypervisor options:

  • spice_image_compression
  • spice_jpeg_wan_compression
  • spice_zlib_glz_wan_compression
  • spice_streaming_video...
4d2cdb5a 09/13/2011 03:29 pm Andrea Spadaccini

Add SPICE support to gnt-instance console

Also update related unit tests.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>