Statistics
| Branch: | Tag: | Revision:

root @ grnet-2.4-ippool-devel

# Date Author Comment
a8f8cb24 12/06/2011 05:07 pm Dimitris Aragiorgis

Merge branch 'devel-2.4' into grnet-2.4-ippool-devel

b39d17b1 11/30/2011 12:11 pm Iustin Pop

Add UnescapeAndSplit unittest for multi-escapes

This would have caught the bug in the first place. Argh,
hand-generated test cases!

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

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

337de15b 11/28/2011 06:21 pm Dimitris Aragiorgis

merge upstream devel-2.4

Conflicts:
lib/cli.py
lib/cmdlib.py
lib/config.py
lib/opcodes.py

Signed-off-by: Dimitris Aragiorgis <>

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

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

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...
ca8f5622 11/14/2011 11:03 am Iustin Pop

Re-wrap a paragraph to eliminate a sphinx warning

This just makes sure that the paragraph doesn't contains lines that
start with :, which make Sphinx (1.0.7) complain.

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

7b790a6a 10/27/2011 04:05 pm René Nussbaumer

Update NEWS and increase to 2.4.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....

ac0abc56 10/18/2011 02:44 pm Michael Hanselmann

Update NEWS for unreleased 2.4.5

I need this for another 2.5 release.

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

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

fd121c8e 09/06/2011 05:06 pm Michael Hanselmann

Fix assertion error on unclean master shutdown

Commit 66bd7445 added an assertion to ensure a finalized job has its
“end_timestamp” attribute set. Unfortunately it didn't cover a case when
the queue is recovering from an unclean master shutdown.

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

e4a48c7b 08/26/2011 03:53 pm Michael Hanselmann

utils: Fix UnescapeAndSplit parsing bug

If a value passed to UnescapeAndSplit ended with a backslash an
exception would be raised:

$ gnt-instance modify -H mem=x\\ inst1.example.com
[…]
e2 = slist.pop(0)
IndexError: pop from empty list

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

c71d2178 08/23/2011 01:59 pm René Nussbaumer

Version bump 2.4.4

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

ac9b996d 08/23/2011 12:27 pm René Nussbaumer

Update NEWS file

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

82461fad 08/23/2011 12:12 pm René Nussbaumer

Documentation fix for importing with --src-dir option

Signed-off-by: Agata Murawska <>
Reviewed-by: Michael Hanselmann <>
(cherry picked from commit b7d7876bd0e9844fab8be28bfa1fd5d563ec7412)

Conflicts:

lib/cmdlib.py (easily fixed)
8b046709 08/23/2011 12:08 pm René Nussbaumer

Adding missing test data for commit 7a380ddfc

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

7a380ddf 08/23/2011 12:01 pm René Nussbaumer

Fix a parsing issue with DRBD 8.3.11 in the Linux Kernel

In the Linux kernel commit 4b0715f096 introduced a display bug into
/proc/drbd which broke our regex.

The bug was first introduced into Linux 2.6.39-rc1. This bug is still
unfixed as of today.

This patch adapt the regular expression to workaround this bug for the...

de5f8826 08/19/2011 02:36 pm René Nussbaumer

ensure-dirs: Fix a bug with queue/archive permissions

While it sets the permission on all files in queue/archive accordingly
it doesn't do so for the created archive directories. This patch fixes
this problem.

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

ba98a8d1 08/05/2011 04:39 pm Michael Hanselmann

Fix typo in NEWS

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

96514751 08/05/2011 04:39 pm Michael Hanselmann

doc/admin: s/grub/GRUB/

“GRUB” is an acronym for GRand Unified Bootloader.

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

2f994ece 08/05/2011 11:02 am René Nussbaumer

Bumping version to 2.4.3

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

e20832af 08/04/2011 03:41 pm René Nussbaumer

Update the NEWS file for 2.4.3

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

d5fca545 08/03/2011 06:27 pm Iustin Pop

