- Mar 26, 2012
-
-
Iustin Pop authored
This is the last warning related to TemplateHaskell that was 6.12 specific; for some reason, it doesn't "see" that traw/tname were used. The patch just replaces the quoting syntax with an explicit type declaration; while less readable, it also has less warnings. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
GHC 7.4 has updated the TemplateHaskell library, and it turns out that the way we built the JSON instance implementation for showJSON was not good (probably this is why GHC 6.12 was generating some warnings). The patch changes the build of showJSON to be the same as readJSON, which was working fine. As a bonus, this fixes both the 7.4 issue and the 6.12 one. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
While testing some other stuff, I realised that the gnt-* commands could be broken (as in, the script fails with syntax errors), but make check doesn't detect it. Since we have shelltest, we can now add trivial tests for this case. One downside is that starting the scripts seems to be much slower than the htools binaries, so we can't add as many tests. The other downside is that shelltest is now required for all development work, but I think this is a small disadvantage compared to the increased testing possibilities. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
We already have a ./configure-time variable for this, but it seems to be actually unused. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Mar 23, 2012
-
-
Iustin Pop authored
This patch changes configure.ac Makefile.am so that the user can pass: - --disable-confd (or --enable-confd=no) to disable it completely - --enable-confd=yes or --enable-confd=python to select the traditional implementation (this is the default setting) - --enable-confd=haskell to select hconfd The only "not nice" thing is that I've chosen to keep the hconfd.hs/hconfd name, and we rename it after install via an install-exec-hook. The other choice is possible too (to rename the source file/binary). One additional note is that if we select haskell, the _rule_ for creating daemons/ganeti-confd dissapears; whereas if we select python, the rule for htools/hconfd still exists (one can build it explicitly), it just is not installed. This is due to the different way in which the rules are declared. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
By accident, commit a002ed79 introduced the qemu-img checks in the htools block. I found this also by mistake while investigating another issue :) Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 22, 2012
-
-
Iustin Pop authored
While updating the confd code, I realised that we have _lots_ of duplication in the exit model for the various programs. So this patch attempts to abstract all the exits via a couple of new functions; sorry for the somewhat big patch, but I hope the payoff is worth the change: the actual exit conditions are much clearer. Note that the patch (also) moves the exitIfBad function to Utils.hs, since that is more logical. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
The new shell tests do not succeed out-of-tree, due to static paths and other issues. This trivial patch fixes these issue, make distcheck now passes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This is more of a RFC… Basically most of the shell-based tests are converted from exec+grep to shelltestrunner. Things are not all fine and nice though: - we have dependencies between tests, as some generate some data files needed later; this is not nice, and we depend on serial execution in testrunner - we can still fail with no so nice messages in the offline-test script (when we generate most of the data) But overall, I think the tests are much nicer to define/read/debug: - each test is standalone, with the only dependency being an optional input data file; this is much better than a single monolithic shell script - in case of failures, the failure is clearly shown by shell test, both for exit code and stdout/stderr - shelltest can run in --debug mode, where the exact details are shown much better than the alternative of "set -x" for the shell script Comments welcome! Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
… and enable it in hconfd. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Currently this is initialised to no from Daemon.hs, but will in the future allow command-line options for controlling it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 21, 2012
-
-
Iustin Pop authored
A later, more complete patch, will allow selecting between either the Python version or the Haskell version. This is just a temporary solution to help building without all the needed Haskell libraries. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Instead of using just shell constructs to run hpc-htools correctly (i.e. HTOOLS=role htools/hpc-htools …), let's add some shell fragments that do this for us. This will ease the running of tests directly. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
This patch makes hail treat '-' as denoting stdin, per the usual Unix convention. This will help with testing. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 20, 2012
-
-
Iustin Pop authored
Instead of hardcoded IPv4 INADDR_ANY, this patch changes hconfd to use either the any network for the configured cluster address family (ipv4/ipv6), or whatever the user passes in via the --bind option. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This implements the same logic as the Python code: if the option is not used, use the default appropriate for the cluster, otherwise try to parse and use whatever was passed in. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
These both are work with/on the Result type, so we add them to BasicTypes. The functions will be used as more generic versions of some more specialised functions that are right now spread across the modules. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This currently has only one export function in it, which will be used for future bind address functionality in daemons. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Alexander Schreiber authored
Trivial fix for a typo in message output of LUInstanceSetParams Signed-off-by:
Alexander Schreiber <als@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 19, 2012
-
-
Iustin Pop authored
I "forgot" to run the unittests before commit :( Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
These are needed to ensure that htools uses the same numeric values as Python. By the way, I'm not sure what's the best option: importing socket into constants (this patch), or adding custom exports to autotools/convert-constants. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
This is a stupid/trivial patch. I didn't realise when adding htools-hpc that this will "break" tab completion on htools; as in, I will have to add / manually always when completing files on the command line. So to fix my laziness, let's rename htools-hpc to hpc-htools, eliminating this completion conflict. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
The dashes do not need to be in, if they are then the resulting option is: -p PORT ----port=PORT Network port (default: 1814) Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Sorry! Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 16, 2012
-
-
Iustin Pop authored
Copy-paste mismatch :) Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 15, 2012
-
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
These allow more accurate checks. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
This will allow offline testing of this backend (except for the actual curl part), also in the case where we didn't compile against curl. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Using some hand-crafted files (manually modified from a real cluster running master branch), we test that hail behaves as we expect: doesn't load obvious wrong data, can do relocations/allocations, etc. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
We most always use `templateMirrorType . diskTemplate`, so let's add a helper function for this. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
hail now expects correctly that relocate_from is of equal length with the number of required nodes (fixme: there's a lot of not well documented behaviour here… not nice for any other potential IAllocators). As such, we _need_ to pass just the instance's primary node. Additionally, update the iallocator doc to correctly specify what this list (`relocate_from`) contains. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
After the many patches implementing the shared storage functionality in iallocator, balances, etc., and after the patches preparing the unit-tests to do the right thing for shared storage, we can finally flip the bits that make instances have "random" disk templates as opposed to just DRBD. Yes, the unit-tests still pass
☺️ We also need to enable all disk templates in the IPolicy (for allocation/relocation). Signed-off-by:Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This patch toggles the final bit and enables nodeEvacInstance to work on shared storage instances. Diskless instances are handled the same (as in, None is the same everywhere :). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-