Statistics
| Branch: | Tag: | Revision:

root @ a72d0a79

# Date Author Comment
a72d0a79 09/18/2009 01:53 pm Iustin Pop

Move the “--on-primary” option to cli.py

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

073271f6 09/18/2009 01:53 pm Iustin Pop

Unify the last “--hypervisor” (as list) option

This third form takes a list of name+options, and is used only in
gnt-cluster. Who knew that we have three forms of ‘-H’?

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

91e0748c 09/18/2009 01:53 pm Iustin Pop

Unify the “--no-ip-check” option

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

7d3a9fab 09/18/2009 01:53 pm Iustin Pop

Unify the “--net” option

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

e3876ccb 09/18/2009 01:53 pm Iustin Pop

Unify the “--disk” (identkeyval) option

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

4b038a1e 09/18/2009 01:53 pm Iustin Pop

Unify the “--disks” (disk indices) option

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

ff00c1a7 09/18/2009 01:53 pm Iustin Pop

Unify the “--os-size” option

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

82a786d5 09/18/2009 01:53 pm Iustin Pop

Unify the “--ignore-consistency” option

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

f2a0828c 09/18/2009 01:53 pm Iustin Pop

Unify the “--non-live” option

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

990b7886 09/18/2009 01:53 pm Iustin Pop

Unify the “--node” (as instance placement) option

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

7edc4637 09/18/2009 01:53 pm Iustin Pop

Unify the “--node” (as list of nodes) option

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

f36d7d81 09/18/2009 01:53 pm Iustin Pop

Unify the last “--node” (single node) option

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

edeb878a 09/18/2009 01:53 pm Iustin Pop

Move the “--no-start” option to cli.py

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

fdcf4d84 09/18/2009 01:53 pm Iustin Pop

Move the “--show-cmd” option to cli.py

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

baef337d 09/18/2009 01:53 pm Iustin Pop

Move the “--cleanup” option to cli.py

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

99a8c799 09/18/2009 01:53 pm Iustin Pop

Move the “--static” option to cli.py

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

2d5e7ae1 09/18/2009 01:53 pm Iustin Pop

Move the “--all” option to cli.py

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

67840b40 09/18/2009 01:53 pm Iustin Pop

Move the “--select-os” option to cli.py

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

b6e841a8 09/18/2009 01:53 pm Iustin Pop

Move the “--ignore-failures” option to cli.py

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

a14db5ff 09/18/2009 01:53 pm Iustin Pop

Unify the “--new-secondary” option

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

4f365444 09/18/2009 01:53 pm Iustin Pop

Unify the “--disk-template” option

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

26023ecd 09/18/2009 01:53 pm Iustin Pop

Unify the “--no-nics” option

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

4a25828c 09/18/2009 01:53 pm Iustin Pop

Unify the “--file-storage-dir” option

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

0f87c43e 09/18/2009 01:53 pm Iustin Pop

Unify the “--file-driver” option

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

4eb62659 09/18/2009 01:53 pm Iustin Pop

Unify the “--iallocator” option

This patch also changes the gnt-debug's “--algorithm” into
IALLOCATOR_OPT, since it was the only non-standard use of this (due to
historical reasons). Since it's just a debug option,
backwards-compatibility is not critical here....

d3ed23ff 09/18/2009 01:53 pm Iustin Pop

Unify the “--os-type” option

This was already unified inside gnt-instance, I just moved that
definition (and upper-cased it) into cli.py.

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

087ed2ed 09/18/2009 01:53 pm Iustin Pop

Unify the “--backend-parameters” option

This is not straight-forward. First, gnt-cluster had
“--backend-parameters” wheres the rest of the script had just
“--backend”. I settled on the full form, since one can always abbreviate
options, but not vice-versa....

48f212d7 09/18/2009 01:53 pm Iustin Pop

Unify the “--hypervisor” (params only) option

This unifies the two uses of --hypervisor-parameters with only options
(a=b,…) form. The patch changes a little SetInstanceParms since that
expected opts.hypervisor instead of opts.hvparams.

Note that there is another form of --hypervisor-parameters which also...

236fd9c4 09/18/2009 01:53 pm Iustin Pop

Unify the “--hypervisor” (with name) option

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

3f75b4f3 09/18/2009 01:53 pm Iustin Pop