Fix small typo in docstring

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

b5ea70bf 08/03/2011 06:03 pm Michael Hanselmann

Fix typo in NEWS

“--dry-run” starts with two dashes.

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

713aaa8a 08/03/2011 05:20 pm Apollon Oikonomopoulos

Remove 15-second sleep from LUInstanceCreate

Remove 15 second sleep when wait_for_sync is not set. LUInstanceCreate already
calls _WaitForSync with oneshot=True, which already performs an internal
wait-loop for disks to start syncing.

Signed-off-by: Apollon Oikonomopoulos <>

fd791263 08/03/2011 05:19 pm Apollon Oikonomopoulos

Pause DRBD sync for OS install if no_wait_for_sync

When no_wait_for_sync is specified in LUInstanceCreate, Ganeti lets DRBD sync
in the background while performing the rest of the installation steps,
including OS installation.

However, OS installation is a very disk-intensive task that intereferes badly...

d0ffa390 08/03/2011 11:50 am Pedro Macedo

Add a flag to burnin to allow specifying VCPU count.

Signed-off-by: Pedro Macedo <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

5abecc1c 07/28/2011 01:21 pm Iustin Pop

Add support for cluster/OS parameters in QA

Currently there is no way to QA with (for example) an initrd because
the QA only inits the cluster with the default parameters. This makes
it impossible to QA using anything but the default parameters, which
doesn't always work....

f36c3e2d 07/26/2011 01:12 pm Ben Lipton

Add OS search path to gnt-cluster info

Otherwise, it's pretty hard to figure it out from the command line.

Signed-off-by: Ben Lipton <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

110f49ef 07/25/2011 04:01 pm Michael Hanselmann

Reopen daemon's stdio on SIGHUP

Before this patch daemons would continue to refer to an old logfile for
their standard I/O if they had been asked to reopen the log (SIGHUP).

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

ad88650c 07/25/2011 04:01 pm Michael Hanselmann

Reopen log file only once after SIGHUP

Commit b6fa9a44 added a re-openable log handler. The log file is
reopened when a daemon is sent a HUP signal. Due to a bug in the code,
fixed by this patch, the log file would be reopened for every single log
message thereafter....

638ac34b 07/25/2011 04:01 pm Michael Hanselmann

Don't leak file descriptors when setting up daemon output

When a daemon's output is configured using “utils.SetupDaemonFDs”, the
function must use dup2(2). Unfortunately the code didn't close the
original file descriptors, leaking them in the process.

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

3f42b4f6 07/22/2011 01:31 pm Michael Hanselmann

Fix aliases in bash completion

Ever since commit 2d48a3a2 aliases were not included in the bash
completion script. This patch also replaces one tab with two spaces.

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

4b413e49 07/22/2011 12:00 pm Michael Hanselmann

gnt-node volumes: Fix instance names

Commit 84d7e26b changed “objects.Instance.MapLVsByN” to not just return
the LV name, but to include the volume group name (e.g.
“xenvg/d67e8700….disk0_data”). This in turn broke the mapping of volume
names in LUNodeQueryvols, stopping instance names from displayed in...

8c5acc2e 07/18/2011 04:31 pm Apollon Oikonomopoulos

rlib2: handle wait_for_sync in instance creation

Until now, wait_for_sync was harcoded to True when creating instances via RAPI.
We allow settings wait_for_sync via RAPI and have rlib2 honour this decision.

Note: this is not needed in the upcoming 2.5, as Opcode parameters are not...

1f8194b3 07/12/2011 01:50 pm Apollon Oikonomopoulos

KVM: strip boot=on from IDE CDROM drivers

boot=on forces KVM to use an extboot ROM which has shown poor behaviour with
booting from CD images. IDE CDROM emulation (which is forced by default when
booting from CD) does not need boot=on, so we simply omit it....

697f49d5 07/11/2011 05:28 pm Michael Hanselmann

