Statistics
| Branch: | Tag: | Revision:

root / lib @ 23e3c9b7

# Date Author Comment
23e3c9b7 10/25/2012 03:18 pm Michael Hanselmann

bdev: Add verification for file storage paths

An earlier version of this patch series verified all paths in cmdlib in
the master daemon. With this change all that verification code is moved
to bdev to run inside the node daemon. The checks are much stricter...

aebd0e4e 10/25/2012 03:16 pm Michael Hanselmann

jqueue: Factorize code to modify job

A new function will be added to change a job's priority.

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

552328b8 10/25/2012 03:16 pm Michael Hanselmann

cli: Use callback for --priority

If the option is used elsewhere, the numeric value is directly
available.

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

bb921668 10/25/2012 03:16 pm Michael Hanselmann

jqueue: Add docstring for _DetermineJobDirectories

Somehow this was missed in commit 0422250e.

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

42d49574 10/25/2012 03:16 pm Michael Hanselmann

jqueue: Fix comments in _SubmitJobUnlocked

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

c87440f5 10/25/2012 03:16 pm Michael Hanselmann

Drop SSHS_FORCE constant

It is not actually used.

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

b183c4a8 10/23/2012 07:09 pm Iustin Pop

Improve logging of AssertionErrors

Currently, when we have an assertion error raised from cmdlib, it looks like this:

[cluster] root@node4:~# gnt-instance grow-disk instance1 0 1G
Failure: command execution error:

This is very very confusing. This patch adds a bit of traceback...

1facaf11 10/23/2012 07:08 pm Michael Hanselmann

tools.prepare_node_join: Fix pep8 errors

Pep8 didn't agree with the indentation.

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

d12b9f66 10/23/2012 06:32 pm Michael Hanselmann

Add initial implementation of prepare-node-join

This is a new tool as per the design document “design-ssh-setup”. It
receives a JSON data structure on its standard input and configures the
SSH daemon and root's SSH keys accordingly. Unit tests are included....

8a3c9e8a 10/23/2012 03:59 pm Michael Hanselmann

ssh.GetUserFiles: RSA support, unit tests

This patch changes “ssh.GetUserFiles” to support two different kinds of
SSH keys, RSA and DSA. Before it would always use DSA. Newly written
unit tests are included.

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

48e175a2 10/19/2012 05:55 pm Iustin Pop

Update blockdev's "info" at instance rename

Currently, we set "info" metadata on block devices at device creation
time, but we never update it, leading to stale data in case of
instance renames. This would not be a big problem in case of regular
renames (assuming this is a rare operation), but importing instances...

a1556cfa 10/19/2012 05:55 pm Iustin Pop

LVM: remove old tags when adding new ones

This patch adds a small helper function to clear an LV's tags, and
calls it at SetInfo time. We need this to be able to correctly track
instance renames, once we will call SetInfo at such times.

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

e398546b 10/19/2012 05:55 pm Iustin Pop

Add a small bdev helper function

I wanted to write that snippet the third time, which is too much :)

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

0232b768 10/19/2012 02:43 pm Michael Hanselmann

Compare significant fields only for simple SSH keys

For simple SSH keys, that is those without options such as
“command="…"”, only the first two parts need to be compared. The third
field is a free-form comment.

This patch changes the comparison used in...

a4b247f0 10/18/2012 01:52 pm Michael Hanselmann

Merge branch 'devel-2.6'

  • devel-2.6:
    ensure-dirs: Don't accept arguments
    ensure-dirs: Fix program name on usage screen
    cli: Fix small typo

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

fca74633 10/18/2012 01:43 pm Michael Hanselmann

ensure-dirs: Don't accept arguments

Before they would just be silently ignored.

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

8d77ac10 10/18/2012 01:43 pm Michael Hanselmann

ensure-dirs: Fix program name on usage screen

No string replacements are used, so doubling of the percent sign is not
necessary.

Before: Usage: %ensure-dirs [--full-run]
After: Usage: ensure-dirs [--full-run]

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

659d769d 10/17/2012 07:45 pm Dato Simó

