Statistics
| Branch: | Tag: | Revision:

root / lib @ bc57fa8d

# Date Author Comment
bc57fa8d 11/26/2013 11:13 am Helga Velroyen

Use a query client for node queries where necessary

To remove the node query's python implementation soon, this
patch makes all users of the queries call the haskell
implementation instead of the python one.

Signed-off-by: Helga Velroyen <>...

1211c6ed 11/26/2013 11:13 am Helga Velroyen

Remove --enable-split-query option

Switching from python to haskell queries, this patch
removes the option to dis/enable the haskell queries
at configure time.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Hrvoje Ribicic <>

fd201010 11/26/2013 11:03 am Jose A. Lopes

Add Xen paused state as a Ganeti running state

The QA test 'TestClusterBurnin' pauses instances and the Xen state
domain 'paused' was not being handled properly by Ganeti because it
was not being classified as either a running or shutdown state. This
patch adds the 'paused' state to the set of running states by...

9e448d7f 11/21/2013 03:45 pm Klaus Aehlig

Parse spindles as integer

The disk parameter "spindles", if present, has to be an integer.
Enforce this already when parsing the command line, instead of
passing around the string representation of that integer.

Signed-off-by: Klaus Aehlig <>...

a4417db4 11/15/2013 04:49 pm Thomas Thrainer

Merge branch 'stable-2.10' into master

Merge branch 'stable-2.10' into master

  • stable-2.10
    Don't allow optional node parameters
    Move OVS node parameters to the right place
    Make NIC VLAN queryable
    Pass VLAN parameter correctly in moves
    Use constant instead of raw string...
adef95a2 11/15/2013 03:12 pm Thomas Thrainer

Merge branch 'stable-2.9' into stable-2.10

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Bump revision for 2.9.1
    Update NEWS and schedule release for 2.9.1
    Fix retrieval of xen command in class method
    Fix docstring for ganeti.storage.filestorage_unittest.py...
651ce6a3 11/14/2013 05:40 pm Petr Pudlak

Use custom SSH ports for other operations

In particular copyfile and renew-crypto.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Hrvoje Ribicic <>

c42be2c0 11/14/2013 05:40 pm Petr Pudlak

Use configured SSH ports when connecting to a console

This is accomplished by passing the corresponding node group to
hv_*.py. Tests for hv_*.py that call GetInstanceConsole updated.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Hrvoje Ribicic <>

a9f33339 11/14/2013 05:40 pm Petr Pudlak

Use custom SSH ports in node groups when working with nodes

Calling `gnt-instance console` with a custom SSH port doesn't work yet.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Hrvoje Ribicic <>

6b2a2942 11/14/2013 05:28 pm Petr Pudlak

Add a method retrieving `NodeGroup` objects by group name

Also add a method for the retrieval of "ndparams" (node parameters)
of groups, not just nodes.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Hrvoje Ribicic <>

07e68848 11/14/2013 04:30 pm Thomas Thrainer

Don't allow optional node parameters

Ganeti does not support optional fields in parameters
(hypervisor-params, disk-params, etc.). OpenVSwitch related node
parameters were the exception to this rule, which caused numerous
problems related to import/export and (de-)serialization....

818e28cf 11/14/2013 04:30 pm Thomas Thrainer

Move OVS node parameters to the right place

OpenVSwitch node parameters were passed as separate command line flags.
This was not only inconsistent with all other parameters
(hypervisor-params, disk-params, ...), but also with the documented
behavior in the man pages....

9a03cffb 11/14/2013 04:30 pm Thomas Thrainer

Make NIC VLAN queryable

Add an additional query field which makes it possible to query for
VLANs of instance NICs.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

dfc3afd9 11/14/2013 04:30 pm Thomas Thrainer

Use constant instead of raw string

Use the appropriate constant instead of a raw string.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Hrvoje Ribicic <>