ht: Add new check for numbers

Places which receive floats can usually also deal with integers, e.g.
OpTestDelay. Tests are added and the new check function is used for the
aforementioned opcode and verifying query results.

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

3c88bf36 07/11/2011 05:28 pm Michael Hanselmann

Fix off-by-one bug in job serial generation

Commit 009e73d0 (September 2009) changed the job queue to generate
multiple job serials at once. Ever since it would return one more than
requested.

The “serial” file in the job queue directory is defined to contain the...

56a1d5cc 07/01/2011 05:17 pm Iustin Pop

Shorten some unbreakable lines in man pages

In order to make the display right on 80-columns terminals.

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

f7b769b1 07/01/2011 05:17 pm Iustin Pop

Correct some spelling mistakes

New lintian is even smarter:

- overriden → overridden
- allows to → allows one to

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

7056a05b 07/01/2011 02:47 pm Apollon Oikonomopoulos

RAPI: handle tags during instance creation

Add tag handling to _ParseInstanceCreateRequestVersion1.

Signed-off-by: Apollon Oikonomopoulos <>

b768099e 06/28/2011 06:02 pm Iustin Pop

Fix bug in recreate-disks for DRBD instances

The new functionality in 2.4.2 for recreate-disks to change nodes is
broken for DRBD instances: it simply changes the nodes without caring
for the DRBD minors mapping, which will lead to conflicts in non-empty...

78ff9e8f 06/28/2011 06:02 pm Iustin Pop

Fix a lint warning

Patch db8e5f1c removed the use of feedback_fn, hence pylint warn
now.

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

cc8a8ed7 06/28/2011 12:56 am Apollon Oikonomopoulos

KVM: configure bridged NICs at migration start

Commit 5d9bfd870 moved tap interface handling from KVM to Ganeti, partly
to also solve the problem of routed interfaces getting configured too
early during live migrations, causing network anomalies. In that...

96747bda 06/27/2011 04:35 pm Iustin Pop

Fix RAPI documentation regarding master role

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

db8e5f1c 06/27/2011 01:53 pm Iustin Pop

Fix bug in drbd8 replace disks on current nodes

Currently the drbd8 replace-disks on the same node (i.e. -p or -s) has
a bug in that it does modify the instance disk temporarily before
changing it back to the same value. However, we don't need to, and
shouldn't do that: what this operation do is simply change the LVM...

7afca87f 06/23/2011 04:51 pm Guido Trotter

LUInstanceCreate: use opcodes.RequireFileStorage

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

4304964a 06/23/2011 04:51 pm Guido Trotter

Don't add ",boot=on" to disks on kvm >= 0.14

Under newer kvm this prevents the vm from starting.
Ah, change!

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

3af16328 06/22/2011 07:16 pm Apollon Oikonomopoulos

KVM: fix per-instance stored UID value

When using the pool security model, ExecuteKVMRuntime was storing the
instance's UID using str(uid), which would result in storing the
LockedUid.
_repr__() result:

$ cat /var/run/ganeti/kvm-hypervisor/uid/xxxxxxxxxxxxx...
c33472b5 06/22/2011 02:17 pm Michael Hanselmann

Fix issue with tags on instance creation

Commit 720f56c85a added the ability to specify tags when creating an
instance. The “tags” attribute of an instance object needs to be a set,
but the patch's code saved it as a list, causing breakage in other parts...

cd0e63d6 06/22/2011 02:12 pm Apollon Oikonomopoulos

Network query: handle default NIC link value

When asked to return statistics about a network usage by instances, we didn't
properly handle the link=None case. This patch fixes the behaviour by fallink
back to the cluster default link.

Signed-off-by: Apollon Oikonomopoulos <>

6ad82cef 06/22/2011 02:12 pm Apollon Oikonomopoulos

Update network design doc

Signed-off-by: Apollon Oikonomopoulos <>

dc5af8d1 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add network and IP pool config methods and ssconf

