Statistics
| Branch: | Tag: | Revision:

root @ 34ad1d7c

# Date Author Comment
34ad1d7c 07/01/2013 10:52 am Klaus Aehlig

Remove obsolete TODO

Originally, hroller started as a tool for offline maintenance only.
There it made sense to warn about instances still running. By now,
default planning is to migrate instance off the nodes to be rebooted,
with options for other behavior (like pretending that all instances...

6676f007 06/28/2013 06:34 pm Klaus Aehlig

Allow customization of the chroot

As different users have different needs about the chroot, allow
customization in its build script. This is achieved as follows.
- The environment variable EXTRA_DEBIAN_PACKAGES is honored,
and the packages named there are additionally installed in...

f5263f86 06/28/2013 06:34 pm Klaus Aehlig

build_chroot: fix duplicate install

In the last change to the chroot build script, the
apt-get command 'install' was moved to the APT_INSTALL
macro; however, it was forgotten to remove it outside
the macro, causing an error, as there is no package
with name 'install'....

43ffd839 06/28/2013 04:00 pm Klaus Aehlig

build_chroot: use APT_INSTALL macro for packet installation

In this way, it is easier to change all the apt calls in the chroot.
In particular, this patch fixes the missing -y option for the installation
of the tools needed to build debian packages.

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

c31ec06b 06/28/2013 03:38 pm Bernardo Dal Seno

Don't exceed the standard PV size when growing a disk

With exclusive storage, PVs are supposed to be used only up to the
standard PV size.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Klaus Aehlig <>

8e5a911a 06/28/2013 03:38 pm Bernardo Dal Seno

Enable disk growth with exclusive storage

Disk growth is now supported also with exclusive storage, so we let the
operation continue.

Enable disk growth test in qa also with exclusive storage.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Klaus Aehlig <>

be9150ea 06/28/2013 03:38 pm Bernardo Dal Seno

Limit the PVs used for disk growth with exclusive storage

The exclusive storage flag is passed along in the backend functions for
disk growth. LVM volumes handles the flag by reusing the same PVs, as disks
are constrained by the number of their spindles....

e43a624e 06/28/2013 03:37 pm Bernardo Dal Seno

Add exclusive_storage to blockdev_grow RPC

The flag is passed to the RPC, but it's still ignored by noded.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Klaus Aehlig <>

3771161c 06/28/2013 02:23 pm Sebastian Gebhard

Design doc for openvswitch support

This patch includes the design document for openvswitch support

Signed-off-by: Sebastian Gebhard <>
Signed-off-by: Klaus Aehlig <>
Reviewed-by: Klaus Aehlig <>

397b7844 06/28/2013 01:20 pm Dimitris Aragiorgis

Make NIC setup more flexible in case of Xen

For every NIC write down a file that contains NIC's
info (MAC, mode, link, network details), that can
be sourced by any vif script. The file location is:
/var/run/ganeti/xen-hypervisor/nic/<domname>/<nicidx>.
...

4855760b 06/28/2013 01:20 pm Dimitris Aragiorgis

Refactor NIC configuration scripts

Add new script vif-ganeti that could be used instead of
default vif-bridge in order NIC customization can be more
flexible.

Extract common code from kvm-ifup and insert it in a new
file net-common that is being sourced by kvm-ifup and...

a4669456 06/28/2013 01:20 pm Dimitris Aragiorgis

Document vif-ganeti usage

In order to be able to use it as vif-script one has to
create a symbolic link inside /etc/xen/scripts pointing
to /usr/lib/ganeti/vif-ganeti and then add is a hypervisor
parameter.

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

0102e732 06/28/2013 12:46 pm Klaus Aehlig

Update design document for hroller

The requirement to be able to plan full node evacuation came up after
the initial design. So add a section describing the algorithm, if
full evacuation is requested.

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

9353adde 06/27/2013 12:32 pm Helga Velroyen

iallocator: storage processing accepts space_info structure

This is a small refactoring to make the processing of
the storage space information not accept a node info
result, but the more specific space info structure instead.

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

b82d7182 06/27/2013 12:08 pm Helga Velroyen

iallocator: get rid of MakeLegacyNodeInfo

So far, the iallocator makes a node info call, converts
the result into a legacy node info structure and then
retrieves various values from it. This patch removes
the call to MakeLegacyNodeInfo completely, by letting the...

0ac34c90 06/27/2013 12:08 pm Helga Velroyen

iallocator: factor out instance memory summation

The iallocator adjusts the free memory by a calculation
of how much memory is actually currently used by instances
on the node. This calculation is rather complicated and
deserves its own function to increase testability. No...

11aa3ca5 06/27/2013 12:08 pm Helga Velroyen

iallocator: extract storage info directly from node info

So far, the iallocator made a node info RPC call, converted
the result into a legacy node info format and then extracted
the storage information from that. This patch removes the
middle step of this procedure, skipping the legacy node info...

3dda8127 06/27/2013 12:05 pm Helga Velroyen

Make NodeInfo (hs) accept arbitrary storage types

So far, the Haskell implementation of NodeInfo just
requests storage information about volume groups.
With this patch, storage info for abitrary storage
types can be requested.

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

00839a42 06/27/2013 12:05 pm Helga Velroyen

Storage utility functions for Haskell

In order to extend the Haskell version of the NodeInfo
query, we need some utility functions to deal with
disk templates and storage types.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>

20529708 06/27/2013 12:05 pm Helga Velroyen

iallocator: computation of storage data

This patch extracts the processing of the storage-related
data from the RPC call 'node_info' in a separate function
to increase testability. In addition, this patch contains
unit tests for this function.

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

b844311b 06/27/2013 12:05 pm Helga Velroyen

rpc.py: override default storage type in node info

This patch changes the semantics of dealing with the result
of the RPC call "node_info" when converting them into a
LegacyNodeInfo. A legacy node info, can only hold storage
information about one storage type, which so far was always...

0f70b3fb 06/27/2013 12:05 pm Helga Velroyen

iallocator: factor out 'get_attr' method

This patch extracts an inline 'get_attr' method to extract
data from the result of the RPC call 'node_info'. It was so
far an inline function in the middle of a bigger method, which made
the code hard to read.

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

c9c4b92d 06/27/2013 12:05 pm Helga Velroyen

iallocator: prepare RPC call 'node_info'

This patch does a small refactoring in the allocator. It extracts
the preparation and actual call of the 'node_info' call into a
separate function. This is done for better testability. No functional
changes otherwise....

d71b0275 06/27/2013 12:05 pm Helga Velroyen

Typo in iallocator design doc

Signed-off-by: Helga Velroyen <>
Reviewed-by: Klaus Aehlig <>

ec4341d7 06/26/2013 05:01 pm Thomas Thrainer

Fix lint error

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

d101b7be 06/26/2013 03:34 pm Thomas Thrainer

Unset LV name if no LVM disk templates are enabled

If there are no LVM based disk templates enabled in QA, reset the LV
name after the corresponding gnt-cluster modify tests. Otherwise
gnt-cluster verify would complain about the missing volume group.

Also make sure that no disk templates requiring LVM are ever enabled...

0c2cfb97 06/26/2013 03:34 pm Thomas Thrainer

Skip drbd-usermode-helper test if DRBD is disabled

Changing the drbd usermode helper in gnt-cluster modify fails if DRBD is
not installed on the nodes. Thus skip this test if DRBD is not in the
set of enabled disk templates.

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

7e7af9ee 06/26/2013 03:34 pm Thomas Thrainer

Add route to VCluster network in vcluster-setup

This route is required on the Fedora test machine, as otherwise fping
would not work and hang forever.

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

f90a2d0c 06/26/2013 03:34 pm Thomas Thrainer

Replace tempfile by mktemp in QA code

The tempfile command only exists in Debian. In order to run the VCluster
QA also on Fedora, replace its use by mktemp.

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

dad226e3 06/26/2013 12:18 pm Thomas Thrainer

Merge branch 'stable-2.8' into master

  • stable-2.8:
    gnt-cluster info (py): add enabled disk templates
    Version bump to 2.8.0~beta1
    Change version numbers in documentation
    Fix issue with python coverage tests
    Merge branch 'stable-2.7' into stable-2.8...
e4b5f955 06/25/2013 10:55 am Guido Trotter

Merge branch 'stable-2.7' into stable-2.8

  • stable-2.7:
    Provide the right fix for the kvm_extra parameter
    NEWS and version updates for 2.7.0~rc3
    kvm: don't pass whole extra as a single argument
    For node queries allow short forms of host names
    Provide a special filter for host names...
a967416c 06/25/2013 10:03 am Guido Trotter

Provide the right fix for the kvm_extra parameter

With the previous adjustment the arguments were boxed into one extra
array. This actually makes the parameter work (with the same caveats).

The manpage is also updated with the limitations.

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

360e6c08 06/24/2013 06:01 pm Guido Trotter

kvm: don't pass whole extra as a single argument

If extra is longer than a single word passing it the way it was passed
won't work. Of course this solution is also only partial, as won't take
into account any form of quoting. :/

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

0e6b8229 06/24/2013 06:01 pm Guido Trotter

NEWS and version updates for 2.7.0~rc3

Time for a new release.

Signed-off-by: Guido Trotter <>
Reviewed-by: Klaus Aehlig <>

85218237 06/24/2013 05:11 pm Klaus Aehlig

For node queries allow short forms of host names

For node queries use the host-name filter instead of the simple
equality-based one.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Guido Trotter <>

0122b96d 06/24/2013 05:11 pm Klaus Aehlig

Provide a special filter for host names

For host names, usually short forms are used, e.g., node1 or node1.sub
instead of the full qualified node1.sub.example.com. Therefore comparing
node names only by equality is too restrictive. This patch provides an...

fe782deb 06/24/2013 03:41 pm Helga Velroyen

gnt-cluster info (py): add enabled disk templates

This fixes issue 485. In the python implementation of
the cluster config info, the enabled_disk_templates
were missing.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Guido Trotter <>

c632d3a5 06/24/2013 01:46 pm Thomas Thrainer

Fix node modify QA tests for large cluster

If the node count in a cluster exceeds the master candidate pool size
(which is 10 by default), it's no longer possible to remove the master
candidate role from a node without passing --auto-promote (even with
--force). This behavior is perfectly fine, but the TestModifyNode QA...

399ff733 06/24/2013 01:29 pm Michele Tartara

Version bump to 2.8.0~beta1

Signed-off-by: Michele Tartara <>
Reviewed-by: Thomas Thrainer <>

b031e99d 06/24/2013 01:29 pm Michele Tartara

Change version numbers in documentation

Some of the documents have the version number of Ganeti. This commit updates
it in preparation for the 2.8 version bump.

Signed-off-by: Michele Tartara <>
Reviewed-by: Thomas Thrainer <>

50119242 06/24/2013 11:16 am Weiwei Jia

Doc for GlusterFS Ganeti Support

This patch adds a design document for introducing GlusterFS Support in Ganeti.

Signed-off-by: Weiwei Jia <>
Signed-off-by: Michele Tartara <>
Reviewed-by: Michele Tartara <>

e03e445c 06/24/2013 10:16 am Michele Tartara

Fix issue with python coverage tests

The recently introduced check for python libraries required only for testing
(commit 27df5b736ef72b3b12c07f32d64dbac95fe7a5ba) was not correct. This
patch fixes the issue.

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

f2b58d93 06/21/2013 06:09 pm Thomas Thrainer

Merge branch 'stable-2.7' into stable-2.8

  • stable-2.7:
    Add a warning about the restriction of gnt-node evacuate
    Fix permissions of the queue archive dir
    Fix daemon QA tests
    grow disk: call SetDiskID before blockdev_getsize
    Catch DeviceCreationError unhandled exceptions...
bbf50ea0 06/21/2013 05:07 pm Guido Trotter

grow disk: call SetDiskID before blockdev_getsize

Missing this call caused blockdev_getsize to be called on the wrong
physical device, and fail.

This fixes Issue 497.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michele Tartara <>

1b3fbef6 06/21/2013 05:07 pm Guido Trotter

Catch DeviceCreationError unhandled exceptions

_CreateBlockDevInner is called twice in TLReplaceDisks. While this
should be fixed, right now this leaves the DeviceCreationError exception
unhandled, which causes a problem due to the fact that this exception...

91104b80 06/21/2013 04:28 pm Thomas Thrainer

Fix daemon QA tests

TestInstanceConsecutiveFailures now leaves the test instance in the same
state it got it.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Michele Tartara <>

27df5b73 06/21/2013 03:16 pm Michele Tartara

Disable python test if required libraries are missing

Some python libraries are only needed for the tests, but not for running
Ganeti. If those libraries are missing, just disable the Python tests.

Signed-off-by: Michele Tartara <>
Reviewed-by: Thomas Thrainer <>

a05018a9 06/21/2013 03:15 pm Michele Tartara

Better specify what packages to install

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

09bf829d 06/21/2013 03:14 pm Michele Tartara

Improve install guide

Add command for updating the list of cabal packages, before starting
installing them.

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

12443fb8 06/21/2013 03:08 pm Michele Tartara

Fix typo in the documentation index

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

864b57d7 06/21/2013 03:08 pm Weiwei Jia

Fix typos in the documentation index

This patch fixes some typos in the documentation index.

Signed-off-by: Weiwei Jia <>
Signed-off-by: Michele Tartara <>
Reviewed-by: Michele Tartara <>

cd30f3e6 06/21/2013 02:53 pm Michele Tartara

Update security document wrt confd access to SSL cert

The fact that confd has been given access to the server.pem certificate
needs to be described in the security document.

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

cb474ee4 06/21/2013 09:28 am Guido Trotter

Fix permissions of the queue archive dir

The permissions were set to 0740, but of course being a directory the
correct permissions are 0750.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michele Tartara <>

65914847 06/20/2013 06:31 pm Klaus Aehlig

Add a warning about the restriction of gnt-node evacuate

Even though gnt-node evacuate should be able to evacuate all instances
at once, this currently is not the case. Add a warning about this deficit
for the time being.

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

52e9bef0 06/20/2013 06:24 pm Thomas Thrainer

Add gnt-node migrate to QA

Make it possible to optionally run gnt-node migrate during QA.

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

4d33e134 06/20/2013 05:04 pm Thomas Thrainer

Convert instance indices to UUIDs in configuration

cfgupgrade replaces the occurences of instance names (where they are
used as index) with the instance UUID.

It also supports the inverse replacement, so downgrades are
supported too.

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

da4a52a3 06/20/2013 05:04 pm Thomas Thrainer

Index instances by their UUID

No longer index instances by their name but by their UUID in the cluster
config. This change changes large parts of the code, as the following
adjustments were necessary: * Change the index key to UUID in the configuration and the...

b691385f 06/20/2013 05:04 pm Thomas Thrainer

Node-UUID related cleanup

Some variables which hold node UUID's are renamed to reflect their
indent better.
Use cfg.GetNodeName(uuid) instead of cfg.GetNodeInfo(uuid).name where
appropriate.

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

9839902a 06/20/2013 04:23 pm Michele Tartara

Add tools for building deb packages to build_chroot

The chroot only had tools for building and testing Ganeti, but not for
building its Debian packages. They are added by this commit.

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

5e568fee 06/20/2013 03:37 pm Thomas Thrainer

Fix wrong assert

An assert wrongly verified that the node name instead of the node UUID
is in the set of locked nodes. This patch fixes this.

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

3be0f700 06/20/2013 03:27 pm Michele Tartara

Improve the final message of build_chroot

Give more precise instructions on the next steps to actually run the
chroot.

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

d1068153 06/20/2013 03:27 pm Michele Tartara

Make build_chroot self-contained

The configuration file are included in build_chroot, and are
automatically created by the script if it is not able to find them
already in the directory pointed by $DATA_DIR.

Note that the configuration file directory is cleaned if it's temporary,...

1f3096c2 06/20/2013 02:52 pm Thomas Thrainer

Fix testGetHvDefaults testcase

The introduction of the migration_mode parameter to the fake hypervisor
broke the testGetHvDefaults. This patch fixes this by taking the default
parameters of the fake hypervisor into account.

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

4665b94f 06/20/2013 02:52 pm Thomas Thrainer

Fix instance add for missing node specs

Don't pass None to cfg.GetNodeNames. Instead, only resolve the node
names if it's sure that the UUID list is valid.

This fixes issue 495.

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

0cac64ac 06/20/2013 02:46 pm Klaus Aehlig

Merge branch 'stable-2.8' into master

  • stable-2.8
    In tiered allocation, cut non-promising shrinking tries
    Add confd user to masterd group

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

2c4f480d 06/20/2013 01:34 pm Thomas Thrainer

Skip Xen monitoring QA for non-Xen clusters

Instead of asserting that the Xen instance status collector fails for
non-Xen clusters just skip the test completely.
Otherwise QA would fail for non-Xen hypervisors if Xen happens to be
installed on the cluster as well....

d76880d8 06/20/2013 01:34 pm Thomas Thrainer

Add support to migration_mode in fake HV

The fake hypervisor pretends to support migration, but did not support
the migration_mode parameter yet. As this parameter is required during
instance migrations, support for it is added in this patch.

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

d06e7b3b 06/20/2013 01:34 pm Thomas Thrainer

Adapt VCluster script to current situation

vcluster-setup is adapted to the current Ganeti command line arguments.
Also, a bug for diskless instances in qa_instance is fixed.

Signed-off-by: Thomas Thrainer <>
Reviewed-by: Michele Tartara <>

9b0e86e2 06/20/2013 10:34 am Thomas Thrainer

Check DRBD status in cluster verify

If the status of DRBD disks is degraded or in a faulty state, issue an
error in cluster verify.

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

91cdc18f 06/20/2013 10:33 am Michele Tartara

Add confd user to masterd group

The server.pem file is 0440 (materd_uid, masterd_gid) and cannot be
accessed by confd.

This patch contains a workaround for 2.8.0~beta1 (adding conf to the
masterd group in the user setup tool, and remembering the users to...

f9e7e331 06/20/2013 08:12 am Klaus Aehlig

In tiered allocation, cut non-promising shrinking tries

The heuristics for tiered allocation has been improved in that it
chooses to shrink such a resource next where by shrinking only this
resource a valid allocation can be made, if such a resource exists....

271d03ff 06/19/2013 01:55 pm Klaus Aehlig

Merge branch 'stable-2.8' into master

  • stable-2.8
    (no changes)
  • merged from stable-2.7
    More agressively line break man pages

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

ea2ee4b0 06/19/2013 12:36 pm Michele Tartara

Version bump to 2.9.0~alpha1

Bump the version number to 2.9.0~alpha1.

This also requires updating version numbers in cfgupgrade tool.

Furthermore, a data file for test representing a 2.8 configuration had the
version number set to 2.7 in order to prevent tests failing while the current...

b22106d7 06/19/2013 12:16 pm Klaus Aehlig

Merge branch 'stable-2.7' into stable-2.8

  • stable-2.7
    More agressively line break man pages

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

bb935d8d 06/19/2013 11:24 am Thomas Thrainer

Fix reference to NodeInfo.name

This fixes a bug introduced during the move from node names to node
UUIDs as indexes.

Also, a typo is corrected.

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

f5c4553b 06/18/2013 06:24 pm Michele Tartara

Merge branch 'stable-2.8' into 'master'

  • stable-2.8
    Version bump to 2.8.0~alpha1
    Make cfgupgrade idempotent
    Update config version number when downgrading
    Add test for shrink heuristics over different resources
    Improve hspace shrinking strategy...
0cbeecdf 06/18/2013 04:29 pm Klaus Aehlig

More agressively line break man pages

Newer versions of pandoc (as, e.g., shipped with Ubuntu 13.04)
more agressively quote, in particular minus signs. That sometimes
leads to unintended line breaks, which are a problem, if the new
line starts with a dot....

33bff17b 06/18/2013 01:45 pm Michele Tartara

Version bump to 2.8.0~alpha1

Now that alpha versions are supported, we can bump the version number
for branch stable-2.8 to 2.8.

This also requires updating the cfgupgrade tool.

Thanks to the previous patches, all the other documents can be upgraded
during the alpha lifetime, before switching to beta (that will enable...

9bd2f449 06/18/2013 11:14 am Helga Velroyen

Revert "Storage utility functions for Haskell"

This reverts commit
88d27b8aa8adc2e5ced773909f1d40812c5a6ea7.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>

4b763320 06/18/2013 11:14 am Helga Velroyen

Revert "Make NodeInfo (hs) accept arbitrary storage types"

This reverts commit
e89525a859b2e841c08fce506c0b68b97c7efe61.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>

f2e4363c 06/18/2013 11:12 am Michele Tartara

Make cfgupgrade idempotent

One of the unit tests checks whether cfgupgrade's downgrade option is
idempotent. It is, but a version number check made it impossible to
actually downgrade multiple times.

With this change, both the current-version version number and the...

77018a43 06/18/2013 11:11 am Michele Tartara

Update config version number when downgrading

The downgrade option of the cfgupgrade tool was not changing the version
number in the configuration file of the cluster while performing the
downgrade.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

e89525a8 06/17/2013 08:33 pm Helga Velroyen

Make NodeInfo (hs) accept arbitrary storage types

So far, the Haskell implementation of NodeInfo just
requests storage information about volume groups.
With this patch, storage info for abitrary storage
types can be requested.

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

88d27b8a 06/17/2013 08:33 pm Helga Velroyen

Storage utility functions for Haskell

In order to extend the Haskell version of the NodeInfo
query, we need some utility functions to deal with
disk templates and storage types.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>

c5f6cba2 06/17/2013 08:32 pm Helga Velroyen

Rename directory 'Block' to 'Storage'

This patch renames the 'Block' directory to 'Storage' in
the Haskell code base. The same rename was done in the
python code base earlier this quarter. We generalize the
name, because we needed a place for general storage...

f624a8eb 06/17/2013 05:37 pm Klaus Aehlig

Add test for shrink heuristics over different resources

In this example, memory prevents adding more than one instance on
the first node. Yet, on the other nodes, 2 instances can be placed
each, if disks are shrunk appropriately. This, however, requires
to courageous decision to shrink disks next, even though more nodes...

20d2476e 06/17/2013 05:36 pm Klaus Aehlig

Improve hspace shrinking strategy

In tired allocation, hspace shrinks that resource of the instance
next, that causes failure on most nodes. While, this is not a bad
strategy in general, it can lead hspace into a dead end if for a large
number of nodes a particular resource blocks any further allocation of...

b1c772fd 06/17/2013 05:36 pm Klaus Aehlig

Convenience function for iterating while the result is Ok

For a function f :: a -> GenericResult a, iterate it (in the sense of the
monad), until the result is Bad; return the list of values occurred.

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

b74ebe44 06/17/2013 05:36 pm Klaus Aehlig

Provide witness for the sum-type structure of GenericResult

GenericResult, while rightfully a type of its own, is isomorphic
to Either. So, also provide the case analysis function (i.e., the
universal arrow out of the sum).

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

02312a1a 06/14/2013 03:05 pm Michele Tartara

Disable more version checks for alpha versions

Alpha versions should not check for version numbers in READMEs
and documentation.

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

a71afd47 06/14/2013 03:05 pm Michele Tartara

Allow alpha versions not to have an entry in the NEWS file

Alpha versions are still under heavy development, and can therefore not have an
entry in the NEWS file yet. The entry will have to be added before switching to
the first beta version.

Partially fixes Issue 448...

00734cae 06/14/2013 03:04 pm Michele Tartara

Add tests for check-news

Unit tests verifying the behaviour of the check-news script are added.

This required adding a new make target, "autotools-check" directly called from
"commit-check", because the usual tests are executed in the build directory,
whereas these, being relative to the autotools, cannot be executed there because...

77721d8b 06/14/2013 03:04 pm Michele Tartara

Introduce support for alpha versions

An alpha version can be used to name a release while a previous one is still
being developed.

E.g. 2.9.0~alpha1 can be out while 2.8.0~rc1 is being worked on.

When a version is marked as alpha, it is allowed to have unreleased versions...

dadc7864 06/14/2013 03:04 pm Michele Tartara

Improve docstring

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

5f5dd119 06/14/2013 03:04 pm Michele Tartara

Fix bug in Makefile.am

There was a typo in the name of the script for launching offline tests.

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

32389d91 06/14/2013 02:43 pm Helga Velroyen

Refactor NodeInfo RPC regarding storage reporting

The NodeInfo RPC call is refactored to handle now more than
just storage reporting for volume groups.

Since NodeInfo now returns storage space information not
necessarily for volume groups, but also for other storage...

683335b3 06/14/2013 02:43 pm Helga Velroyen

Utility functions for storage types

Handling various storage types for the free space reporting
requires some utility functions. They will be invoked in
later patches. Unit tests are included.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>

13669ecd 06/14/2013 02:43 pm Helga Velroyen

Integrate free space reporting for file storage

This patch integrates the free space reporting for file
storage. So far, it is only called, when the default
disk template is a file-based disk template ("file" or
"sharedfile").

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

f39a8d14 06/14/2013 02:43 pm Helga Velroyen

Unit tests for ApplyStorageSpaceFunction

So far, the function 'ApplyStorageSpaceFunction' was not
covered by unit tests. Before the integration of space
reporting for file storage, we add those missing tests.

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

e798d484 06/14/2013 02:43 pm Helga Velroyen

Renamining space reporting for file storage

Before being integrated, the function for space reporting
for file storage is renamed to a more expressive name.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Thomas Thrainer <>