Unify the “--no-wait-for-sync” option

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

1232284c 09/18/2009 11:06 am Guido Trotter

Explain the reason for fqdn hostnames

The install guide asks the user to use the fqdn in the hostname, but
doesn't explain why. This has been asked multiple times, so adding an
explanation there.

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

3cebe102 09/17/2009 06:53 pm Michael Hanselmann

Remove RpcResult.RemoteFailMsg completely

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

5ee09f03 09/17/2009 06:49 pm Michael Hanselmann

Add locking improvements to Ganeti 2.1 design document

Also increase the table of contents' depth to 4.

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

a0c9776a 09/17/2009 05:37 pm Iustin Pop

Add an error-simulation mode to cluster verify

One of the issues we have in ganeti is that it's very hard to test the
error-handling paths; QA and burnin only test the OK code-path, since
it's hard to simulate errors.

LUVerifyCluster is special amongst the LUs in the fact that a) it has a...

7c874ee1 09/17/2009 05:12 pm Iustin Pop

Introduce parseable error codes in LUVerifyCluster

Currently the output of cluster verify can be parsed for 'ERROR'
messages, but that is the only indication we get (error or no error). In
order to allow monitoring tools to separate different error conditions,...

9cdb9578 09/17/2009 05:12 pm Iustin Pop

Unify the multiple 'verbose' options

Currently multiple files define a 'verbose' option. This patch moves all
these definitions to a single VERBOSE_OPT option which is exported from
cli.py.

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

4abc4f1e 09/17/2009 05:11 pm Iustin Pop

Rewrite the lib/cli.py export list

Right now, the export list is a mess, it's not sorted, and the exported
items are in random places. This patches does grow the length of the
list, but at least it's more clear.

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

1f4e391b 09/16/2009 07:13 pm Michael Hanselmann

Show "--help" in bash completion

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

edb4b374 09/16/2009 07:13 pm Michael Hanselmann

Remove RpcResult.failed attribute

It's redundant with RpcResult.fail_msg. This change survived QA, burnin and
unittests.

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

efbb4fd2 09/16/2009 04:55 pm Luca Bigliardi

Confd: add primary IPs queries

Extend confd to answer queries about nodes primary IPs and master candidates
primary IPs.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Michael Hanselmann <>

e4ccf6cd 09/16/2009 03:55 pm Guido Trotter

Confd client library

Initial confd client library implementation. This initial version uses
asyncore, and supports answers via a callback.

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

e1081705 09/16/2009 03:55 pm Guido Trotter

ganeti-confd: remove partial imports

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

4f16b4a0 09/16/2009 03:55 pm Guido Trotter

ConfdAsyncUDPServer: handle signals at read time

Currently if a signal is delivered during an attempted read, an
exception is logged in the logfile. There is no need for this, so we
handle this case explicitely.

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

465b8ee3 09/16/2009 03:55 pm Guido Trotter

ConfdAsyncUDPServer: defer handling writes