Add helper methods to ganeti.config.ConfigWriter to handle Network addition and
removal, IP address reservation and commitment to the address pools.

Also add the “networks” ssconf key to make network names/UUIDs available to all...

679cba3a 06/22/2011 02:12 pm Apollon Oikonomopoulos

query: add network query primitives

Add NetworkQueryData data container for network-related queries. Also add a
network query field generator and helper functions to generate usage statistics
for IP address pools.

Signed-off-by: Apollon Oikonomopoulos <>

47a6db9b 06/22/2011 02:12 pm Apollon Oikonomopoulos

bootstrap: initialize network configuration to an empty dict

Signed-off-by: Apollon Oikonomopoulos <>

1190610e 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add pool management unit tests

Add unit tests to check proper IP address pool management logic.
The tests cover all simple operations on an IP address pool.

Signed-off-by: Apollon Oikonomopoulos <>

cafa5b70 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add network-related LUs

Add Logical Units for network adding and querying network config objects.

Signed-off-by: Apollon Oikonomopoulos <>

427746af 06/22/2011 02:12 pm Apollon Oikonomopoulos

LUGroupSetParams: handle network map/unmap

Modify LUGroupSetParams to accept network addition/removal. Networks are
connected to nodegroups' links.

Signed-off-by: Apollon Oikonomopoulos <>

7ffdb1d8 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add network-related opcodes

Add opcodes for network addition and query.

Signed-off-by: Apollon Oikonomopoulos <>

600eeb31 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add network query LUXI method

Signed-off-by: Apollon Oikonomopoulos <>

f709cbca 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add gnt-network client script

gnt-network manipulates network objects. Required parameters have been added to
ganeti.cli.

Signed-off-by: Apollon Oikonomopoulos <>

ac75fad9 06/22/2011 02:12 pm Apollon Oikonomopoulos

Instance addition and removal: manage IP addresses

Prototype implementation of IP address management during instance
addition/removal.

Signed-off-by: Apollon Oikonomopoulos <>

87d534cb 06/22/2011 02:12 pm Apollon Oikonomopoulos

Document network-related hooks

Signed-off-by: Apollon Oikonomopoulos <>

2d25bcdf 06/22/2011 02:12 pm Apollon Oikonomopoulos

Network management design doc

Signed-off-by: Apollon Oikonomopoulos <>

c1439c1c 06/22/2011 02:12 pm Apollon Oikonomopoulos

Make bash completion network-aware

Signed-off-by: Apollon Oikonomopoulos <>

f7ee7f53 06/22/2011 02:12 pm Apollon Oikonomopoulos

Make zsh completion network-aware

Signed-off-by: Apollon Oikonomopoulos <>

1eeeea44 06/22/2011 02:12 pm Apollon Oikonomopoulos

Fix cyclic dependency between iallocator and pools

The IP pool management infrastructure currently needs to know an instance's
node to fill in IP addresses. For this to happen, the iallocator must run
before we generate IP addresses, yet the iallocator itself needs the instance's...

4ffb8181 06/22/2011 02:12 pm Apollon Oikonomopoulos

Fix typo in gnt-network list

ToStdOut -> ToStdout

Signed-off-by: Apollon Oikonomopoulos <>

5f2725c1 06/22/2011 02:12 pm Apollon Oikonomopoulos

More fixes regarding ip pool mgmt and instance creation

Signed-off-by: Apollon Oikonomopoulos <>

03265e02 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add doc/examples/zsh_completion to .gitignore

Signed-off-by: Apollon Oikonomopoulos <>

85c5d3c9 06/22/2011 02:12 pm Apollon Oikonomopoulos

Improve temporary reservation of IP addresses

Add a new method, TemporaryReservationManager.GetECReserved(), which returns all
reservations held by a given ec_id.

Also add a new method, ConfigWriter._UnlockedCommitReservedIps(), which can be
called to commit all temporarily reserved IP addresses to the respective...