0d3f52da 11/14/2013 03:10 pm Jose A. Lopes

Fix instance info

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

70f25a49 11/14/2013 03:10 pm Jose A. Lopes

Fix class methods in KVM hypervisor

Several methods in KVM hypervisor behave like 'classmethods', however,
they did not have the '@classmethod' annotation. This patch adds
'@classmethod' annotations to several of these methods with the goal
of making '_StopInstance' available to the QA. This step is necessary...

e52e0ddc 11/14/2013 03:09 pm Jose A. Lopes

Watcher cleans user shutdown domains

Update watcher to destroy shutdown domains when it detects that a
domain is in the state 'USER_down'. This requires adding logic
similar to that of restart instance, that is tracking the number of
cleanup attempts in the watcher's state and give up if a given number...

9982754c 11/14/2013 03:09 pm Jose A. Lopes

Python instance queries report 'USER_down'

Update instance queries on the Python codebase to report 'USER_down'
in the situation where the user has shutdown a Xen domain but Ganeti
still marks this domain as 'ADMIN_up' in its configuration file.

Signed-off-by: Jose A. Lopes <>...

9c71582f 11/14/2013 03:09 pm Jose A. Lopes

Prevent instance start when user down

Prevent starting a given instance when that instance has been shutdown
by the user, given that the instance must be first properly shutdown.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

9d22cc90 11/14/2013 03:09 pm Jose A. Lopes

Xen handle domain shutdown

Update Xen backend to properly recognize when a domain has been
shutdown by the user and to properly cleanup a shutdown domain when
Ganeti requests Xen to stop this domain.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

931419e5 11/14/2013 03:09 pm Jose A. Lopes

Preserve Xen domain after shutdown

Change Xen domain configuration to preserve the domain state after
shutdown, as opposed to automatic reboot, which is the default
behaviour.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

a3f0f306 11/14/2013 03:08 pm Jose A. Lopes

Add Python hypervisor instance state

Add 'HvInstanceState' which represents the state of an instance
(either 'running' or 'shutdown') and fix the remaining hypervisor
backends to return a value of this type. Before this patch, each
backend was returning their own value, some were returning strings,...

270df828 11/14/2013 03:08 pm Jose A. Lopes

Fix typo in documentation

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Hrvoje Ribicic <>

f92d9674 11/12/2013 04:37 pm Helga Velroyen

Fix retrieval of xen command in class method

This patch fixes issue 608. When introducing the
configurability of the xen toolstack in commit
8ef418bb92, the hypervisor api was accidentally changed
in a way that let to this error in KVM.

Signed-off-by: Helga Velroyen <>...

c0827de8 11/12/2013 03:23 pm Klaus Aehlig

Adapt TestJobSubmission to new semantics of SubmitManyJobs

Historically, Ganeti would partially handle syntactically incorrect
luxi requests, if the outer structure was that of SubmitManyJobs
request. Moreover, this behavior was verified by a test. We changed to...

a9e1819b 11/12/2013 03:23 pm Klaus Aehlig

Add a constructor to BaseOpCode

In order to guarantee all mandatory slots to be present, add
a custom constructor to BaseOpCode adding those fields with
default value, instead of inheriting the constructor from
outils.ValidatedSlots.

Signed-off-by: Klaus Aehlig <>...

e4236bbd 11/11/2013 10:29 pm Santi Raffa

FillDict: do not use exceptions for flow control

While it's generally better to beg for forgiveness than ask for
permission in Python, it's not a good idea to rely on exceptions to
model control flow, especially if the resulting code is simpler.

Signed-off-by: Santi Raffa <>...

a09639d1 11/11/2013 10:29 pm Santi Raffa

Remove hardcoded references to File, SharedFile templates

DTS_FILEBASED is a constant that exists and this commit makes sure
that it is used whenever sensible, rather than resorting to hardcoding
the pair of templates in very many files.