Currently if we fail writing to the socket (perhaps because a signal was
delivered) we lose the data we were sending. Although this is not too
bad (it's udp, and data may get lost anyway) we try to avoid this by...

5f3269fc 09/16/2009 03:55 pm Guido Trotter

Abstract AsyncUDPSocket to daemon

This allows this extended asyncore+udp module to be used also in other
daemons, and in the confd client library

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

fe759e4c 09/16/2009 03:55 pm Guido Trotter

ConfdAsyncUDPServer: fix a docstring

It refers to an older input variable

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

c8eded0b 09/16/2009 03:55 pm Guido Trotter

AsyncUDPSocket: Move to a well defined UDP size

Currently we read maximum 4K packets, and don't check packets when
sending them. With this patch we move to a well defined maximum size of
60K.

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

a3758ab2 09/16/2009 03:55 pm Guido Trotter

Add a magic fourcc code to confd packets

This will make it easier to change the protocol later on

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

86488201 09/16/2009 03:55 pm Guido Trotter

ganeti-confd: explicitely log failed big sends

Make sure that if we try to send packages which are too big (which
shouldn't happen) this gets properly logged in the config file.

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

28a34a39 09/16/2009 03:55 pm Guido Trotter

Add unittests for confd constants

Checking that the fourcc code is indeed a fourcc code, and that request
codes and reply statuses are distinct.

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

9748ab35 09/16/2009 03:55 pm Guido Trotter

Move fourcc packing/unpacking to main confd module

This way it can be used by the client as well

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

7a0156dc 09/16/2009 03:47 pm Luca Bigliardi

Fix authorized_keys generation at cluster init

Copy pub_key in authorized_keys.

Signed-off-by: Luca Bigliardi <>
Reviewed-by: Michael Hanselmann <>

62947ebb 09/15/2009 03:17 pm Michael Hanselmann

Move developer notes into normal documentation

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

d25c1d6a 09/15/2009 02:19 pm Michael Hanselmann

jqueue: Remove unused run_op_index attribute

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

1d2dcdfd 09/15/2009 02:19 pm Michael Hanselmann

Export new lock_status field to gnt-job

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

ef2df7d3 09/15/2009 02:19 pm Michael Hanselmann

Keep lock status with every job

This can be useful for debugging locking problems.

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

031a3e57 09/15/2009 02:19 pm Michael Hanselmann

Move OpCode processor callbacks into separate class

There are two major arguments for this:
- There will be more callbacks (e.g. for lock debugging) and extending the
parameter list is a lot of work.
- In the jqueue module this allows us to keep per-job or per-opcode variables in...

f60759f7 09/14/2009 03:20 pm Iustin Pop

Replace last hardcoded 'nodelist' with NV_NODELIST

LUAddNode has this usage remaining, as it's the only other LU to use
call_node_verify (beside LUVerifyCluster).

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

33f2a81a 09/14/2009 03:20 pm Iustin Pop

Treat virtual LVs as inexistent

Currently, “gnt-cluster verify” and “gnt-cluster verify-disks” use the
list of LVs as returned by backend.GetVolumeList to determine whether an
LV exists or not. However, LVs can also be ‘virtual’, which is handled
correctly (i.e. as missing) by the bdev code, but not by this function....

9216a9f7 09/14/2009 02:21 pm Michael Hanselmann

locking: Acquire SharedLock in shared mode in separate function

This is for some more symetry with
SharedLock.__exclusive_acquire.

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

fe89794e 09/14/2009 02:17 pm Michael Hanselmann

RpcResult: Fix cases where “failed” wouldn't be set to True

This broke “gnt-instance replace-disks --auto” when the instance
is down.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Olivier Tharan <>

ea205dbc 09/14/2009 02:16 pm Michael Hanselmann

locking: Add level name dict

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Olivier Tharan <>

4d5fe81b 09/14/2009 01:31 pm Michael Hanselmann

Merge commit 'origin/next' into branch-2.1

  • commit 'origin/next':
    Fix gnt-node modify online help
    Fix gnt-job info entry in gnt-job(8)
    locking: Don't swallow exceptions
    Add check for duplicate MACs in instance add
    scripts/gnt-node: fix a help string...
4a511fd0 09/14/2009 01:15 pm Guido Trotter

Fix gnt-job info entry in gnt-job(8)

It currently reports "cancel" in its syntax, which is obviously a
cut&paste error.

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

b3fd544f 09/14/2009 01:15 pm Guido Trotter

Fix gnt-node modify online help

This completes what was began in commit
862b1b2b4c698cec8ad816793172fac9aa7f4cdf

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

470ce2ee 09/11/2009 06:29 pm Michael Hanselmann

locking: Don't swallow exceptions

This is an indentation bug.

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

b757f830 09/11/2009 05:34 pm Michael Hanselmann

check-python-code: Report EOL whitespace

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

eed5c5df 09/11/2009 05:33 pm Michael Hanselmann

Check for tabs and long lines in Python code

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

88258349 09/11/2009 05:33 pm Michael Hanselmann

.gitignore: Ignore distcheck directories

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

4d4a651d 09/11/2009 05:33 pm Michael Hanselmann

Wrap lines over 80 characters

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

aa053071 09/11/2009 05:33 pm Michael Hanselmann

cmdlib: Fix typo in variable name

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

01a3a718 09/11/2009 12:43 pm Michael Hanselmann

Makefile: Move lengthy variable list to separate variable

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

e948770c 09/10/2009 07:01 pm Michael Hanselmann

Move LoadModule function to ganeti.build

It should only be used at build-time.

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

f9897b6d 09/10/2009 07:01 pm Michael Hanselmann

Add new ganeti.build namespace

This will be used to store build-time Python code.

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

53a9ecb7 09/09/2009 04:50 pm Michael Hanselmann

upload: Use more compatible regular expression

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

640b961e 09/09/2009 12:46 pm Luca Bigliardi

mcpu: formatting/indenting fix

Small fix for a mistake done by bad editor settings.

Signed-off-by: Luca Bigliardi <>

87e43988 09/08/2009 06:22 pm Iustin Pop

Add check for duplicate MACs in instance add

Currently LUAddInstance doesn't check for duplicate MACs, and it fails
during the Exec() phase when trying to add the instance to the config
(ConfigWriter checks for this). This patch copies the code from
LUModifyInstance (which already does it)....

862b1b2b 09/07/2009 06:40 pm Guido Trotter

scripts/gnt-node: fix a help string

gnt-node modify says it wants an "<instance>". Changing it to
"<node_name>" as for the other commands.

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

009e73d0 09/07/2009 04:38 pm Iustin Pop

Optimise multi-job submit

Currently, on multi-job submits we simply iterate over the
single-job-submit function. This means we grab a new serial, write and
replicate (and wait for the remote nodes to ack) the serial file, and
only then create the job file; this is repeated N times, once for each...

9d95c3af 09/07/2009 03:43 pm Iustin Pop

Extend gnt-debug with more debugging options

This patch extends gnt-debug to be able to submit multiple copies of the
input jobs and job contents, in order to simplify testing. It also adds
a timing mode, and splits the execution into separate submit and...

2d3ed64b 09/04/2009 06:58 pm Michael Hanselmann

Add bash completion for --node node1[:node2]

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

5b0ca9d4 09/04/2009 06:58 pm Michael Hanselmann

Add more debugging to bash completion

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

36bf7973 09/04/2009 06:11 pm Michael Hanselmann

Add simple unittest for manpages

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

4b339d4c 09/04/2009 06:11 pm Michael Hanselmann

Fix small error in gnt-job manpage

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

9725b53d 09/04/2009 06:11 pm Michael Hanselmann

Add locking doc to Ganeti documentation

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

667161b4 09/04/2009 06:11 pm Michael Hanselmann

Add ipsec hook to .gitignore

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

016d04b3 09/03/2009 08:32 pm Michael Hanselmann

Even more style fixes

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

1e37ad45 09/03/2009 08:32 pm Michael Hanselmann

KVM hypervisor: Use ReadFile

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

d73ef63f 09/03/2009 06:45 pm Michael Hanselmann

A few style fixes

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

508e9b20 09/03/2009 06:45 pm Michael Hanselmann

Add RAPI resource to redistribute config

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

bf968b7f 09/03/2009 06:45 pm Michael Hanselmann

Add simple unittest for remote API docs

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

f72542cc 09/03/2009 06:45 pm Michael Hanselmann

rapi doc: Add …/nodes/[name] and …/instances/[name]/reinstall

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

3f991867 09/03/2009 06:44 pm Michael Hanselmann

Add simple unittest for hooks documentation

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

6c6b7f8a 09/03/2009 06:44 pm Michael Hanselmann

Update hooks documentation

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

d6f5892b 09/03/2009 06:44 pm Michael Hanselmann

Move LoadModule function to utils

It can be used by unittests for daemons/* or scripts/*.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

2a887df9 09/03/2009 06:44 pm Michael Hanselmann

utils.CalculateDirectorySize: Don't redefine builtin

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

13998ef2 09/03/2009 06:43 pm Michael Hanselmann

Use ReadFile/WriteFile in more places

This survived QA, burnin and unittests.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Luca Bigliardi <>

a2442bf9 09/02/2009 02:05 pm Luca Bigliardi

Makefile: add IPsec hook

Enable creation and dist for IPsec hook.

Signed-off-by: Luca Bigliardi <>

d1e95dde 09/02/2009 02:05 pm Luca Bigliardi

Example IPsec hook

This hook is a simple example which automatically configures a basic IPsec link
among all the nodes of a cluster.

Signed-off-by: Luca Bigliardi <>

28b498cd 08/31/2009 07:23 pm Michael Hanselmann

gnt-cluster watcher: Show more information

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