Statistics
| Branch: | Tag: | Revision:

root / Makefile.am @ 61899e64

History | View | Annotate | Download (49 kB)

# Date Author Comment
105f0d47 11/13/2012 10:21 pm Michael Hanselmann

Add new test for RAPI

Unlike existing tests, this actually tests RAPI at the interface with
the HTTP server. This way authentification can also be tested. A test
for “/2/query/…” is included as it's a bit special.

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

39f0eea5 11/13/2012 03:42 pm Iustin Pop

Automatically enable version-dependent GHC flags

Some GHC flags are very useful, but only appear in more recent GHC
versions. To support the use of such flags while still supporting
older compilers, let's add conditional checks and enabling based on
the results....

43b3b5c1 11/13/2012 01:38 pm Michele Tartara

Added attoparsec unit test for Unicode parsing

Attoparsec is known to have had issues with parsing non-ASCII strings.
This test makes sure that parsing of Unicode characters works fine.

Signed-off-by: Michele Tartara <>
[iustin: small doc string fixes]...

6376dcc0 11/13/2012 10:29 am Iustin Pop

Improve make regen-vcs-version

"make regen-vcs-version" is run at every ./devel/upload time, in order
to have reasonably up-to-date information in the uploaded
scripts/binaries. However, this means it currently triggers
recompilation of (at least) Ganeti/Version.hs, and sometimes more than...

cdc2392b 11/08/2012 02:58 pm Iustin Pop

Rename Confd.hs to Confd/Types.hs

This should be the last module rename, promise!