Merge branch 'devel-2.6' into master

  • devel-2.6:
    htools-excl.test: add test case for exclusion tags in hbal
    Instance.hs: rename 'tags' to 'exclTags', provide 'allTags'
    Group.hs: add 'allTags'; adjust loaders and test data for it
    Add hbal-excl-tags.data to Makefile.am, missed in 0397694...
90efd920 10/17/2012 06:44 pm Michael Hanselmann

cli: Fix small typo

s/it/if/

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

6b6e335b 10/17/2012 04:13 pm Dato Simó

Group.hs: add 'allTags'; adjust loaders and test data for it

This commit adds a Group.allTags field to store the tags of node groups,
and teaches each loader backend in HTools to populate it (additionally, the
IAllocator class in lib/cmdlib.py now includes tags for groups too). Test...

a7862455 10/17/2012 02:56 pm Iustin Pop

Remove support for PUT in noded

This takes care of a FIXME; 2.6 already uses the new method, so we're
good during upgrades.

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

5a7cb9d3 10/17/2012 02:12 pm Iustin Pop

Ignore empty/comment lines in OS variants file

Per a conversation on :

- gnt-os diagnose ; gnt-os list take in consideration blank lines in
/etc/ganeti/instance-image/variants.list that could be confusing.

Let's fix this and also let's ignore comment lines....

e1c701e7 10/17/2012 02:12 pm Michael Hanselmann

gnt-job cancel: Confirmation and selection of jobs

New parameters, “--pending”, “--queued” and “--waiting”, are added to
select all jobs in the respective state. If one of those options is used
and “--force” is not given, the user is asked to confirm the operation....

1eaddbc6 10/16/2012 06:05 pm Michael Hanselmann

Add new constant for pending job status

This constant contains the job status' “queued”, “waiting” and
“cancelled”.

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

11f53fdb 10/16/2012 05:43 pm Michael Hanselmann

Merge branch 'devel-2.6'

  • devel-2.6:
    ensure-dirs: Fix permissions on master socket
    Update security document for version 2.6
    Update NEWS and bump version to 2.6.1
    Text.hs: update field lists in parseData comments

Conflicts:
NEWS: Trivial
lib/tools/ensure_dirs.py: constant moved to pathutils...

48e3db76 10/16/2012 05:38 pm Michael Hanselmann

ensure-dirs: Fix permissions on master socket

A socket shouldn't have its executable bit set.

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

300e5450 10/12/2012 01:37 pm Michael Hanselmann

errors: Document arguments to QueryFilterParseError

Also fix one small mistake in the docstring for QuitGanetiException.

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

8bd977e9 10/11/2012 03:34 pm Sébastien Bocahu

Add support for cpu_cap and cpu_weight Xen params

This patch adds support for Xen's CPU scheduler 'cpu_cap' and
'cpu_weight' parameters.

Ganeti default values (cap: 0=unlimited, weight: 256) are Xen defaults.

cpu_cap is not validated correctly because of actual Ganeti limitation...

47130d50 10/11/2012 01:05 pm Michael Hanselmann

LUClusterVerifyGroup: Localize virtual file paths

The check for file consistency didn't properly handle virtual paths
in case of a virtual cluster. This didn't cause any breakage as in
a standard virtual cluster setup with only one node all files are
visible for every node....

9fbf0098 10/11/2012 01:03 pm Iustin Pop

Enable query socket usage in gnt-node/gnt-group

This switches gnt-node/gnt-group (and their equivalent RAPI resources)
to go over the query socket.

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

fe4f6dca 10/11/2012 12:56 pm Michael Hanselmann

vcluster: Don't virtualize /etc/hosts path

/etc/hosts is a bit special as it's a system-wide file and the virtual
cluster/node root doesn't apply. The modification of /etc/hosts should
be disabled in virtual clusters. If it isn't, however, the vcluster
functions would raise an exception complaining about a path outside of...

72043dac 10/11/2012 12:56 pm Michael Hanselmann

cli: Stop hardcoding /etc/hosts path

There is a constant for this purpose.

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

ee045466 10/11/2012 12:56 pm Michael Hanselmann

