Statistics
| Branch: | Tag: | Revision:

root / lib @ 896a03f6

# Date Author Comment
896a03f6 07/29/2011 11:49 am Iustin Pop

Clear the OS scripts environment

The OS scripts currently run with the whole noded environment; this is
different from the hooks which run with a cleared one and most likely
an oversight.

This might create problems when upgrading, so it needs to be clearly...

adf6301e 07/29/2011 11:48 am Michael Hanselmann

watcher: Split state class into separate module

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

bcf0450d 07/29/2011 11:21 am Michael Hanselmann

Rename watcher's constant for instance status file

“upfile” is a bad name.

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

9ca87fb3 07/28/2011 04:27 pm Michael Hanselmann

watcher: Split node maintenance into separate module

The node maintenance class is standalone.

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

db0647dc 07/28/2011 02:17 pm Iustin Pop

Merge branch 'devel-2.4'

  • devel-2.4:
    Add support for cluster/OS parameters in QA
    Add OS search path to gnt-cluster info

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

35007011 07/28/2011 02:08 pm Iustin Pop

Remove requirement for variants on OS API v15+

This removes:

- the check in backend that such OSes have a variants file or if it
exists that is non-empty; in order for this to work, we also rework
the logic in backend._TryOSFromDisk to allow for optional OS files...

4474f112 07/28/2011 11:19 am Iustin Pop

Revert "cli.JobExecutor: Feedback function for info output"

This reverts commit 7421df8e5f2cf31022085b332d1300640ba5854b.