c95ac777 06/22/2011 02:12 pm Apollon Oikonomopoulos

ConfigWriter.ReleaseIp: change semantics

Change the semantics of ReleaseIp, so that it can be called from outside
without knowing the exact network UUID, by passing only node and link.

Signed-off-by: Apollon Oikonomopoulos <>

6609f455 06/22/2011 02:12 pm Apollon Oikonomopoulos

RemoveInstance: handle IP default NIC link

Call cluster.SimpleFillNIC to get the default link when link is None.

Signed-off-by: Apollon Oikonomopoulos <>

ac82d660 06/22/2011 02:12 pm Apollon Oikonomopoulos

IP pool management during instance modification

Perform suitable pool operations on NIC addition, removal and modification.

Signed-off-by: Apollon Oikonomopoulos <>

4260755b 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add tag handling to {Op,LU}InstanceCreate

Add a tag slot to opcodes.OpInstanceCreate. We do not reuse _PTags, as this is
intended for OpTagsSet and thus:

a) is not documented
b) does not carry a default value, making it mandatory

Also pass the tags to the iallocator during instance creation....

62ef8d4d 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add tagging option to gnt-instance create

Add TAG_ADD_OPT option to cli.py and use it in gnt-instance. Modify
cli.GenericInstanceCreate() accordingly.

Signed-off-by: Apollon Oikonomopoulos <>

aca8d56e 06/22/2011 02:12 pm Apollon Oikonomopoulos

Export instance tags to instance hooks

Instance hooks now get an INSTANCE_TAGS environment variable, which contains a
space-delimited list of the affected instance's tags.

Also update the documentation to reflect the change.

Signed-off-by: Apollon Oikonomopoulos <>

dd7ea762 06/22/2011 02:12 pm Apollon Oikonomopoulos

TemporaryReservationManager: decrement retry counter

The retry counter used in TemporaryReservationManager.Generate() was not
decremented for each failed retry, as presumably intended. This patch
decrements the retry counter after each failed attempt.

Signed-off-by: Apollon Oikonomopoulos <>

2cb80e1d 06/22/2011 02:12 pm Apollon Oikonomopoulos

Handle StopIteration in free IP generation

Catch the StopIteration exception and return None to the temporary_ips
reservation manager, so that it fails at the 64-attempt boundary.

Signed-off-by: Apollon Oikonomopoulos <>

e8f80e7d 06/22/2011 02:12 pm Apollon Oikonomopoulos

Handle address pool exhaustion properly in cmdlib

We catch the ConfigurationError raised by ConfigWriter.GenerateIp() in
LUInstanceCreate and LUInstanceSetParams, so that we can raise an OpPrereq
exception and better inform the user about the error.

Signed-off-by: Apollon Oikonomopoulos <>

246f300d 06/22/2011 02:12 pm Apollon Oikonomopoulos

gnt-network info: include external reservations

Also include the list of externally reserved IP addresses in an address pool in
the output of gnt-network info <network_name>.

Signed-off-by: Apollon Oikonomopoulos <>

9dfd5fc2 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add lib/ippool.py: IP pool management primitives

This patch introduces primitive structures for IP pool management. The core of
the IP Pool management framework is the ippool.IPv4Network class, which encodes
an IPv4 subnet configuration with its IP address pool. The pool functionality...

62a7762b 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add config objects and methods for IP pools

This patch introduces the following changes to lib.config and lib.objects to
facilitate IP pool management.

- Add a "networks" key to objects.cluster to hold link -> subnet relations.
Each link is assumed to be associated with at most one IPv4 and at most one...

2abc8f57 06/22/2011 02:12 pm Apollon Oikonomopoulos

LUCreateInstance: Retrieve IPs from an IP pool

A new ip keyword is added ("pool") to signify that LUCreateInstance should get
the instance's IP from an IP pool (rather than manually or by DNS resolution).