Move constant for /etc/hosts to pathutils

Needed for coming patches.

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

6a74f584 10/11/2012 12:38 pm Michael Hanselmann

Merge branch 'devel-2.6'

  • devel-2.6:
    verify-disks: Explicitely state nothing has to be done
    Add list of design documents implemented in version 2.6
    Better list of replace-disks arguments + typos fixed
    jqueue: Look at archived jobs when watching
    Show old primary/secondary node on disk replacement...
c44356fd 10/11/2012 12:24 pm Michael Hanselmann

Merge branch 'stable-2.6' into devel-2.6

  • stable-2.6:
    verify-disks: Explicitely state nothing has to be done
    Add list of design documents implemented in version 2.6
    Better list of replace-disks arguments + typos fixed
    jqueue: Look at archived jobs when watching...
43d51ef2 10/11/2012 12:23 pm Michael Hanselmann

gnt-job list: Add option to include archived jobs

This provides a convenience option to include archived jobs in the
output list. It's equivalent to using “-o +archived”, but tab completion
is nicer.

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

0422250e 10/11/2012 12:23 pm Michael Hanselmann

gnt-job: List archived jobs if requested

If requested via a filter or by including the “archived” output,
archived jobs will be loaded and shown. This is significantly slower
than just listing normal jobs, therefore by default they are not loaded
at all....

52aa1efa 10/11/2012 12:23 pm Michael Hanselmann

query: Report data type for unary operators

All data kinds (used to restrict the data collected) referenced in a
filter can be requested once it's been “compiled”. However, the kinds
of fields used in boolean expressions (e.g. ["?", "xyz"]) were not
recorded. This patch changes the code accordingly and provides a unit...

8a3cd185 10/11/2012 12:23 pm Michael Hanselmann

jqueue: Add new in-memory attribute for archived jobs

This attribute is set to True for jobs which were restored from an
archived file. A new filter will act on this field.

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

4c27b231 10/11/2012 12:23 pm Michael Hanselmann

jqueue: Correct docstring

The description was not accurate.

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

9b99be28 10/11/2012 12:15 pm Michael Hanselmann

verify-disks: Explicitely state nothing has to be done

Example output:
$ gnt-cluster verify-disks
Submitted jobs 4327
Waiting for job 4327 ...
No disks need to be activated.

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

1ca7b773 10/11/2012 12:11 pm Michael Hanselmann

Add basic unit tests for "gnt-cluster epo"

This patch adds some unit tests for “gnt-cluster epo”. Not everything is
covered, but at least the bug fixed in the previous patch is.

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

3008f56c 10/10/2012 03:37 pm Iustin Pop

Fix pylint breakage due to unused var in gnt_cluster

The usage of that variable was removed in 45a36f36, but accidentally
the enumerate() was left in.

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

45a36f36 10/10/2012 02:27 pm Michael Hanselmann

cluster epo: Fix bug where IndexError is raised

Updating the “node_query_list” variable would fail if no arguments were
passed and the “--all” option wasn't specified. A follow-up patch will
add unit tests.

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

39d1744a 10/09/2012 01:46 pm Iustin Pop

Fix usage of errors.ResolverError

This exception is documented to have three arguments, but in one case
we raise it with a simple string argument. Let's fix that.

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

012f9bc3 10/09/2012 11:16 am Iustin Pop

Remove unused/deprecated error classes

It seems a few of the error classes are no longer used:

- LVMError, deprecated in 8c5533a5 (before ganeti 1.2.2!)
- ConfdRequestError, deprecated in b0dcdc10
- SshKeyError, introduced in the initial open source commit but never used (⁈)...

b3589802 10/08/2012 02:39 pm Michael Hanselmann

backend: Use utils.IsBelowDir instead of local code

utils.IsBelowDir is actually tested and doesn't allow writes to
“…/queue*”, like the old code here did.

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

4fdedd09 10/08/2012 02:39 pm Michael Hanselmann

jstore: Nicer error message on non-numeric file content

An error like “invalid literal for int() with base 10” can be quite
confusing.

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