Signed-off-by: Santi Raffa <>...

704b51ff 11/08/2013 07:00 pm Klaus Aehlig

Make masterd call luxid to write jobs to queue

As the responsibility for writing the job queue changed
to luxid, make masterd call to luxid when it is necessary
to write a job.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Michele Tartara <>

e9cf6af0 11/08/2013 07:00 pm Klaus Aehlig

Set reason trail for derived opcodes

As the base parameters also includes the reason trail,
set it, if not set already, together with the other
base parameters in the case of an opcode expanding to
a list of opcodes.

Signed-off-by: Klaus Aehlig <>...

d9d1e541 11/08/2013 07:00 pm Klaus Aehlig

Add Luxi Request to pick up a job in the queue

During the transition to the new daemon layout, from step 2
onwards, luxid will write to the queue but masterd will trigger
the execution. Therefore, add a new luxi request to tell masterd
to pick up a job that has already been written to the queue....

fcd70b89 11/08/2013 07:00 pm Klaus Aehlig

Factor out functionality to pickup a job from the queue

The current restart procedure for masterd includes functionality
to pick up a job from the queue and restart it, if it hasn't been
started before. Move this functionality into a separate function
to be able to have the enqueuing be done by luxid....

5523732b 11/08/2013 07:00 pm Jose A. Lopes

Hs2Py constants: additional module jstore

Add constants from additional modules ('ganeti.jstore') to the Haskell
to Python constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

88ac4075 11/08/2013 07:00 pm Jose A. Lopes

Hs2Py constants: additional module errors

Add constants from module 'ganeti.errors' to the Haskell to Python
constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

67620dff 11/08/2013 06:59 pm Jose A. Lopes

Hs2Py constants: additional module qlang

Add constants from additional modules ('ganeti.qlang') to the Haskell
to Python constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

fbb05686 11/08/2013 06:57 pm Jose A. Lopes

Hs2Py constants: additional module luxi

Add constants from additional modules ('ganeti.luxi') to the Haskell
to Python constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

8ee9a4f0 11/08/2013 06:57 pm Jose A. Lopes

Eliminate unused constants

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

b5a3b24a 11/08/2013 06:57 pm Jose A. Lopes

Hs2Py constants: add 'UUID_REGEX'

Add constant 'UUID_REGEX' to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

30796ad6 11/07/2013 05:05 pm Klaus Aehlig

Readd nodes as online

Patch d0d7d7cf accidentally removed the offline-flag reset
when readding a node. Readd it.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Thomas Thrainer <>

fb62843c 11/07/2013 05:05 pm Klaus Aehlig

When verifying BRBD version, ignore missing values

When comparing for consistency of the DRBD versions, some
versions might not be available via RPC, typically, if the
node is offline. In this case, leave these nodes out of the
test, instead of failing with an internal python error....

64e92328 11/07/2013 04:20 pm Klaus Aehlig

Merge branch 'stable-2.8' into stable-2.9

  • stable-2.8
    Version bump for 2.8.2
    Update NEWS file for 2.8.2 release
    DRBD: ensure peers are UpToDate for dual-primary

Conflicts:
NEWS: trivial
configure.ac: ignore version bump on stable-2.8
lib/bdev.py: manually apply the part of commit...

73e15b5e 11/06/2013 12:25 pm Apollon Oikonomopoulos

DRBD: ensure peers are UpToDate for dual-primary

DrbdAttachNet supports both, normal primary/secondary node operation, and
(during live migration) dual-primary operation. When resources are newly
attached, we poll until we find all of them in connected or syncing operation....

cba1fce1 11/05/2013 03:31 pm Klaus Aehlig

Merge branch 'stable-2.10' into master

  • stable-2.10
    Fix documentation
    Replace all constant definitions with re-exports
    Prepare constants for automatic reexport
    Hs2Py constants: 'hvsParameterTypes' and 'hvsParameters'
    Fix indentation that triggers PEP8 error...