We rename this to conform to the other hierarchies (e.g. Query), and
to not have both Confd.hs and Confd/*.hs.

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

b9612abb 11/07/2012 03:06 pm Iustin Pop

Merge branch 'devel-2.6' into submit

  • devel-2.6:
    Fix compatibility with newer Haskell libraries
    Fix gnt-instance console with xl

Conflicts:
Makefile.am (reordering, fixed)
htools/Ganeti/Confd/Server.hs (hlint fixes on master)
htools/Ganeti/Daemon.hs (hlint)...

27639c4e 11/07/2012 02:08 pm Iustin Pop

Merge branch 'stable-2.6' into devel-2.6

  • stable-2.6:
    Fix compatibility with newer Haskell libraries
    Fix gnt-instance console with xl

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

f9435bdc 11/07/2012 02:07 pm Iustin Pop

Switch devel/upload to a static file

We had twice in the past days questions about devel/upload being
"broken", since bash re-reads shell scripts during their run and this
file can get regenerated due to Makefile changes.

Since we only need this to be dynamically built for 3 variables, let's...

1f5557ca 11/06/2012 08:01 pm Guido Trotter

Fix gnt-instance console with xl

- Rename xm-console-wrapper to xen-console-wrapper
- Pass the xen command to use as a parameter

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

8a670753 10/26/2012 05:27 pm Michael Hanselmann

Remove setup-ssh

It has been superseeded by “prepare-node-join”.

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

879d9290 10/26/2012 03:05 pm Iustin Pop

Move htools backends to a separate directory

Five modules under the HTools/ directories are backend
implementations, so let's move them to a separate directory, to more
clearly show the hierarchy. I wanted to do this for a while, but
merging between branches is always an issue, so let's do it know since...

f51eacf3 10/26/2012 02:22 pm Iustin Pop

Add a simple unittest for THH code

This is very THH specific, and applies to all serialisations generated
by THH, so I'm adding it in its own module.

Probably we should add some more generic tests, but in general THH
code is tested by the various definitions; this new field type however...

cd93a0ec 10/25/2012 06:47 pm Iustin Pop

Remove unused cache implementation

Note that this commit has no Makefile.am changes, as the files were
not actually used. So it's better to actually remove them.

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

7a07475f 10/25/2012 02:32 pm Iustin Pop

Add a default `.ghci' file

This options file for ghci preseeds the correct include paths, so that
interactive sessions don't need to always pass these args.

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

ef3ad027 10/25/2012 12:38 pm Iustin Pop

Add an Errors module mirroring the Python one

As described in the module doc string, while writing this it dawned
upon me that we're mixing all errors together into a single hierarchy
(well, type on the Haskell side), which is not good. Some errors are
used purely within noded, some in the CLI frontends, etc. so these...

d55b80b0 10/24/2012 03:01 pm Guido Trotter

Add small design for Linux HA integration

This documents the status (or wanted status) of some example ocf modules
I've written for Ganeti. They are far from perfect, but they should be
shipped as a starting point for other people who want to run this to...

335ba60d 10/24/2012 10:43 am Guido Trotter

Replace LIBDIR in .in files

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

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

Add initial implementation of prepare-node-join

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

141c8421 10/22/2012 06:42 pm Michael Hanselmann

Find coverage during configure, issue with Debian package

- Debian Squeeze and up have a package named “python-coverage”, but it
doesn't use the same binary name as upstream (“coverage”).
- Said package includes a patch to use symlinks instead of file copies...

37519c09 10/22/2012 06:19 pm Iustin Pop

Add a new 'really-all' make target

This is used when one wants to build all binaries, including those
that are used only for testing. A handy shortcut to make sure all
binaries can be built.

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

109e07c2 10/18/2012 02:38 pm Guido Trotter

Add cluster monitoring agent design document

This design addresses the lack of a uniform way to query ganeti nodes
for real time information that can be used by monitoring.

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

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

Merge branch 'devel-2.6' into master

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

Add hbal-excl-tags.data to Makefile.am, missed in 0397694

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

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

gnt-job cancel: Confirmation and selection of jobs

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

2ff01d78 10/16/2012 06:13 pm Michael Hanselmann

Design for remote command execution via RPC

This is a first design for executing commands via RPC.

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

04c998a5 10/16/2012 06:13 pm Michael Hanselmann

Makefile: Verify version of security.rst document

This document should be kept up-to-date.

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

19e21a6c 10/16/2012 03:14 pm Iustin Pop

Add a very simple test rpc program

This only supports test delay for now, is not built by default (only
on demand), and is also not installed anywhere.

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

4ab40ed5 10/16/2012 03:14 pm Iustin Pop

Add htools program code to hlint call

Currently only the libraries are added, but not the actual main binary
(usually short) code.

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

f98efa98 10/16/2012 01:06 pm Michael Hanselmann

Add design for changing node SSH setup

The goal is to remove the dependency on Paramiko.

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

fc07a14e 10/12/2012 12:37 pm Michael Hanselmann

Fix distcheck after commit 7a962ec

I only ran “make check” and forgot about “distcheck”.

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

7a962ecc 10/12/2012 11:37 am Michael Hanselmann

Makefile/check-local: Ensure design document exists

This way a missing design document is detected.

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

97aac894 10/12/2012 11:37 am Michael Hanselmann

Add design document for version 2.7

- Move design document for batch instance creation into it
- Sort list of hidden files in index.rst

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

18049dad 10/11/2012 01:03 pm Iustin Pop

Cleanup haddock documentation a bit

While grepping for htools imports in the non-htools subdirectory, I
saw that our haddock prologue and title are very very old and refer to
the old htools-only state. Let's cleanup a bit…

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

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

Merge branch 'devel-2.6'

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

Merge branch 'stable-2.6' into devel-2.6

  • stable-2.6:
    verify-disks: Explicitely state nothing has to be done
    Add list of design documents implemented in version 2.6
    Better list of replace-disks arguments + typos fixed
    jqueue: Look at archived jobs when watching...
21a5e56c 10/10/2012 02:43 pm Iustin Pop

Improve Haskell configure options and detection

This patch cleans up the Haskell library detection and defaults.

First, it makes the base compiler/libraries required, per the email discussion.

It then adds two new small autoconf macros, on to check for a required...

40309ed7 10/10/2012 02:22 pm Michael Hanselmann

Add list of design documents implemented in version 2.6

Each version should have its dedicated list.

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

46118ed2 10/08/2012 02:09 pm Iustin Pop

Merge ganeti-master-cleaner back into ganeti-cleaner

As I wrote during/after the review on commit 2958c56, “ganeti-cleaner:
Separate queue cleaning code”, while I appreciated the permission
separation, I didn't like too much the file-based approach:

- it is a very simple script, and lots of the code is duplicated...

f8d01158 10/08/2012 02:06 pm Iustin Pop

Enable bash completion for Haskell daemons too

This requires a few tiny changes to build-bash-completion and to
Makefile rules, but is straightforward.

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

dad26941 10/08/2012 12:52 pm Iustin Pop

A few cleanups in Makefile.am

A lot of the lists in Makefile.am were not sorted properly (or at
all); let's sort them for more sanity.

Additionally, check-local used to spew this big shell block, even
though it does emit nice messages when failing, so we don't need to...

6b84f036 10/08/2012 12:39 pm Iustin Pop

Fixup TAGS generation with newer GHC

Newer GHC refuses to allow "-O" with interactive mode, so let's filter
that out. Furthermore, sometimes you don't have a clean tree exactly
when you need to look up something/update the tags, so let's filter
out the "-Werror" too....

26d62e4c 10/08/2012 12:35 pm Iustin Pop

Rename Ganeti/HTools/Utils.hs to Ganeti/Utils.hs

This is, I believe, the last non-htools specific file that still lived
in the htools directory; it's already widely used in non-htools code,
so let's move it before we add more functionality to this module....

4ff32a35 10/05/2012 03:16 pm Bernardo Dal Seno

Design doc for partitioned Ganeti

Partitioned Ganeti allows to assign node resources in an exclusive manner,
in order to limit interference between instances running on the same nodes.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

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

Remove option to select the Python version of confd

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

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

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

Remove the python confd server side code

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

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

ab171697 10/02/2012 08:41 pm Michael Hanselmann

Add first version of virtual cluster documentation

- Add document describing virtual clusters
- Non-root clusters are not yet described, will be done in another
patch
- Change title of design document to avoid confusion

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

7ebadeb3 10/02/2012 01:34 pm Bernardo Dal Seno

Always distribute ganeti.utils.io_unittest-runasroot.py

Tests that depend on fakeroot were not distributed in the tarball created
by "make dist" when fakeroot was missing. Now all tests are distributed,
and a warning is printed when a test requires fakeroot but fakeroot is...

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

ganeti-cleaner: Separate queue cleaning code

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

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

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

Stop hardcoding root user

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

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

Cleanup of build-time shell variable replacements

Instead of having a different set in (almost) every shell script, this
inserts the most commonly used variables at build time. This way the
code for injecting a root directory for virtual clusters also is just...

e5afb848 09/27/2012 07:09 pm Michael Hanselmann

Fix distcheck after commit 29386d3ee

Missing backslash.

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

29386d3e 09/27/2012 06:26 pm Michael Hanselmann

Add vcluster-setup utility

This utility can be used to configure an environment for a virtual
cluster. It sets up entries in /etc/hosts, creates the necessary
directory structure, and generates helper scripts.

Documentation for virtual clusters will come in a later patch....

40246fa0 09/26/2012 07:34 pm Agata Murawska

NodeGroup query in Haskell

Implementation of nodegroup queries in Haskell. This is not yet
complete as we are missing merged disk parameters and option
want_diskparams is not implemented.

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

ada0e680 09/26/2012 02:19 pm Iustin Pop

Enable bash completion for htools scripts

This patch ties together the previous commits, by extending
build-bash-completion to call all htools scripts and get their
completion information, then use that to build fake cli_options
representing them and finally generate the bash completion...

92886204 09/25/2012 03:19 pm Michael Hanselmann

Add tests for bash completion

Given the number of settings that need to be controlled a plain bash
script was a better choice over shelltestrunner. Just a few completions
are attempted, but among them should be the most critical ones (e.g.
“gnt-instance add --node …”....

33b4fa9f 09/24/2012 02:48 pm René Nussbaumer

Adding some fundamental unittests for iallocator

This test covers the bug fixes found in the previous two patches

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

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

Add new module for virtual clusters

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

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

e80aeb89 09/19/2012 06:12 pm Michael Hanselmann

bash_completion: Generate more compact version

First the numbers:
$ stat --format '%s %n' doc/examples/bash_completion*
77847 doc/examples/bash_completion
86492 doc/examples/bash_completion-debug

The non-debug version doesn't use indentation and does not have some...

9eeb0aa5 09/18/2012 06:11 pm Michael Hanselmann

Use autoconf-based paths from Haskell instead of constants

Future changes will change Path.hs to use an environment variable.

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

3329f4de 09/18/2012 05:58 pm Michael Hanselmann

constants: Move most paths to separate module

This is inpreparation for the implementation of virtual clusters. Many
paths will change based on an environment variable and are no longer
constant and should no longer be in “constants.py”. Since “constants.py”...

0fcd0cad 09/12/2012 12:27 pm René Nussbaumer

Refactor IAllocator code

The IAllocator class was handling all the requests on its own, passing
in parameters on top level which works, but is hard to maintain and not
flexible.

With the upcoming change to the IAllocator for MultiAllocate we can't
use the toplevel parameters anymore. Therefore, we refactor the code...

32683096 09/12/2012 12:27 pm René Nussbaumer

Make the slots functionality more modular

As we will introduce another set of containers using the slots trick
we abstract away as much as possible to separate bases classes. The
child classes then adapt them for their needs. This leads to less code...

51000365 09/05/2012 05:31 pm Iustin Pop

Rework CLI modules and tests

While investigating how we could test the Daemon.hs module, I realised
that we have a very, erm, sub-optimal situation:

- HTools/CLI.hs has a nice IO/pure separation testing in cmdline
parsing, which allows some basic functionality to be tested, but...

90171729 09/05/2012 05:31 pm Iustin Pop

Add query filter tests

These tests are node specific only because we don't have other query
types implemented yet, but what they actually test is the various
filter types.

The tests are trying to cover most filter functionality; missing for
now is proper checking for ContainsFilter and TrueFilter, the rest...

b9bdc10e 09/05/2012 05:18 pm Iustin Pop

Add some unittests for node queries

These new tests check that:

- no known fields return unknown
- any unknown field returns unknown
- the type of the fields is consistent between the getters and the
field definition
- the length of each result row corresponds with the number of fields...

1493a93b 09/05/2012 04:58 pm Iustin Pop

Add unittests for the BasicTypes module

This adds test properties for the various laws that the instances of
Result should follow; I could not find (offline) laws about `mappend',
but otherwise I implemented all laws that I could find.

Note that we have to silence hlint warnings for the things we want to...

2997cb0a 09/05/2012 03:33 pm Iustin Pop

Move Version.hs up from under HTools/

This is another module that is generic, and not htools-specific.

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

662de722 09/05/2012 01:49 pm Iustin Pop

Two tiny makefile fixes

During the recent moves and renames, two things have slipped through,
since I didn't run make check-local…

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

b88fcdd0 09/04/2012 05:25 pm Iustin Pop

Remove QC.hs and replace it with an auto-generated file

In order to have correct code coverage results, we must somehow import
all production modules into the test runner. Until now, this was done
manually (when we didn't forget) in QC.hs.

To improve the situation, we remove QC.hs and replace it with an...

51309138 09/04/2012 05:25 pm Iustin Pop

Split the Makefile variable HS_LIB_SRCS

This currently holds both production files and test files; since we
want to treat these separately, let's split the variable in two, and
introduce another one for the old, inclusive one.

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

2d87bd0a 09/04/2012 04:51 pm Iustin Pop

Split last two remaining tests from QC.hs

This makes QC.hs obsolete, but we will remove it in a later patch,
once we automatically build a file with all the imports (to ensure
correct coverage results).

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

f3baf5ef 09/04/2012 04:51 pm Iustin Pop

Move JSON.hs and Compat.hs out from under HTools/

These two files are not htools-specific, so let's move them out of the
HTools subdirectory/module hierarchy and directly under Ganeti.

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

e1ee7d5a 09/04/2012 04:51 pm Iustin Pop

Split most HTools test code into separate files

Except for Ganeti.HTools.JSON, which needs rename, we split all the
other test suites into separate files.

We have to add another common test helper, due to import dependencies
(sigh), but otherwise this split is pretty straightforward....

aed2325f 09/04/2012 04:50 pm Iustin Pop

Split Luxi, Qlang, Ssconf and OpCodes tests

… from QC.hs into their own files, again mirroring the production code
source tree.

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

305e174c 09/04/2012 04:50 pm Iustin Pop

Split Rpc tests from QC

This required lots of other code moves, so I created it as a
standalone patch.

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

2733df51 09/04/2012 04:50 pm Iustin Pop

Split one more module out of QC and add test helpers

This splits the confd/utils tests, and adds the TestCommon module for
shared test code.

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

e5a29b6c 09/04/2012 04:50 pm Iustin Pop

Split out Objects.hs from QC.hs

This is the first file split out from QC.hs - an easy one, since it
has just one test.

The patch changes the way we build hpc excludes, since now we'll have
many modules that need to be excluded, and hpc doesn't seem to be able...

e4cc4c11 09/04/2012 04:50 pm Iustin Pop

Move the unittest helper to a new Test/Ganeti dir

This patch starts the move of the test haskell code from
`htools/Ganeti/HTools/' to its more proper place of
`htest/Test/Ganeti'.

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

189b51fa 09/04/2012 04:50 pm Iustin Pop

Move generated htools test stubs to htest/

This moves the last (I think) htools-related bits out of test/ under
htest/.

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

b8a9c7f2 09/04/2012 04:50 pm Iustin Pop

Move shelltests from test/ to htest/shelltests/

This is another rather trivial patch, moving all the (htools)
shelltests to their own directory.

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

8feabc89 09/04/2012 04:49 pm Iustin Pop

Move htools test files from test/data/htools to htest/data

Following up on the program moves, we now move the test data files.

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

f0f3a6df 09/04/2012 04:49 pm Iustin Pop

Move haskell test code to htest/

This is the first commit of a series that will attempt to cleanup the
test code organisation, which evolved somewhat organically from the
initial pure htools functionality.

The proposed organisation of the tree will be as follows:...

4cab6703 09/04/2012 02:00 pm Iustin Pop

Rename the Qlang and Queryd modules

Per the new query module hierarchy, rename Qlang to Query/Language and
Queryd to Query/Server. This way, all query-related functionality is
now "contained" in the Query/ directory.

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

8a65c02b 09/04/2012 02:00 pm Iustin Pop

Add filtering support in Query

This adds basic infrastructure for filtering (fully functional except,
as usual, for runtime data), and then uses it for node queries.

Since the filtering exports regex matching as an external
functionality, we have to use a regex library. There are many flavours...

e53decc1 09/03/2012 06:32 pm Guido Trotter

Merge branch 'devel-2.6'

  • devel-2.6:
    Instance autorepair design

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

68640987 09/03/2012 06:08 pm Guido Trotter

Instance autorepair design

This design describes a tool that will perform automatic repairs on
instances when they are detected to be unhealthy (living on offline or
drained nodes, at the moment). These repairs can be scheduled
automatically or requested as a one-off by a tool or person....

046fe3f5 09/03/2012 04:52 pm Iustin Pop

Add Query support for Nodes (no filtering, no RPC)

This is the initial support for Query2: basic infrastructure (except
filtering) and node query support (without RPC).

It implements all the fields (tests by comparison with list-fields on
the Python side), except that:...

4cbe9bda 09/03/2012 04:45 pm Iustin Pop

Stub query2 call integration into QueryD

This patch corrects the definitions in Qlang.hs to match what Python
expects on the wire; this means replacing some manual data type
definitions with 'buildObject' so that we get serialisation (and field
names) for free, adding (manually) JSON instances for types which are...

62377cf5 08/28/2012 06:16 pm Iustin Pop

Reduce some more code duplication and split code

The Qlang module defines ResultStatus, but it was already defined in
Ganeti/Luxi.hs; let's remove the duplicate definition from there since
the proper place is in the newer module.

Also, in order to ease testing, we split some confd functions into a...

42ab9ac4 08/28/2012 06:00 pm Iustin Pop

Add configure-time switch for split queries

And expand cli.GetClient() to allow opening the query socket, instead
of the main master socket.

Finally, enable the query socket use in gnt-cluster version, since
that is already implemented fully in Queryd.hs/hconfd....

dc6a0f82 08/28/2012 06:00 pm Iustin Pop

Rename Query2.hs to Qlang.hs

While starting to use the new filter types, I realised that what is
currently implemented is the equivalent of `lib/qlang.py', not
`lib/query.py', since we only deal with data types for now and not the
actual query runtime functionality (RPC, config, etc.)....

2cdaf225 08/28/2012 05:59 pm Iustin Pop

Re-enable standard hlint warnings

Commit 5a1e31b4 (Add infrastructure for, and two extra hlint rules)
was intended to add two extra hlint rules, but I didn't realise at
that time that "--hint" when first used overrides the built-in
lints. As such, since then we were basically running with just those...

25b54de0 08/28/2012 05:59 pm Iustin Pop

Initial query daemon implementation

This is just a new module that exports a runQueryD function, that can
be imported to run a separate thread handling the luxi requests.

Currently it needs access just to the configuration, in the future it
will need access to an RPC runner too....

d4709cce 08/28/2012 12:56 pm Agata Murawska

Datatypes for haskell RPC calls

We introduce typeclasses for RPC call and result and create a typeclass
that binds the two together. For that we need to use
MultiParamTypeClasses and FunctionalDependencies language pragmas, which
allow us to ensure that RPC result type can be deduced based on the...

951accad 08/27/2012 05:18 pm Iustin Pop

Merge branch 'devel-2.6'

  • devel-2.6:
    Make stable-2.6 compatible with newer pep8
    Fix computation of disk sizes in _ComputeDiskSize
    Add verification of RPC results in _WipeDisks
    Add test for checking that all gnt-* subcommands run OK
    Fix double use of PRIORITY_OPT in gnt-node migrate...
2fefc557 08/27/2012 05:05 pm Iustin Pop

Make stable-2.6 compatible with newer pep8

This is done so that all current branches can run with newer pep8;
note that instead of fixing the problems (like I did on master), I've
just silenced more. These should not be merged onto master!

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

5ae4945a 08/23/2012 02:41 pm Iustin Pop

Bump pep8 version to 1.2

Debian Wheezy will ship with this version, and it has many improved checks compared to 0.6, so let's:

- bump version in the docs
- silence some new checks that are wrong due to our indent=2 instead of 4
- fix lots of errors in the code where the indentation was wrong by 1...

4e27516b 08/14/2012 12:13 pm René Nussbaumer

Adding design doc for bulk instance create

This is the design doc for the bulk instance creation. You can more
details in the doc itself.

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

7213dded 08/09/2012 12:35 pm René Nussbaumer

Add new Makefile target to rebuild the whole dist

Due to the fact how the automake system works it doesn't rebuild already
prebuild files in distcheck. This lead to a bug, where a rebuild of the
documentation was failing because we missed the fact that the files were...

a47dc554 08/08/2012 12:00 pm René Nussbaumer

Add missing rst files to Makefile.am

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