8a6dbce8 10/05/2012 11:34 pm Michael Hanselmann

bdev: Remove unnecessary empty line

My local pylint didn't complain.

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

50c1e351 10/05/2012 07:32 pm Bernardo Dal Seno

Better list of replace-disks arguments + typos fixed

The man page and the bultin-in help for gnt-instance replace-disks were
inconsistent. Also fixed some typos in man pages.

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

3439fd6b 10/05/2012 07:27 pm Michael Hanselmann

Check fingerprint of file with allowed file storage paths

This makes differences show up in “gnt-cluster verify”.

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

52ecc063 10/05/2012 07:23 pm Bernardo Dal Seno

Support for the default iallocator in replace-disks

"gnt-instance replace-disks" now behaves like the other commands, and uses
the default iallocator when "." is passed as the iallocator parameter.

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

43a8f36a 10/05/2012 07:23 pm Bernardo Dal Seno

Explicitly ask for the default iallocator in commands

Now "gnt-instance recreate-disks" uses the default iallocator when "." is
specified as the iallocator. For uniformity, the same behavior applies to
these commands:
gnt-node evacuate
gnt-instance migrate...

fbdac0d9 10/05/2012 07:22 pm Michael Hanselmann

bdev: Add functions to verify file storage paths

- LoadAllowedFileStoragePaths: Loads a list of allowed file storage
paths from a file
- CheckFileStoragePath: Checks a path against the list of allowed paths

The unit test for “utils.IsBelowDir” is updated with cases which weren't...

e4cf42d4 10/05/2012 07:14 pm Michael Hanselmann

jqueue: Look at archived jobs when watching

First: This enables the use of “gnt-job watch $id” for archived jobs.

Now, the reason for actually making this work is that during
sufficiently large group or node evacuations jobs are archived before
the client gets to poll for their output. This led to situations where...

04569469 10/05/2012 06:46 pm Michael Hanselmann

jqueue: Look at archived jobs when watching

First: This enables the use of “gnt-job watch $id” for archived jobs.

Now, the reason for actually making this work is that during
sufficiently large group or node evacuations jobs are archived before
the client gets to poll for their output. This led to situations where...

63a3d8f7 10/05/2012 05:17 am Michael Hanselmann

backend: Check for shared storage also

If normal file storage was disabled but shared storage enabled,
“_TransformFileStorageDir” would still throw an exception.

in “opcodes._CheckStorageType” there's also a check, but I wasn't quite
sure what the correct way of handling it was, so I added a TODO comment....

6a9b9778 10/05/2012 04:52 am Michael Hanselmann

utils.FilterEmptyLinesAndComments: Return list

We don't use generators often and lists are easier to re-use.

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

fa8ef9d6 10/05/2012 04:50 am Michael Hanselmann

Wipe added space when growing disks

This patch adds code to wipe newly added disk space when growing disks
using “gnt-instance grow-disk”. “New disk space” is defined as the delta
between the old block device size (not necessarily equal to the amount
recorded in the configuration) and the new recorded size. Extra caution...

461eb201 10/04/2012 05:58 pm Michael Hanselmann

cmdlib._WipeDisks: Code formatting

- LogInfo takes *args, no need to replace values right away
- Don't overwrite wipe_chunk_size right after it's been set

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

2cbe9af3 10/04/2012 04:42 pm Michael Hanselmann

Factorize removing comments and empty lines from string

This will also be used for verifying the file storage directory.

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

5506d7a9 10/04/2012 04:58 am Michael Hanselmann

ssconf: Fix mistake made in commit ee501db

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

ee501db1 10/04/2012 04:38 am Michael Hanselmann

Move a function from backend to ssconf

The “WriteSsconfFiles” function is used to write ssconf files. By moving
it we can avoid importing backend into bootstrap. The latter is imported
by CLI programs and backend doesn't have much to do with them.

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

f0f8d060 10/04/2012 02:58 am Michael Hanselmann

Show old primary/secondary node on disk replacement

People unfamiliar with Ganeti's internals might be confused with the
different hostnames showing up later in the process.

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

33e26038 10/03/2012 08:00 pm Michael Hanselmann