8dd23148 11/05/2013 02:57 pm Klaus Aehlig

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    Revision bump for 2.9.0
    Schedule release of 2.9.0
  • stable-2.8
    Improve error message for replace-disks

Conflicts:
NEWS: trivial
configure.ac: drop suffix bump of stable-2.9

Signed-off-by: Klaus Aehlig <>...

f9dfa8df 11/04/2013 05:52 pm Klaus Aehlig

Merge branch 'stable-2.8' into stable-2.9

  • stable-2.8
    Improve error message for replace-disks

Conflicts:
lib/cmdlib/instance_storage.py
Resolved by manually applying the node name to uuid
transition on the version of stable-2.9.

Signed-off-by: Klaus Aehlig <>...

34ea8da3 11/04/2013 05:30 pm Michele Tartara

Improve error message for replace-disks

In some conditions, replace-disks will fail if the disks are not properly
activated. Improve the error message suggesting to run activate-disks before
executing replace-disks.

Fixes Issue 606.

Signed-off-by: Michele Tartara <>...

ffab1490 11/04/2013 01:39 pm Jose A. Lopes

Replace all constant definitions with re-exports

Remove all constant definitions in 'lib/constants.py' and re-export
the module 'lib/_constants.py', which contains the generated
constants.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Michele Tartara <>

ba174485 11/04/2013 01:39 pm Jose A. Lopes

Prepare constants for automatic reexport

  • separate constants and non-constants in 'lib/constants.py' to make
    it simple to replace their re-export definitions with a single
    re-export statement at the begining of the module
  • fix access 'CONFD_REQFIELD_*' related constants in...
4dddf578 11/04/2013 01:39 pm Jose A. Lopes

Hs2Py constants: 'hvsParameterTypes' and 'hvsParameters'

Add constants 'hvsParameters' and 'hvsParameterTypes' to the Haskell
to Python constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Michele Tartara <>

b15d5bd3 10/31/2013 06:18 pm Petr Pudlak

Fix indentation that triggers PEP8 error

Signed-off-by: Petr Pudlak <>
Signed-off-by: Klaus Aehlig <>
Reviewed-by: Klaus Aehlig <>

bb133242 10/31/2013 12:46 pm Klaus Aehlig

Merge branch 'stable-2.10' into master

  • stable-2.10
    Remove FIXME + update man pages wrt iallocator
    Don't check for master netdev when using OVS
    Fix TypeError in backend/ConfigureOVS
    Create Open vSwitch on Master during Cluster init
    SimpleRetry on BlockDev.Remove()...
24711492 10/31/2013 11:28 am Dimitris Aragiorgis

Check if hotplug is supported in CheckPrereq

Introduce new RPC hotplug_supported that invokes the corresponding
hypervisor's method which checks if hotplug is generally
supported. Call this RPC early in CheckPrereq() and abort if
hotplug is not supported. Currently only KVM hypervisor with...

cabc869c 10/30/2013 03:30 pm Klaus Aehlig

Merge branch 'stable-2.9' into stable-2.10

  • stable-2.9
    (no changes)
  • stable-2.8
    Add all dependencies for confd as test dependencies
    Add snap-server to the test-relevenat packages
    Placate warnings on ganeti.outils_unittest.py

Signed-off-by: Klaus Aehlig <>...

a50b49b8 10/30/2013 02:58 pm Klaus Aehlig

Merge branch 'stable-2.8' into stable-2.9

  • stable-2.8
    Add all dependencies for confd as test dependencies
    Add snap-server to the test-relevenat packages
    Placate warnings on ganeti.outils_unittest.py

Conflicts:
configure.ac: take both additions (and fix)...

708f8301 10/30/2013 02:06 pm Helga Velroyen

Remove FIXME + update man pages wrt iallocator

