- Feb 11, 2013
-
-
Bernardo Dal Seno authored
Cluster-verify used to check that the value of exclusive_storage is uniform within node groups. Now, it's impossible to change the flag for a single node, so that check has been removed and an equivalent one has been added in ConfigWriter.VerifyConfig(). Unit test provided. The unit test covers only the new check, not the whole VerifyConfig method. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
There's never been support for a configuration where nodes in the same node group have different values of the exclusive_storage flag. This patch disables the possibility to change the flag for individual nodes. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Bernardo Dal Seno authored
Before, only some upgrades were written back to the configuration file. A little refactoring of _UpgradeConfig() has been done to write unit tests. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Since now confd also serves a Luxi endpoint, the current message in cli.FormatError is misleading when actually failing to connect to it. The patch adds a somewhat hackish way to show the right daemon name. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This should address 359, but I'm not sure if it covers all of 2.7… Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 08, 2013
-
-
Guido Trotter authored
1) Move the hooks environment dict generator inside the object. This also adds missing values such as network family and uuid. 2) Use the same generator both for the os environment and for the instance hooks. 3) Update manpage and hooks documentation. Also update a forgotten docstring about a tuple's content. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Although this does nothing for now, running it is safe, and consistent with how other objects behave. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
This was applied to "master" along with extra changes affecting the master branch only. Cherry-picking just the Objects.hs change. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
When absolutely no OSes are present on the cluster, the result of OpOsDiagnose is an empty list. This is currently handled in gnt-os as an error condition, probably due to how OpOsDiagnose used to return errors in the past. However, with the query backend, an empty list is a reasonable answer, so I see no reason why gnt-os should treat that as an error, especially as it doesn't give any hint of what is "wrong". Simply removing that code block allows it to proceed normally, and list no OSes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
LIBDIR was not defined, so the files ended up directly under /, not good. Now they're properly installed under /usr/lib/ocf, as per http://linux-ha.org/wiki/OCF_Resource_Agents . Also add "set -u" to prevent future occurrences of this kind of bug. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
The method names were wrong due to copy & paste. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Feb 07, 2013
-
-
Iustin Pop authored
When hlint sees a perfectly nice code tree, it will skip generating the reports (both stdout and html). This means that usually the old report will remain in place, so it makes development harder, as the html file is out of sync with the tree. To workaround this, we generate an empty/minimal file in this case. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Since 'head' is unsafe to use in most cases, this patch removes its use from most of the code, adds a lint warning for it (and for tail as well), and adds override annotations in the few cases where it's actually OK to use it (mainly when using head over the result of functions which guarantee to return a non-empty list by documentation, not type). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
- Feb 06, 2013
-
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Guido Trotter authored
Also update the documentation target versions and the cfgupgrade tool to recognize 2.6 and upgrade to 2.7 Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
- The migrate instance hook now also executes on the primary node in the "pre" phase. - Instance hooks now get full network information on each nic, if a nic's network is set. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 05, 2013
-
-
Iustin Pop authored
This enabled the redirection; QA output after this patch should become much much smaller (on a 'quick' QA, we are left with ~0.5MB output on stdout and 64MB redirected output). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Some QA commands generate non-trivial output: for a full QA, the gnt-* list commands generate more than 300MB of data. To make the QA logs more parseable by humans, we need support for redirecting output of commands to a different place. This patch adds a 'AssertRedirectedCommand' that does this, redirecting the output to a (fixed) log file in the Ganeti log directory. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This patch adds an optional kwarg that allows skipping the "Command: …" line in QA output. This is helpful if we only need to run some maintenance actions, that are QA-related and not Ganeti-related. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Iustin Pop authored
This would have caught the log file problem fixed in the previous patch (9411474b), for example. Also we test user/group equivalence, name only. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Commit 3329f4de changed the Haskell log file from constants to functions, but introduced a bug: it uses now the daemon name instead of the correct log file, which means "ganeti-confd.log" instead of "conf-daemon.log". In order to fix this, we need to abstract the log file base (in constants.py) into a separate set of constants, so that we can reuse it in the Haskell code. This fixes issue 343. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Feb 04, 2013
-
-
Bernardo Dal Seno authored
This test used to leave a node with orphan logical volumes and unused DRBD minors. Now, the expected leftovers are cleaned up after the test, and cluster-verify is run. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This uses the new _FormatVerifyResults helper function to return multiple errors. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Since LXC now relies on cgroup memory limits to enforce memory, let's make hypervisor verification (and thus cluster-verify) return errors when the cgroup filesystem is not mounted. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This will allow easier multi-error results from hypervisors; right now, we only report the first error, which is not nice. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
The latest lxc patches included a few whitespace style errors, that make lint fail. This patch fixes those. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Guido Trotter authored
For consistency, let's make sure NICs are capitalized always in the same way. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
- Feb 02, 2013
-
-
Faidon Liambotis authored
Add support for the memory resource controller, useful to actually place memory limits on instances. Support is still optional, in case the kernel doesn't have it compiled in, or -in the case of Debian- has it dependent on a kernel command-line switch (cgroup_enable=memory specifically). Signed-off-by:
Faidon Liambotis <paravoid@debian.org> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Feb 01, 2013
-
-
Faidon Liambotis authored
Currently hv_lxc depends on the behavior and output of older LXC tools, which have since changed, making it unable to function in current distributions (e.g. Debian wheezy). Adapt the tools and expectation for the output and make it into a working state again, at least for LXC 0.8.0. LXC tools seem to be split into two categories: the actual, binary lxc tools, plus a set of shell scripts to provide a higher-level interface. Ganeti doesn't need the latter and the shell scripts make some assumptions (like /var/lib/lxc) so remove the only reference to such a shell script (lxc-ls). While at it, remove a few comments about "current (Spring 2010) distributions" that do not apply anymore. This is a backwards-incompatible change, meaning it won't work on systems with older LXC userspace. However, hv_lxc is experimental anyway and there's virtually no documentation about it in the tree. Signed-off-by:
Faidon Liambotis <paravoid@debian.org> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michele Tartara authored
Add a missing "in". Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
Instance tests are run with or without the exclusive-storage flag set. More configurations can be added easily. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
We want to make sure that instance operations don't leave the cluster in a bad state. The "instance-remove-drbd-offline" test leaves some debris behind, so it's been moved to the last position. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
The code launching instance tests for "plain" and "drbd" templates has been unified. In this way it's easier to add more templates, and to re-use the same tests with different configurations. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
Some instance test functions took two node arguments, some took one, and some took two but the second argument could be None. This patch makes such functions uniform by using a list of nodes as an argument. This simplifies the following refactoring. No test logic has been changed. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
Instance test functions check the current configuration, and they will run the actual tests only if the configuration supports them. This will be used for refactoring in following patches. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
These make possible to simplify the logic of tests requiring more nodes. Used in the following patches. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
QA configuration now tracks the state of the exclusive_storage flag at cluster level. This will be used to selectively enable tests according to the configuration. Also, it's now possible to specify the initial value of the exclusive_storage flag in the configuration file. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
The global 'cfg' variable is initialized to an empty dictionary, so there is no more need to disable some pylint checks. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
The disk templates used by the instances are tracked in the QA configuration. This will be used to selectively enable tests according to the configuration. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-