cmdlib: Change wording of messages during disk wipe

Error messages don't need to say “please” and it's already obvious some
investigation is needed. LogWarning already logs the message using
“logging.error” internally.

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

0188611b 10/03/2012 06:03 pm Michael Hanselmann

Remove constant for disk wipe block size

It is dangerous to have this block size as a global constant as that
could give the impression of it being easily changed. Doing so without
further adjustments to how “dd” is called will lead to disks not being
wiped properly....

64be07b1 10/03/2012 06:00 pm Michael Hanselmann

gnt-instance reinstall: Don't always exit with success

If one or more jobs failed the exit status should be set accordingly.

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

2ef3383e 10/03/2012 05:58 pm Michael Hanselmann

LUClusterVerify: Ignore /proc/drbd if DRBD is disabled

This fixes issue 190. The problem was that the check for DRBD was
enabled if LVM storage is used and didn't depend at all on whether DRBD
is enabled.

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

3d8ae327 10/03/2012 03:06 am Michael Hanselmann

LUClusterVerify: Ignore /proc/drbd if DRBD is disabled

This fixes issue 190. The problem was that the check for DRBD was
enabled if LVM storage is used and didn't depend at all on whether DRBD
is enabled.

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

d971402f 10/02/2012 10:35 pm Michael Hanselmann

cli: Exit with status 0 for --help

This patch is somewhat longer than was anticipated. Before, commands like
“gnt-instance --help” would exit with the status code 1 (failure). With
this patch, those commands exits with 0 (success) while unknown commands
still print the usage screen and exit with status 1....

b0dcdc10 10/02/2012 08:44 pm Iustin Pop

Remove the python confd server side code

In 2.7 we will only support the Haskell version, if enabled.

Since the original hconfd enabling was a bit hack-ish (copying over
the actual installed ganeti-confd, Python version), the Makefile.am
changes are a bit more involved than just the removal of the Python...

04520998 10/02/2012 08:44 pm Iustin Pop

Remove option to select the Python version of confd

This will need some more configure.ac checks for required libraries,
which will come later with the Haskell dependencies reorganisation.

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

3779121c 09/28/2012 06:11 pm René Nussbaumer

Pylint cleanup

The previous commits introduced some pylint errors.

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

b0a8e8c2 09/28/2012 04:05 pm René Nussbaumer

Modify batch-create to use MultiAlloc

This is the CLI part of the OpInstanceMultiAlloc change. There is some
room for improvement especially with user handling, but it works for now
and the code got simplified significantly.

QA tests still needs to be written....

68b2e985 09/28/2012 04:05 pm René Nussbaumer

Make validation error message more useful

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

9bc5ac44 09/28/2012 04:05 pm René Nussbaumer

Provide a custom Validate for OpInstanceMultiAlloc

This is needed, as we're not strictly separating validation from
populating the defaults. We do this all in one function. If we now
receive a non complete OpInstanceCreate opcode in instances, we would
run into AttributeErrors on those....

2958c56e 09/28/2012 03:16 pm Michael Hanselmann

ganeti-cleaner: Separate queue cleaning code

This code does not need to run as root, therefore it's better to split
it out. It is now run with the same permissions as the master daemon.

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

052783ff 09/28/2012 03:14 pm Michael Hanselmann

Stop hardcoding root user

Some parts of the code still use a hardcoded user name: root. This patch
replaces all with a constant specified at build time. The end goal is to
make it possible to run a Ganeti cluster without any special privileges
(of course this will prevent some functionality from working)....

6a5e841d 09/27/2012 07:10 pm Michael Hanselmann

ensure-dirs: Don't hardcode ssconf file group

Otherwise chown(2) will fail when noded doesn't run as root.

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

ec944cc0 09/27/2012 06:36 pm Bernardo Dal Seno

InstanceRecreateDisks: new assertion for node locks

Make sure that all the nodes where a disk operation is peformed are locked.

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

cf8adf26 09/27/2012 06:36 pm Bernardo Dal Seno

Fix missing locks in InstanceRecreateDisks