This patch removes a FIXME regarding the retrieval
of the disk template for computation of the cluster
information for the iallocator. After examining the
code, I figured out that it is actually a quite
robust way to just check if the disk template is...

d5e9de7c 10/30/2013 11:35 am Sebastian Gebhard

Don't check for master netdev when using OVS

This patch disables checking if the given master_netdev exists during cluster
init.
When OVS is used, the needed Open vSwitch will be created later on (with
OpClusterPostInit) and is thus not available at this point of time....

a1578ccf 10/30/2013 11:35 am Sebastian Gebhard

Fix TypeError in backend/ConfigureOVS

In case of running into a failure during Open vSwitch creation, the error is
not given, but a TypeError is thrown. This is because the number of arguments
for the format string was not equal to the place holders.

This fixes the issue....

25ea5b98 10/30/2013 11:35 am Sebastian Gebhard

Create Open vSwitch on Master during Cluster init

Currently, Open vSwitch is only created on additional nodes, not on the master
itself.
This fixes the issue and creates and configures an Open vSwitch on the master
node during cluster init.

Signed-off-by: Sebastian Gebhard <>...

b3ae67d7 10/30/2013 11:03 am Dimitris Aragiorgis

SimpleRetry on BlockDev.Remove()

Sometimes, upon disk removal, corresponding file descriptors
are kept briefly open by various processes (hypervisor, blkid, etc.).
With this patch, we retry several times before raising the appropriate
error, thus making disk removal more robust against those corner cases....

5c5c73fd 10/29/2013 03:56 pm Thomas Thrainer

Add --compress option to instance_move

instance_move now supports the --compress option with which it's
possible to select the compression mode to use during the instance move.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

88acff3f 10/29/2013 03:56 pm Thomas Thrainer

Add possibility to compress to OpInstanceCreate

OpInstanceCreate now supports the 'compress' option. It allows to enable
compression during instance imports.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

258de3fe 10/29/2013 03:56 pm Thomas Thrainer

Honor compress parameter in remote backups

Use the specified compression mode not only for local exports, but also
for remote ones.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

8ca22fef 10/29/2013 03:56 pm Thomas Thrainer

Add --compress option to gnt-backup import

Add a new command line parameter to gnt-backup import and pass
its value to OpInstanceCreate. Also document the option in the
man page.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

0a6e6e6d 10/29/2013 03:56 pm Thomas Thrainer

Add --compress option to gnt-backup export

Add a new command line parameter to gnt-backup export and pass its value
to OpBackupExport. Also document the option in the man page.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

51d7ac96 10/29/2013 03:56 pm Thomas Thrainer

Support import with compressed instance moves

Support compressing instance data while sending it to the target node on
instance imports.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

896cc964 10/29/2013 03:56 pm Thomas Thrainer

Add local compression to OpBackupExport

OpBackupExport is extended by a compress parameter. This parameter
(either 'none' or 'gzip') controls if instance disks are compressed
before being sent over the network to the destination node.

Signed-off-by: Thomas Thrainer <>...

94ab995a 10/29/2013 03:56 pm Thomas Thrainer

Add --compress option to gnt-instance move

Add a new command line parameter to gnt-instance and pass its value to
OpInstanceMove. Also document the option in the man page.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

f198cf91 10/29/2013 03:56 pm Thomas Thrainer

Add possibility to compress to OpInstanceMove

OpInstanceMove now supports the 'compress' option. It allows to enable
compression for intra-cluster instance moves.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

3fd85fba 10/29/2013 03:56 pm Thomas Thrainer

Remove blockdev_export RPC

This RPC call is no longer used, as for intra-cluster instance moves the
import/export daemon is used too.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

a986a581 10/29/2013 03:56 pm Thomas Thrainer

Optimize dd parameters for instances moves

Benchmarks have shown that increasing the buffer size and disabling
synchronous output increased the throughput by about 10MiB/s, so make
those parameters the default.