The feedback_fn argument to JobExecutor is used for PollJob, and thus
has a fixed signature: a single arg, tuple of (timestamp, log type,...

f39b695a 07/28/2011 11:16 am Iustin Pop

Fix group verification of offline nodes

Commit aef59ae7 reworked the file verification, but forgot to take
into account offline nodes.

The fact that this was not detected yet is due to the fact that we
don't test clusters with offline nodes in QA :(

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

6ba2bdc2 07/27/2011 03:50 pm Iustin Pop

Disallow variants for OSes that don't support them

Otherwise we get no variant checks at all, but the variant is still
recorded.

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

6ae1fade 07/27/2011 11:38 am Iustin Pop

Fix OS queries for API v20 w/parameters

OS parameters is a list of tuples, so we can't pass it directly to
utils.NiceSort, hence we use a sort key.

This was not detected in QA since QA only tests API v10 :(

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

9f039737 07/26/2011 02:22 pm Iustin Pop

Add helper for declaring all locks shared

This patch adds a function for abstracting
“dict.fromkeys(locking.LEVELS, 1)”. It also removes a duplicate
assignment for the share_locks in LUInstanceQuerydata.

Additionally, it moves the _SupportsOob function to the helper...

1ce03fb1 07/26/2011 02:19 pm Michael Hanselmann

Add ht-based result checks to opcodes

This adds the infrastructure necessary to check opcode results using
ht-based functions. Checks are added for two opcodes.

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

ae1a845c 07/26/2011 01:53 pm Michael Hanselmann

Change OpClusterVerifyDisks to per-group opcodes

Until now verifying disks, which is also used by the watcher,
would lock all nodes and instances. With this patch the opcode
is changed to operate on per nodegroup, requiring fewer locks.

Both “gnt-cluster” and “ganeti-watcher” are changed for the...

c4ff2275 07/26/2011 01:53 pm Michael Hanselmann

cmdlib: Give instance name in error message on group evacuation

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

3ddd94f9 07/26/2011 01:53 pm Michael Hanselmann

cmdlib: Factorize mapping instance LVs to node/volume

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

7421df8e 07/26/2011 01:53 pm Michael Hanselmann

cli.JobExecutor: Feedback function for info output

This will be used in the watcher where we don't want to
pollute stdout unless in debug mode.

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

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

13aeae6a 07/26/2011 11:31 am Iustin Pop

Fix recompilation of htools on regen-vcs-version

Currently, most htools code depends on Constants.hs which is generated
from constants.py and also depends on _autoconf.py. Also, _autoconf.py
depends on vcs-version, which all together means that when 'make...

a3ac3243 07/26/2011 11:31 am Iustin Pop

Add another name for the --yes-do-it option

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

d0c8c01d 07/25/2011 04:55 pm Iustin Pop

Most boring patch ever

s/'/"/ in (hopefully) the right places.

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

0fa044e7 07/25/2011 04:06 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    Reopen daemon's stdio on SIGHUP
    Reopen log file only once after SIGHUP
    Don't leak file descriptors when setting up daemon output
    Fix aliases in bash completion

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

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

f965260c 07/22/2011 02:32 pm Michael Hanselmann

gnt-instance info: Return static info if node offline

Before this patch “gnt-instance info” would fail with the error message
“Error checking node $node: Node is marked offline” if the instance's
primary node is marked offline and the user didn't explicitely request...

3b61ee44 07/22/2011 02:30 pm Michael Hanselmann

Ignore offline primary when failing over

When the source node for a failover is marked offline, there's no need
to require the user to specify “--ignore-consistency”.

To make it work at all, a number of bugs introduced by the merge of
migration and failover are also fixed by this patch....

d6f46b6a 07/22/2011 01:29 pm Michael Hanselmann

gnt-instance console: Use query instead of opcode

This means opening the console no longer requires the instance lock,
allowing it to be used during long-running operations (e.g. replacing a
disk).

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

dbfde874 07/22/2011 12:07 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    gnt-node volumes: Fix instance names

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

018ae30b 07/22/2011 12:03 pm Michael Hanselmann

Add opcode attribute for comments

This attribute allows programmatic submitters of jobs (e.g. iallocator)
to add a comment to each opcode, describing its purpose. Example:

$ gnt-job info 123
Job ID: 123

Opcodes:
OP_INSTANCE_REPLACE_DISKS
…...

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

463f75a5 07/21/2011 04:25 pm Michael Hanselmann

Fix instance failover (missing argument)

More fallout from commit 323f9095b49d.

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

c0a146a1 07/21/2011 04:25 pm Michael Hanselmann

Implement instance failover via RAPI

No idea why this was missed before.

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

fcb21ad7 07/21/2011 02:55 pm Michael Hanselmann

Export job dependencies through lock monitor

This makes them visible to the user. Example:

$ gnt-debug locks -o name,pending
Name Pending
job/890 job:891,892
job/892 job:894

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

4c03b2b5 07/21/2011 02:55 pm Michael Hanselmann

locking.GLM: Allow adding locks to monitor

This will be used for exporting job dependencies through
the lock monitor.

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

44b4eddc 07/21/2011 02:55 pm Michael Hanselmann

Make lock monitor more versatile

With this change it'll be possible to register other lock information
providers. One usecase for this are job dependencies, which can be shown
in the output of “gnt-debug locks”, too.

The lock monitor is changed to accept more than one return value from...

67a315ba 07/21/2011 02:20 pm Michael Hanselmann

Add error state to LUGroupEvacuate's exceptions

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

47099cd1 07/21/2011 02:20 pm Michael Hanselmann

Rename *_STATUS_WAITLOCK to …_WAITING

This patch renames the {JOB,OP}_STATUS_WAITLOCK constants to {JOB,OP}_STATUS_WAITING, as per design document for chained jobs.

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

f6eb380d 07/21/2011 12:39 pm Michael Hanselmann

gnt-group: Add command to evacuate whole group

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

08f8c82c 07/21/2011 12:39 pm Michael Hanselmann

Add new opcode for evacuating group

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

75d81fc8 07/21/2011 11:58 am Michael Hanselmann

Fix locking issue with job dependencies

When jobs waiting for a dependency are notified, they're re-added to the
queue. This would require owning the queue lock in exclusive mode, but
since the function doing so is called from within the job/opcode
processor, it only holds the lock in shared mode....

f8a4adfa 07/21/2011 11:56 am Michael Hanselmann

jqueue: Read-only jobs don't need processor lock

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

4f580fef 07/21/2011 08:38 am Sébastien Bocahu

Add support for KVM keymaps

Signed-off-by: Sébastien Bocahu <>
Signed-off-by: Michael Hanselmann <>
Reviewed-by: Michael Hanselmann <>

c2d22fed 07/21/2011 08:33 am Michael Hanselmann

gnt-debug: Add tests for job dependencies

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

b247c6fc 07/21/2011 08:33 am Michael Hanselmann

jqueue: Implement submitting multiple jobs with dependencies

With this change users of the “SubmitManyJobs” interface can use
relative job dependencies. Relative job IDs in dependencies are resolved
before handing the job off to the workerpool.

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

7bb60c2d 07/21/2011 08:33 am Michael Hanselmann

Fix node evacuation

- Adjust for new iallocator result format
- Split some code into helper functions

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

c0f6d0d8 07/20/2011 03:11 pm Michael Hanselmann

jqueue: Add “writable” flag to memory objects

Basically only one instance of the job, the one being processed,
should be serialized to disk and replicated to other nodes. With
this flag assertions can be added in various places.

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

b95479a5 07/20/2011 03:11 pm Michael Hanselmann

Implement chained jobs

An overview is available in the design document for this change,
doc/design-chained-jobs.rst.

When a job enters the job processor, the current opcode's dependencies
are evaluated. If a referenced job has not yet reached the desired...

475242f6 07/20/2011 09:31 am Michael Hanselmann

Remove constants for iallocator multi-relocate

They're no longer necessary.

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

45df0793 07/15/2011 08:13 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 <>...

fdfe88b1 07/15/2011 08:12 pm Michael Hanselmann

Make SharedLock._is_owned public

This will be useful for assertions. GanetiLockManager._is_owned is
exported, too.

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

2f4c951e 07/15/2011 12:27 pm Stephen Shirley

Adding a wrapper around connecting to kvm console

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

61631293 07/15/2011 12:27 pm Stephen Shirley

Adding a wrapper around "xm console"

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

3aa8ed2b 07/14/2011 10:52 pm Michael Hanselmann

Add opcode attribute for chained jobs

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

82bc21e2 07/13/2011 07:07 pm Stephen Shirley

Set startup_paused to False when restarting

This fixes the lint error:

E1120:1220:InstanceReboot: No value passed for parameter
'startup_paused' in function call

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

b6e88032 07/12/2011 06:23 pm Michael Hanselmann

gnt-cluster {command|copyfile}: Support per-group operations

This patch allows commands to be run on and files to be copied to all
nodes within a specific group.

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

05484a24 07/12/2011 06:23 pm Michael Hanselmann

cli.GetOnlineNodes: Support node group filter, use query2

This patc changes cli.GetOnlineNodes to use query2, which does the
filtering in the master daemon, and adds a new parameter to filter by
node group.

Unittests were added for the old implementation and then adopted to...

7fc548e9 07/12/2011 06:22 pm Michael Hanselmann

ht.WithDesc: Work around pylint warning

Explicitely defining “__call__” silences a pylint warning when wrapped
type check functions are used directly. I had no idea pylint is this
intelligent.

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

b795a775 07/11/2011 05:53 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    ht: Add new check for numbers
    Fix off-by-one bug in job serial generation
    Shorten some unbreakable lines in man pages
    Correct some spelling mistakes
    Fix bug in recreate-disks for DRBD instances
    Fix a lint warning...
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...

7238edb5 07/11/2011 05:16 pm Iustin Pop

Reverts the patch series about console wrappers

This reverts commits 030a9cb8022b83bf43ec14dfbafd943299bc01c4 and
ae082df0000a785b693b2f4aa434650a81a94bdf.

There are two problems:

- Makefile.am breakage, which is trivial to revert
- unittest breakage, which honestly I'm not sure how to fix and how...

323f9095 07/08/2011 03:15 pm Stephen Shirley

Add gnt-instance start --pause

Creates the instance, but pauses execution before booting. This combined
with 'gnt-instance console' unpausing instances means that the entire
boot process can be viewed and monitored.

Signed-off-by: Stephen Shirley <>...

ae082df0 07/08/2011 03:15 pm Stephen Shirley

Adding a wrapper around connecting to kvm console

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

030a9cb8 07/08/2011 03:15 pm Stephen Shirley

Adding a wrapper around "xm console"

The wrapper will connect to the console, and check in the background if
the instance is paused, unpausing it as necessary.

Signed-off-by: Stephen Shirley <>
Reviewed-by: Michael Hanselmann <>

a5566394 07/06/2011 05:37 pm Michael Hanselmann

Fix lint error

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

b4fcee5b 07/06/2011 12:31 am Michael Hanselmann

RAPI: Document all feature strings

- Use constants and an assertion
- Update documentation for node migration

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

21d70642 07/06/2011 12:31 am Michael Hanselmann

Remove old node evacuation opcode

LUNodeEvacStrategy has been replaced with LUNodeEvacuate.

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

de40437a 07/06/2011 12:31 am Michael Hanselmann

Change RAPI for new node evacuation opcode

The change is not backwards compatible, see the updated NEWS file.

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

aafee533 07/06/2011 12:31 am Michael Hanselmann

Change “gnt-node evacuate” to use new opcode

By default it'll now evacuate all instances from the node, not
just secondaries.

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

e1f23243 07/06/2011 12:31 am Michael Hanselmann

Add new opcode to evacuate node

This new opcode will replace LUNodeEvacStrategy, which used to return a
list of instances and new secondary nodes. With the new opcode the
iallocator (if available) is tasked to generate the necessary operations
in the form of opcodes. This moves some logic from the client to the...

029fe503 07/05/2011 08:24 pm Guido Trotter

Alias gnt-job show to gnt-job info

Am I the only one to make that mistake 10 times a week?

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

d748d9a7 07/01/2011 05:43 pm Iustin Pop

Fix cluster verify for empty node groups

There were some implicit assertions in the code that all node groups
have nodes, which is not necessarily true.

Additionally, the patch does a wrapping change.

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

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

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

de2b0d1d 06/23/2011 05:47 pm Guido Trotter

Merge branch 'devel-2.4'

  • devel-2.4:
    LUInstanceCreate: use opcodes.RequireFileStorage
    Don't add ",boot=on" to disks on kvm >= 0.14
    KVM: fix per-instance stored UID value

Conflicts:
lib/cmdlib.py
- use RequireSharedFileStorage there

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

0376655e 06/23/2011 04:53 pm Guido Trotter

remove bootstrap._InitSharedFileStorage

This function is a copy of bootstrap._InitFileStorage with the following
differences:
- check constants.ENABLE_SHARED_FILE_STORAGE and not
constants.ENABLE_FILE_STORAGE
- use different local variable names
- one different error string...

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...
2492231f 06/17/2011 03:57 pm Guido Trotter

Merge branch 'devel-2.4'

  • devel-2.4:
    Add one forgotten element to the file disk path

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

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

08b000be 06/17/2011 02:36 pm Guido Trotter

Merge branch 'devel-2.4'

  • devel-2.4:
    LUInstanceCreate: fix file storage dir calculation
    Check that filestorage is enabled when requested
    Remove self.op.file_storage_dir isabs check

Conflicts:
lib/cmdlib.py
- use constants.DTS_FILEBASED...

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

Add DTS_FILEBASED constant

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

60152bbe 06/15/2011 06:11 pm Michael Hanselmann

Replace iallocator's mreloc w/ change-group and node-evac

This patch removes all occurrences of the “multi-relocate” iallocator
mode. Commit 25ee7fd845 updated the design document and introduced
separate modes, “change-group” and “node-evacuate”. The constants aren't...

194c8ca4 06/10/2011 06:48 pm Michael Hanselmann

jqueue: Allow loading of archived jobs

Chained jobs need to look at previous jobs, including archived ones. A
nice side-effect of this change is the ability to look at archived jobs
using “gnt-job info <id>” as long as the ID is known.

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

13699e58 06/10/2011 05:50 pm René Nussbaumer

Adding basic abstraction layer for caching

This includes an own simple cache implementation and an
interface to a memcache instance.

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

fceb01fe 06/08/2011 08:44 am Michael Hanselmann

Fix locking issues in LUClusterVerifyGroup

- Use functions in ConfigWriter instead of custom loops
- Calculate nodes only once instances locks are acquired, removes one
potential race condition
- Don't retrieve lists of all node/instance information without locks...

c5312a10 06/08/2011 08:44 am Michael Hanselmann

cmdlib: Acquire BGL for LUClusterVerifyConfig

LUClusterVerifyConfig verifies a number of configuration settings. For
doing so, it needs a consistent list of nodes, groups and instances. So
far no locks were acquired at all (except for the BGL in shared mode)....

fbb2c636 06/07/2011 03:32 pm Michael Hanselmann

Export/import instance tags

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

0f8810df 06/07/2011 03:31 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...

9dfa16fc 06/01/2011 08:24 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 <>...

a57981c5 06/01/2011 08:24 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 <>
Signed-off-by: Iustin Pop <>...

720f56c8 06/01/2011 08:24 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....

85061b9a 06/01/2011 08:14 pm Michael Hanselmann

http.client: Make debug log less noisy

The HTTP client code generates quite a lot of debug log messages. With
this patch they're hidden unless explicitely enabled in the code.

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

07346f28 06/01/2011 08:08 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    jqueue: Fix potential race condition when cancelling queued jobs
    Fix argument order in ReserveLV and ReserveMAC

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