Statistics
| Branch: | Tag: | Revision:

root / lib @ 5d0566de

# Date Author Comment
5d0566de 02/07/2012 01:52 pm Iustin Pop

Accept both PUT and POST in noded

This is a partial cherry-pick from
7530364ddbe949bc34fc26f25ba3f5d921beb021 on master:

Currently, noded requires PUT, even though the semantics of the RPC
calls do not match a PUT. We change the code accept both PUT and POST,...

dd9b9d7b 02/01/2012 10:25 am Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    Fix type check for OpQuery.filter
    Fix explanation of gnt-node evacuate --primaries-only
    Makefile.am: fix permissions for Python scripts on install
    devel/upload: Fix permissions for installed directories...
545d0362 01/31/2012 02:32 pm Michael Hanselmann

Fix type check for OpQuery.filter

Just using ht.TListOf as a type check doesn't work correctly. The
function must be called with the expected item type. In this specific
case TListOf was always called with the filter as a value, and the
result of that call evaluated to truth. Since filters can be quite...

f1dff7ec 01/26/2012 08:31 pm Iustin Pop

Fix explanation of gnt-node evacuate --primaries-only

Furthermore, correct the --help display on evacuate.

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

2c2f257d 01/25/2012 08:23 pm Michael Hanselmann

Fix cluster verification issues on multi-group clusters

This patch attempts to fix a number of issues with “gnt-cluster verify”
in presence of multiple node groups and DRBD8 instances split over nodes
in more than one group.