Note that not using sync for output doesn't increase the risk of data...

063613aa 10/29/2013 03:56 pm Thomas Thrainer

Use import-export daemon for intra-cluster moves

This unifies the inter- and intra-cluster moves and the backup code, so
less code needs to be maintained.

Also fix failing tests for LUInstanceMove by following the code changes
in the tests.

Signed-off-by: Thomas Thrainer <>...

d29f52a6 10/29/2013 03:56 pm Thomas Thrainer

Use cluster variable consistently

The cluster object is already retrieved from the configuration, so use
it consistently in LUInstanceMove.CheckPrereq().

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

83266db6 10/29/2013 03:56 pm Thomas Thrainer

Correct comments

Correct comments which confuse the target node with the secondary node
of an instance in LUInstanceMove.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Klaus Aehlig <>

0b9175cb 10/28/2013 05:24 pm Petr Pudlak

Show the key in "'None' is not a valid Maybe value"

Currently the error message doesn't say which key is affected, which
makes it kind of useless.

Signed-off-by: Petr Pudlak <>
Signed-off-by: Klaus Aehlig <>
Reviewed-by: Klaus Aehlig <>

47c477c8 10/28/2013 04:53 pm Petr Pudlak

Add RpcResult.__repr__ for debugging

This way it's possible to easily log the whole result in a human
readable form.

Signed-off-by: Petr Pudlak <>
Signed-off-by: Klaus Aehlig <>
Reviewed-by: Klaus Aehlig <>

9c8f7bf4 10/28/2013 12:07 pm Helga Velroyen

Fix usage of xm/xl for gnt-instance modify --new-primary

This fixes issue 519. When calling 'gnt-instance modify
--new-primary', an exception was raised, because a
RPC call was not called with the right hypervisor
parameters which caused the backend function to crash,...

a49e7e0d 10/28/2013 12:05 pm Jose A. Lopes

Hs2Py constants: add 'hvcDefaults'

Add 'hvcDefaults' to the Haskell to Python constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

df2e0fa5 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'diskDtDefaults'

  • add constant 'diskDtDefaults' to the Haskell to Python constant
    generation
  • remove 2 local variables which were used only by 'DISK_DT_DEFAULTS'
    and are, therefore, no longer necessary

Signed-off-by: Jose A. Lopes <>...

a2b55ccd 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'value*' and 'niccDefaults'

  • add group of constants 'value*' and constant 'niccDefaults' to the
    Haskell to Python constant generation
  • add 'PythonNone' to represent the 'None' is Haskell to Python
    generated code

Signed-off-by: Jose A. Lopes <>...

07e30af5 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'ipolicyDefaults'

Add constant 'ipolicyDefaults' to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

cb23d0ca 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'mond' latest version

Add 'mond' latest version constant to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

44b1b622 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'sshDaemonKeyfiles'

Add constant 'sshDaemonKeyfiles' to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

93e2e44e 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'diskLdDefaults'

Add constant 'diskLdDefaults' to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

0e7126a1 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'ndcDefaults'

Add constant 'ndcDefaults' to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

47ea2344 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'becDefaults'

Add constant 'becDefaults' to the Haskell to Python constant
generation. An instance of 'PyValue' is added to the type 'PyValueEx'
in order to allow polymorphic types, namely, 'Map's.

Signed-off-by: Jose A. Lopes <>...

3a715da0 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'drbdValidBarrierOpt'

Add constant 'drbdValidBarrierOpt' to the Haskell to Python constant
generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

fa8d6aa7 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'dtsLvm'

Add constant 'dtsLvm' to the Haskell to Python constant generation.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

c549d1b6 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: remove useless constants

Remove unused constants from Python because they were only used by
constants which are currently generated, and move Python comment to
the Haskell side.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

e0007cf1 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: add 'daemonsExtraLogbase'

Add constant 'daemonsExtraLogbase' to the Haskell to Python constant
generation and update Python reference.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