In case of in-place recreate-disks operation, all node locks were released
before starting the actual execution.

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

39b8cd94 09/27/2012 05:46 pm Michael Hanselmann

ensure-dirs: Don't convert list to tuple

Tuples are data structures, not containers.

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

320a5dae 09/27/2012 05:41 pm Bernardo Dal Seno

Always_failover doesn't require --allow-failover anymore

If an administrator sets always_failover, it means that there is no need
for another explicit approval to failover instead of migrating.

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

915faf72 09/27/2012 02:42 pm René Nussbaumer

Adding RAPI client for instance multi allocation

It was very easy to refactor CreateInstance to repurpose some part of it
for the instance multi allocation request. So we do this.

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

e5ff1a47 09/27/2012 02:42 pm René Nussbaumer

Populate the instance dict with opcode infos

This is needed so we can load it as an opcode. However, this information
should not be available on the client, so we inject that info when we
receive the request.

Provided unittest to verify behaviour.

Signed-off-by: René Nussbaumer <>...

3a6a89d7 09/27/2012 01:46 pm Michael Hanselmann

Revert unintentional change of daemon log file names

Commit 3329f4dea6 unintentionally changed the filenames of all daemon
log files. This patch reverts part of those changes.

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

1cb97324 09/26/2012 07:35 pm Agata Murawska

instance_info now returns vcpus

instance_info and all_instances_info calls had different per-instance
return types, this commit fixes the mismatch.

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

579f4ee5 09/26/2012 03:57 pm René Nussbaumer

Verify the node count just if the allocation was successful

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

cffbbae7 09/25/2012 05:28 pm Michael Hanselmann

Implement virtual cluster support in Python code

- pathutils: Prepend node-specific prefix path
- RPC: Use virtual paths (see vcluster.py)
- SSH: Pass environment variables, use destination's node directory when
copying files using scp, use GANETI_HOSTNAME to determine hostname...

9340cc2b 09/25/2012 05:20 pm Michael Hanselmann

vcluster: Add more details to docstrings

As requested by René Nussbaumer. Hopefully things are more clear now.

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

4ee72287 09/24/2012 02:49 pm René Nussbaumer

Adding RAPI resource for multi-allocation

This is straightforward.

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

d4752785 09/24/2012 02:49 pm René Nussbaumer

Adding multi-allocation logic

This patch adds the Logical Unit for the instance multi allocation
opcode.

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

12e62af5 09/24/2012 02:48 pm René Nussbaumer

Adding the new opcode for multi-allocation

Skeleton for the multi-allocation opcode

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

d353ec8f 09/24/2012 02:48 pm René Nussbaumer

Refactor shared code

We've some work which we need to do for the multi allocation request as
well, so lets refactor it to separate functions.

_ComputeNics is kinda ugly, as it reserves the MAC. I added a TODO to
think more about how we factor this behaviour out....

32eae1ec 09/24/2012 02:48 pm René Nussbaumer

Fix REQ_RESULT for MultiInstanceAllocRequest

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

69b0d82a 09/24/2012 02:47 pm René Nussbaumer

Fix a validation issue

We want to validate the result only if the iallocation run was a
success.

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

e91b297c 09/21/2012 03:44 pm Michael Hanselmann

netutils: Use virtual hostname if set

This enables the hostname seen by other code through Hostname.GetFqdn to
be changed through the environment variable “GANETI_HOSTNAME”.

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

05e733b4 09/21/2012 03:44 pm Michael Hanselmann

Add new module for virtual clusters

This module will take care of managing paths for virtual clusters.
Unittests are included (100% coverage).

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

93b19295 09/21/2012 03:44 pm Michael Hanselmann

bootstrap.SetupNodeDaemon: Stop hardcoding bind address

Commit b43dcc5a11 added support for IPv6. To have the node daemon bind
to an IPv6 address on startup it changed the code to pass a static bind
address (0.0.0.0 or ::0). If a user had configured another bind address...

0e1e0b6a 09/21/2012 07:07 am Michael Hanselmann

hv_kvm: Use pu.CONF_DIR variable

… instead of using SYSCONFDIR directly.

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