IP and link checks are re-ordered so that a NIC's link is available at the time...

5974efea 06/22/2011 02:12 pm Apollon Oikonomopoulos

lib.objects: Add network object definition

Add a network object definition, with the appropriate slots, to lib.objects.

Also add a “networks” top-level configuration slot to host network definitions
and a “networks” slot to the NodeGroup objects to hold network ←→ node-group...

4bba8e4c 06/22/2011 02:12 pm Apollon Oikonomopoulos

Add ganeti.network: address pool management tools

lib.network contains AddressPool, a helper class for ganeti.objects.Network.
AddressPool wraps a Network object and provides all IPv4 Address Pool
management logic, manipulating the respective fields of the Network object....

034c116d 06/22/2011 01:26 pm Apollon Oikonomopoulos

KVM: configure bridged NICs at migration start

Commit 5d9bfd870 moved tap interface handling from KVM to Ganeti, partly to
also solve the problem of routed interfaces getting configured too early during
live migrations, causing network anomalies. In that direction, configuration of...

00ca374a 06/17/2011 03:57 pm Guido Trotter

Add one forgotten element to the file disk path

This was left out during the fix/refactoring

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

d2129ac4 06/17/2011 02:26 pm Guido Trotter

LUInstanceCreate: fix file storage dir calculation

- Move the calculation at the beginning of CheckPrereq, since it doesn't
modify any state, but still keeps locks
- Only perform the calculation if the actual disk template is filebased
- Error out if there is no defined file storage dir...

1bb1e297 06/17/2011 02:26 pm Guido Trotter

Check that filestorage is enabled when requested

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

2112772e 06/17/2011 02:25 pm Guido Trotter

Remove self.op.file_storage_dir isabs check

As the manpage says, and the code does, self.op.file_storage_dir is an
additional relative path under the cluster file storage dir. As such it
should not be absolute.

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

c1dc897b 06/01/2011 04:52 pm Apollon Oikonomopoulos

Remove duplicate CDROM_IMAGE_PATH KVM hv param def

Introduced during merge, because of fba7f91. Remove the second definition, as
it broke KVM HTTP CDROM boot.

Signed-off-by: Apollon Oikonomopoulos <>

66bd7445 05/31/2011 07:17 pm Michael Hanselmann

jqueue: Fix potential race condition when cancelling queued jobs

When a job was cancelled, its status would be changed and the file
written again. Since this was a final status, the job file could be
moved anytime for archival. If the job was still in the queue, however,...

8785b71b 05/30/2011 06:03 pm Apollon Oikonomopoulos

Fix argument order in ReserveLV and ReserveMAC

ConfigWriter.ReserveLV() and Configwriter.ReserveMAC() called
TemporaryReservationManager.Reserve() with the ec_id and resource arguments
swapped. As a result, two reservation attempts for the same resource type...

fa6347d0 05/30/2011 02:05 pm Apollon Oikonomopoulos

Fix argument order in ReserveLV and ReserveMAC

ConfigWriter.ReserveLV() and Configwriter.ReserveMAC() called
TemporaryReservationManager.Reserve() with the ec_id and resource arguments
swapped. As a result, two reservation attempts for the same resource type...

a9b42993 05/26/2011 03:40 pm Michael Hanselmann

TLReplaceDisks: Move assertion checking locks

Commit 1bee66f3 added assertions for ensuring only the necessary locks
are kept while replacing disks. One of them makes sure locks have been
released during the operation. Unfortunately the commit added the check...

cb156a3e 05/24/2011 07:48 pm Iustin Pop

node evac: don't call IAllocator if no instances

Currently we generate an empty list only for the '-n node' invocation,
but for iallocator we still call the iallocator (which needs an RPC
call, etc.). By moving the computation of instances outside of the if...

9a914f7a 05/24/2011 12:37 pm René Nussbaumer

RPC/Backend: Make UploadFile uid and gid agnostic

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