c506f986 10/28/2013 12:04 pm Jose A. Lopes

Hs2Py constants: remove unused constant

Remove unused Python constant whose use was replaced by other
constants generated from Haskell.

Signed-off-by: Jose A. Lopes <>
Reviewed-by: Klaus Aehlig <>

9749f90b 10/25/2013 04:23 pm Thomas Thrainer

Fix default value for reason trail

The default value for the reason trail field used to be ht.EmptyList in
2.9 but was incorrectly changed to None in 2.10. This patch corrects
this error which fixes a bug in batch creation of instances.

Signed-off-by: Thomas Thrainer <>...

4f2f98f1 10/24/2013 12:27 pm Dimitris Aragiorgis

drive_del after device_del in disk hot-remove

This is needed so that qemu process really releases the
corresponding file descriptor and thus we can dmsetup/lvremove
the device without errors.

Signed-off-by: Dimitris Aragiorgis <>
Signed-off-by: Thomas Thrainer <>...

e15a00dc 10/24/2013 12:27 pm Dimitris Aragiorgis

Minor changes regarding hotplug support

  • Mention restrictions in NEWS
    - RBD userspace access mode
    - In case of a downgrade instances should suffer a reboot to be migrateable
  • Bypass interactive verification in NIC modifications via --force option
    - Mention it in man page...
51951d38 10/24/2013 12:27 pm Dimitris Aragiorgis

Fix in RPC

Use _SingleDiskDictDP() instead of _ObjectDict() for serializing
a disk.

Signed-off-by: Dimitris Aragiorgis <>
Signed-off-by: Thomas Thrainer <>
Reviewed-by: Thomas Thrainer <>

41a878b5 10/24/2013 12:27 pm Dimitris Aragiorgis

block_devices -> kvm_disks renaming

and a couple more styple fixes.
block_devices are misleading so rename them to kvm_disk (just like kvm_nics)

Signed-off-by: Dimitris Aragiorgis <>
Signed-off-by: Thomas Thrainer <>
Reviewed-by: Thomas Thrainer <>

50e0f1d9 10/24/2013 12:27 pm Dimitris Aragiorgis

Make hotplug related method raise HotplugError

Hotplug is not supported by default and thus we raise
HotplugError() for hotplug related methods.
If a hypervisor wants to support it, we must override VerifyHotplugSupport()
and implement the Hot* method.

Backend invokes VerifyHotplugSupport() and raises RPCFail if an...

43c6e76f 10/24/2013 12:27 pm Dimitris Aragiorgis

Some fixes in _GenerateKVMBlockDevicesOptions()

  • Add docstring.
  • fix missed usecase of boot_disk=False if kernel_path is given.
  • Use devlist arg in GenerateKVMBlockDeviceOptions()
    This is previously calculated in _ExecuteKVMRuntime()
    so there is no need to rerun the same command....
df58ca1c 10/24/2013 12:27 pm Dimitris Aragiorgis

Hotplug: client support

Add --hotplug option. Only used in OpInstanceSetParams.
If this is omitted, modifications become effective after reboot.

Ask user confirmation in case NIC modify + hotplug because it will
be done via removing old NIC (and the corresponding tap) and adding...

ba924970 10/24/2013 12:27 pm Dimitris Aragiorgis

Hotplug: cmdlib support

Hotplugging is done by functions invoked by ApplyContainerMods(). In
order hotplugging to take place the --hotplug option must be passed
otherwise the modifications will take place after reboot.

NIC hotplug supports add, remove and modify. The modify is done by removing...

ff5def9b 10/24/2013 12:27 pm Dimitris Aragiorgis

Return link_name in blockdev_assemble rpc

Until now this RPC returned only dev_path. Since we use it in
hotplug we have to know the simlink of the device so that we
pass it to the corresponding hypervisor command and include it
in block_devices entry in runtime files....