- Look up instances in a group only by their primary node (otherwise...

72dc3fb3 01/20/2012 07:34 pm Guido Trotter

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    Migrate: don't check for free memory on cleanup

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

6b826dfa 01/20/2012 06:24 pm Guido Trotter

Migrate: don't check for free memory on cleanup

Cleanup just updates the config with the correct location of the
instance, or informs of its down status, but never starts it. As such
there's no point in checking for enough free memory. Actually this check...

bf5338b3 01/19/2012 06:43 pm Michael Hanselmann

Revert "cli: Disable abbreviation matching for options"

This reverts commit 232aab3f4f602a19f1226e85c3a3ecb245d60af4. We
shouldn't change the parsing of command line options in the middle of
the 2.5.x series.

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

ecabe27e 01/19/2012 02:42 pm Nikos Skalkotos

Fix a bug in command line option parsing code

Fix bug affecting command line options of "keyval" type. Although
escaping commands with \ is supported, it is is not applied to the
input recursively.

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

232aab3f 01/18/2012 08:42 pm Michael Hanselmann

cli: Disable abbreviation matching for options

Python's “optparse” module does option name prefix matching by default.
Since this can lead to confusing behaviour, e.g. by specifying “--force”
for a command which only has a “--force-multi” option, this patch...

a41fd46e 01/09/2012 06:16 pm Michael Hanselmann

Merge branch 'devel-2.4' into stable-2.5

  • devel-2.4:
    Add UnescapeAndSplit unittest for multi-escapes
    Fix a bug in command line option parsing code
    ConfigWriter: Fix epydoc error
    LUGroupAssignNodes: Fix node membership corruption
    Ensure unused ports return to the free port pool...
c52d91e6 01/06/2012 01:24 pm Guido Trotter

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    KVM: support version reported by 1.0

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

585c8187 01/06/2012 12:27 pm Guido Trotter

KVM: support version reported by 1.0

This of course was working for all the rcs, but broke with 1.0 itself.

In addition:
- split between running kvm --version and parsing its output
- unittest parsing for various known --help outputs
- updated NEWS file...

4f44e311 12/22/2011 06:41 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    jqueue: Fix epylint errors introduced in 37d76f1e4
    jqueue: Fix deadlock between job queue and dependency manager

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

df5a5730 12/22/2011 03:19 pm Michael Hanselmann

jqueue: Factorize checking job processor's result

This allows for more unittesting.

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

1316ebc2 12/21/2011 06:04 pm Michael Hanselmann

jqueue: Fix epylint errors introduced in 37d76f1e4

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

37d76f1e 12/21/2011 04:35 pm Michael Hanselmann

jqueue: Fix deadlock between job queue and dependency manager

When an opcode is about to be processed its dependencies are
evaluated using “_JobDependencyManager.CheckAndRegister”. Due
to its nature that function requires a lock on the manager's
internal structures. All of this happens while the job queue...

20699809 12/19/2011 05:37 pm Michael Hanselmann

locking: Add “__repr__” to SharedLock and PipeCondition

These help when debugging.

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

4958b41e 12/08/2011 06:21 pm Michael Hanselmann

daemon.GenericMain: Don't generate backtrace on conflicting daemons

Instead, print a nicer error message. This should fix issue 200.

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

b6522276 12/08/2011 06:21 pm Michael Hanselmann

utils.io.WritePidFile: Improve error reporting

If the PID file is already locked by another process, try to read
the content and report it as part of the error message.

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

2dbc6857 12/08/2011 12:42 pm Michael Hanselmann

utils.ListVisibleFiles: Hide “lost+found” directories

If a “lost+found” directory is found at a filesystem's root path it is
ignored. In all other cases directory entries named “lost+found” are
treated normally. Unittests are included. Fixes issue 153.

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

997f690f 11/30/2011 11:37 am Nikos Skalkotos

Fix a bug in command line option parsing code

Fix bug affecting command line options of "keyval" type. Although
escaping commands with \ is supported, it is is not applied to the
input recursively.

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

1df43aa3 11/24/2011 02:22 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    ConfigWriter: Fix epydoc error

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

1d4930b9 11/24/2011 02:11 pm Michael Hanselmann

ConfigWriter: Fix epydoc error

The parameter is called “mods”, not “modes”.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Andrea Spadaccini <>
(cherry picked from commit 1730d4a1ab56ef36d082b614d3d0ab13f3e14a85)

1730d4a1 11/24/2011 02:07 pm Michael Hanselmann

ConfigWriter: Fix epydoc error

The parameter is called “mods”, not “modes”.

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

2b9245ff 11/24/2011 11:04 am Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    LUGroupAssignNodes: Fix node membership corruption
    Fix pylint warning on unreachable code
    LUNodeEvacuate: Disallow migrating all instances at once
    LUNodeEvacuate: Locking fixes
    Fix error when removing node...
54c31fd3 11/24/2011 10:39 am Michael Hanselmann

LUGroupAssignNodes: Fix node membership corruption

Note: This bug only manifests itself in Ganeti 2.5, but since the
problematic code also exists in 2.4, I decided to fix it there.

If a node was assigned to a new group using “gnt-group assign-nodes” the...

218f4c3d 11/24/2011 10:32 am Michael Hanselmann

LUGroupAssignNodes: Fix node membership corruption

Note: This bug only manifests itself in Ganeti 2.5, but since the
problematic code also exists in 2.4, I decided to fix it there.

If a node was assigned to a new group using “gnt-group assign-nodes” the...

9c4f4dd6 11/24/2011 10:32 am Michael Hanselmann

Fix pylint warning on unreachable code

Commit c50452c3186 added an exception when all instances should be
evacuated off a node, but did so in a way which made pylint complain
about unreachable code.

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

c50452c3 11/23/2011 03:25 pm Michael Hanselmann

LUNodeEvacuate: Disallow migrating all instances at once

There is a design issue in the iallocator interface which prevents us
from doing this.

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

cb92e7a1 11/23/2011 03:03 pm Michael Hanselmann

Separate OpNodeEvacuate.mode from iallocator

Until now the iallocator constants for node evacuation
(IALLOCATOR_NEVAC_*) were also used for the opcode. However, it turned
out this was due to a misunderstanding and is incorrect. This patch adds
new constants (with the same values) and changes the affected places....

50722bfd 11/23/2011 03:03 pm Michael Hanselmann

LUNodeEvacuate: Locking fixes

When evacuating a node, only an assertion without informative text was
used to check if the necessary node locks had been acquired. This was on
top of evaluating the list of nodes without having a node group lock, so
this was changed as well....

d05326fc 11/23/2011 11:51 am Michael Hanselmann

Fix error when removing node

ConfigWriter.GetAllInstancesInfo returns a dictionary, not a list.
Removing a node would fail with “too many values to unpack”.

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

0c1441eb 11/18/2011 12:41 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    htools: rework message display construction
    hbal: handle empty node groups
    Document OpNodeMigrate's result for RAPI
    Fail if node/group evacuation can't evacuate instances
    LUInstanceRename: Compare name with name...
05c2e624 11/18/2011 12:05 pm Michael Hanselmann

Merge branch 'devel-2.4' into devel-2.5

  • devel-2.4:
    Ensure unused ports return to the free port pool
    Re-wrap a paragraph to eliminate a sphinx warning

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

ac2c8bc0 11/17/2011 03:31 pm Michael Hanselmann

LUInstanceCreate: Release unused node locks

After iallocator ran we can release any unused node locks. Since they
must be in exclusive mode this should improve parallelization during
instance creation.

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

65c9591c 11/15/2011 08:13 am Michael Hanselmann

Document OpNodeMigrate's result for RAPI

- Commit b7a1c8161 changed the LU to generate jobs
- Mention documented results in NEWS

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

f396ad8c 11/14/2011 11:03 am Vangelis Koukis

Ensure unused ports return to the free port pool

Ensure ports previously allocated by calling ConfigWriter's AllocatePort() are
returned to the pool of free ports when no longer needed:

  • Return the network_port of an instance when it is removed
  • Return the port used by a DRBD-based disk when it is removed...
1dd64393 11/10/2011 03:50 pm Guido Trotter

Fix newer pylint's E0611 error in compat.py

These are triggered by our "stay-compatible" approach.

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

d755483c 11/08/2011 04:06 pm Michael Hanselmann

Fail if node/group evacuation can't evacuate instances

If an instance can't be evacuated, only a message would be printed. With
this change the operation always aborts. Newly added unittests check for
this behaviour.

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

fb2865ae 11/04/2011 11:19 am Michael Hanselmann

LUInstanceRename: Compare name with name

… instead of object with name.

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

cdde200a 11/04/2011 08:08 am Michael Hanselmann

LUClusterRepairDiskSizes: Acquire instance locks in exclusive mode

Instances are modified if their disk size doesn't match.

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

eb5ac108 11/03/2011 06:23 pm Michael Hanselmann

Update synopsis for “gnt-cluster repair-disk-sizes”

Mention that instances can be passed on the CLI when “--help” is used.

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

fe5ca2bb 11/02/2011 12:46 pm Andrea Spadaccini

Move hooks PATH environment variable to constants

Move the contents of the PATH environment variable for hooks to
constants, and use its value in the code and in the hooks documentation.

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

2a6de57a 11/01/2011 09:21 pm Andrea Spadaccini

Check the results of master IP RPCs

A failed gnt-cluster (de)activate-master-ip would not produce any output
to the user. This patch adds code that checks for the results of the
RPCs and raise an exception if appropriate.

Signed-off-by: Andrea Spadaccini <>...

28aedbc1 11/01/2011 09:09 pm Andrea Spadaccini

Add master IP turnup and turndown hooks

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

20d38e8a 11/01/2011 09:09 pm Andrea Spadaccini

Add RunLocalHooks decorator

Add the RunLocalHooks decorator, that allows the execution of hooks
locally. Also, add a RunLocalHooks method to HooksRunner, to adapt the
signature of HooksRunner.RunHooks to the one expected by HooksMaster,
and also to check that the hooks are being executed locally....

da124e89 11/01/2011 09:07 pm Andrea Spadaccini

Generalize HooksMaster

- remove any dependence on Logical Units from the HooksMaster;
- add a new function parameter to the constructor, a function that is
expected to convert the results of the hooks execution in a format
understood by the HooksMaster;...

719f8fba 10/27/2011 04:26 pm Michael Hanselmann

jqueue: Allow zero jobs to be submitted at once

If cmdlib.LUNodeMigrate was called for a node without primary instances
it would try to submit an empty list of jobs. This was never visible via
CLI as there we check the list of primary instances first.

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

9c2b3a70 10/26/2011 11:42 am René Nussbaumer

Move RenameFile to the new functions

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

b81b3c96 10/26/2011 11:42 am René Nussbaumer

ensure_dirs: Move some useful functions into utils.

With this change we can easily reuse this functionality where it makes
sense on other parts of Ganeti.

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

af5af644 10/25/2011 05:05 pm Andrea Spadaccini

Use JoinDisjointDicts in mcpu

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

cdf71b12 10/25/2011 05:05 pm Andrea Spadaccini

Add the JoinDisjointDicts function to utils.algo

Add a function that joins two dictionaries, enforcing the constraint
that the two key sets should be disjoint. Also, add unit tests for this
function.

Signed-off-by: Andrea Spadaccini <>...

97298dc9 10/21/2011 04:16 pm René Nussbaumer

Merge branch 'stable-2.5' into devel-2.5

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

833391a0 10/21/2011 04:00 pm René Nussbaumer

Merge branch 'devel-2.4' into stable-2.5

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

8e5a705d 10/20/2011 03:43 pm René Nussbaumer

Fix queue archive creation with wrong permissions

On a master failover some of the archive dirs might have wrong
permissions in the non-root model. This is due to the nature of noded
still running as root and the job queue is synced that way. This patch
will fix this behaviour by setting the permissions accordingly....

0ad1ea40 10/20/2011 03:04 pm Guido Trotter

Allow per-hypervisor optional files

Rather than just allowing files for all nodes to be optional, we allow
optional files to be per-category. The way this works is that they must
be included in both lists (the new code checks for this).

The code also removes a duplicate assert (present both in verify and...

69ab2e12 10/20/2011 03:04 pm Guido Trotter

Add hypervisors ancillary files list

These lists will be used to declare some of the files not necessarily
needed on all nodes. The files selected are files without which the
various hypervisors can still work, but that when they are present
should be synchronized across the cluster (or node group)....

22d568c2 10/20/2011 03:04 pm Guido Trotter

xen: abstract a few hardcoded strings as constants

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

69f78cf7 10/19/2011 05:52 pm René Nussbaumer

Ensure permission on the job queue version file

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

6973587f 10/19/2011 12:47 pm Michael Hanselmann

OpGroupVerifyDisks: Fix wrong result type declaration

If an instance had actually a missing disk, the type check would fail.

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

0b58db81 10/18/2011 06:29 pm Michael Hanselmann

RAPI: Make node evacuation actually work

Commit e1f23243 changed te LU and opcode for node evacuation to receive
a “mode” parameter (among other things). Commit de40437a changed the
RAPI code accordingly, but did so for an earlier version of the first
patch. Obviously this couldn't work, so here's the fix....

e366273a 10/18/2011 06:05 pm Guido Trotter

Revert "rapi.client.ModifyNode should PUT rather than POST"

This was a mistake on my side because ModifyGroup and ModifyInstance
were PUT, and I was not aware of the discussion and the rationale why
this one had to be POST.

This reverts commit 55ef0cf6497c570aaab9413851435a7ee744222e....

9849cec7 10/18/2011 05:21 pm Guido Trotter

Revert "Added SPICE TLS option and related cert paths"

This reverts commit bfe86c763a9ff1b481d799537ff0f0cf6740dfd1.
This commit will be readded on master.

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

0aee8ee9 10/18/2011 05:21 pm Guido Trotter

Revert "Implementation of TLS-protected SPICE connections"

This reverts commit b6267745ede04b3c943bc02e004bdb9347e0f564.
This commit will be readded on master.

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

53328375 10/18/2011 05:21 pm Guido Trotter

Revert "Add tls_ciphers and use_vdagent options"

This reverts commit 3e40b5879fa0070d6dd0e689dcfc31f20198a5a8.
This commit will be readded on master.

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

55ef0cf6 10/18/2011 03:56 pm Guido Trotter

rapi.client.ModifyNode should PUT rather than POST

This was caught (albeit in a sibylline manner) by unittests on master
which are not present in 2.5.

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

370f2042 10/18/2011 01:45 pm Guido Trotter

Fix RAPI node modify client and server calls

rapi.client.ModifyNode accepts a "group" and not a "node" param.
(this bug is invisible but still not nice)

rlib2.R_2_nodes_name_modify submits the opcode with instance_name rather
than node_name as a param. This would break the call....

6555373d 10/17/2011 06:39 pm Guido Trotter

xen: changes to facilitate "xl" support (xen 4.1)

- Copy the xl config file, in case there's any
- Start instances by config file, not name (also xm compatible)
- Start paused domains with p and not --paused (also xm compatible)
Add a fixme for migration (changes are not xm compatible)...

c2be2532 10/17/2011 06:39 pm Guido Trotter

xen: abstract instance config file naming

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

2876c2d6 10/17/2011 06:39 pm Guido Trotter

Abstract xen's 'xm' command as a constant

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

539d65ba 10/17/2011 04:58 pm Michael Hanselmann

RAPI: Fix resource for replacing disks

Commit d1c172deb4f inadvertently changes the
“/2/instances/[instance_name]/replace-disks” resource to use body
parameters. There were no QA tests and the issue wasn't noticed.

This patch re-introduces support for query parameters and adds a QA...

8de8e68d 10/13/2011 05:40 pm Michael Hanselmann

rapi: Allow auto-promotion on node role change

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

94497dd1 10/13/2011 05:40 pm Michael Hanselmann

rapi: Add resource for modifying node

A separate patch will add “auto-promote” through
“/2/nodes/[node_name]/role”.

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

b3d2ee31 10/13/2011 05:40 pm Michael Hanselmann

opcodes: Add comment to *SetParams result description

Explicitely say that the second element of the tuple is the new value.

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

5b0ac1a5 10/12/2011 02:35 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    rpc: Disable HTTP client pool and reduce memory consumption
    hail: Fix result for node evacuation
    Fix assertion error on unclean master shutdown

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

58f6738c 10/12/2011 02:01 pm Michael Hanselmann

Merge branch 'devel-2.4' into stable-2.5

  • devel-2.4:
    rpc: Disable HTTP client pool and reduce memory consumption
    Fix assertion error on unclean master shutdown

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

05927995 10/12/2011 01:56 pm Michael Hanselmann

rpc: Disable HTTP client pool and reduce memory consumption

We noticed that “ganeti-masterd” can use large amounts of memory,
especially on large clusters. Measurements showed a single PycURL client
using about 500 kB of heap memory (the actual usage depends on versions,...

a080bab8 10/04/2011 09:32 pm Andrea Spadaccini

Merge branch 'stable-2.5' into devel-2.5

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

170b02b7 10/04/2011 11:33 am Michael Hanselmann

Fix issue when verifying cluster files

If a cluster has any non-master-candidate nodes, those don't contain all
files (e.g. config.data). With commit aef59ae764dc (March 31st, 2011)
the logic was changed and subsequently verifying a cluster with non-mc
nodes would complain....

d728ac75 10/03/2011 01:52 pm Michael Hanselmann

Revert "utils.log: Write error messages to stderr"

This reverts commit 34aa8b7c4bb6f5e2e788108e024c9cd70bdb3431. Writing
error messages to stderr would also include backtraces, something we
tried to avoid in the past.

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

ca6b16e5 10/03/2011 01:52 pm Michael Hanselmann

Fix adding nodes after commit 64c7b3831dc

Commit 64c7b3831dc changed the RPC call for verifying SSH connections.
Unfortunately this case in adding nodes was missed.

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

64c7b383 09/30/2011 07:04 pm Michael Hanselmann

LUClusterVerifyGroup: Spread SSH checks over more nodes

When verifying a group the code would always check SSH to all nodes in
the same group, as well as the first node for every other group. On big
clusters this can cause issues since many nodes will try to connect to...

11705e3d 09/30/2011 06:47 pm Iustin Pop

Optimise cli.JobExecutor with many pending jobs

In the case we submit many pending jobs (> 100) to the masterd, the
JobExecutor 'spams' the master daemon with status requests for the
status of all the jobs, even though in the end it will only choose a
single job for polling....

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...
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...
9dc45ab1 09/30/2011 01:10 pm Michael Hanselmann

ssh: Quote strings in error message

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

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

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

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

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

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

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

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

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