- 07 Mar, 2014 8 commits
-
-
Klaus Aehlig authored
If, on the command line, the argument to gnt-cluster copyfile is a relative path, consider this a shorthand for the corresponding absolute path. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Michele Tartara authored
* stable-2.8 Improve RAPI detection of the watcher Add patching QA configuration files on buildbots Enable a timeout for instance shutdown Allow KVM commands to have a timeout Allow xen commands to have a timeout Fix wrong docstring Conflicts: lib/hypervisor/hv_xen.py test/py/ganeti.hypervisor.hv_xen_unittest.py Resolution: The conflicts were due to a new mandatory parameter hvparams being added (in 2.9) to the same functions that received the optional timeout parameter (in 2.8). They were resolved by keeping the hvparams in its place, and enqueuing the timeout parameter after it. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Michele Tartara authored
If the watcher is not allowed to access RAPI, it doesn't mean that it is dead and needs to be restarted. Fixes Issue 752. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Petr Pudlak authored
In order to work, it is necessary: * Write a JSON Patch to file "qa/qa-patch.json" in a source repository. (And be careful not to commit it!) The file must conform to RFC6902 and describes what changes should be done to the QA JSON configuration. This is simple as [ { "op": "add", "path": "default", "value": false }, { "op": "add", "path": "/tests/instance-add-file", "value": true } ] * Install "jsonpatch" and "jsonpointer" modules on the machines QA is running on. Either using "easy_install" or as Debian packages using "pypi-install". QA only loads the modules if the patch file is present and non-empty. Therefore no changes to buildbots are needed, if the feature is not used. It's advisable to add a git pre-commit hook for the main repository to prevent changes to "qa/patch.json", keeping it to "[]". Suggestion for such a hook: # Exit code 1 if the patch file isn't just "[]": python -c 'import json, sys; \ exit(0 if json.load(open("qa/qa-patch.json", "r")) == [] else 1)' Locally it's possible to tell git not to track changes to the file at all (see https://help.github.com/articles/ignoring-files): git update-index --assume-unchanged qa/qa-patch.json Cherry-pick of e5398c3a from stable-2.11. Signed-off-by:
Petr Pudlak <pudlak@google.com> Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Jose A. Lopes <jabolopes@google.com>
-
Michele Tartara authored
Add the timeout parameter to the StopInstance function of the hypervisor base class and to all its implementations. Also, change the tests as required by this change. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Michele Tartara authored
Modify the function that sends commands to the KVM monitor so that it is possible to specify an optional timeout after which the command is killed. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Michele Tartara authored
Modify the function that runs Xen commands so that it is possible to specify an optional timeout after which the command is killed. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Michele Tartara authored
Fields must be the final elements in an epytext string. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 26 Feb, 2014 2 commits
-
-
Hrvoje Ribicic authored
When a job is dependent on other jobs, a fake lock is created whose pending entry contains a list of job ids waiting on the job. gnt-debug locks did not expect the job ids to be ints, crashing when encountering them. This patch fixes the situation by forcing a string cast. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Jose A. Lopes <jabolopes@google.com>
-
Hrvoje Ribicic authored
NiceSort is invoked on arrays that may contain strings, but in other situations can contain ints as well. As this surprisingly makes sense, add a tiny modification to make NiceSort work in these conditions. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Jose A. Lopes <jabolopes@google.com>
-
- 25 Feb, 2014 2 commits
-
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose Lopes <jabolopes@google.com>
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose Lopes <jabolopes@google.com>
-
- 24 Feb, 2014 7 commits
-
-
Klaus Aehlig authored
Describe the changes since 2.9.4 for the soon-to-be-released version 2.9.5. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
* stable-2.8 Fix expression describing optional parameters Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose A. Lopes <jabolopes@google.com>
-
Klaus Aehlig authored
The NIC's network and vlan are also newly added, hence need to be considered optional to remain backwards compatible. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Dimitris Aragiorgis authored
setup_route should run in case or routed mode and not openvswitch. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Thomas Thrainer <thomasth@google.com> Reviewed-by:
Thomas Thrainer <thomasth@google.com> Cherry-picked from 49c60905 . Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose Lopes <jabolopes@google.com>
-
Klaus Aehlig authored
With the introduction of spindles as resources, the machine-readable output of hspace(1) has been extended. Document the additional parameters. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose Lopes <jabolopes@google.com>
-
Klaus Aehlig authored
As spindles are now considered a resource, they are also output in the TSPEC parameter of hspace --machine-readable. Document this interface change. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose Lopes <jabolopes@google.com>
-
Petr Pudlak authored
In particular explicitly note that a node failover causes all instances to be stopped and later restarted (issue #724). Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- 20 Feb, 2014 5 commits
-
-
Klaus Aehlig authored
* stable-2.8 Improve job status assert affected by race condition Export and import Disk/NIC name Fix backup import in case NIC is inside a network Override get() method of ConfigParser Conflicts: lib/cmdlib/instance.py: manually apply 0973f9ed on the stable-2.9 version Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Hrvoje Ribicic authored
In the sliver of time between choosing a waiting job to be executed and trying to acquire locks for its execution, the status of the job can be changed to canceling. An assert checking the job status neglected to take this into account, and raised an error that managed to perpetually lock the job in the canceling state. This patch resolves the issue by making the assert accept the canceling state as well, and exiting if the job was cancelled. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Dimitris Aragiorgis authored
Name of Disk/NIC were not exported during backup until now. Use the exported info during gnt-backup import. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Dimitris Aragiorgis authored
Network UUID is written in .ini file during backup export but is not used by _ReadExportParams(). This patch fixes it. Please note that in case a network is given, link and mode should not be included in NIC options. This fixes issue 716. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Dimitris Aragiorgis authored
During backup import/export SafeConfigParser() is used to save/restore instance's configuration. There is a possibility if an export is done with a different Ganeti version, a specific value not to be saved during export (e.g. the NIC/Disk name) but still requested during import. With this patch we override the get() method of SafeConfigParser() and catch NoOptionError if raised and return None. Additionally we translate "None" values read from .ini file into None. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- 19 Feb, 2014 1 commit
-
-
Helga Velroyen authored
Since 2.6, hbal crashes when used on a cluster where no LVM storage is enabled at all. The problem is that it always queries for fields that only sometimes make sense for certain types of storage. This patch will make it fall-back to a default value if those fields are not returned by a query. This way it will simply disregard the space information in its calculation which is the best we can do in this situation, because not all storage types support space reporting. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 13 Feb, 2014 3 commits
-
-
Klaus Aehlig authored
* stable-2.8 Fix integer overflow problem in hbal Add missing space Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michele Tartara authored
waitForJobs in src/Ganeti/Jobs.hs has an integer overflow that (at least on amd64) causes it to break after waiting for ~10 minutes. This results in hbal sleeping forever (when compiled with squeeze's ghc 6.12.1) or crashing (when compiled with precise's ghc 7.4.1) whenever it has to wait ~10 minutes for a jobset to complete. Thanks to gjo@google.com for finding the bug and suggesting the fix. Fixes Issue 717. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Michele Tartara authored
Also, refactor the line to keep it under 80 chars. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 10 Feb, 2014 2 commits
-
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
- 07 Feb, 2014 2 commits
-
-
Hrvoje Ribicic authored
Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Hrvoje Ribicic authored
When UUIDs are used in CLI commands, such addressing of objects fails or succeeds inconsistently across object types. Worse yet, some calls do not fail, but simply return no result. This is due to the way the classical queries are handled in the Haskell code - a filter is built, checking if the names match. If the names do not match, but the object can still be retrieved through UUID, the query is successful, but there is nothing to return. This patch remedies the situation by extending the filter into an or clause checking for either name or uuid. For objects that have no uuid field, the name is reused, making the filter equivalent to the old one. Works towards resolving issue 703. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 06 Feb, 2014 1 commit
-
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Thomas Thrainer <thomasth@google.com>
-
- 05 Feb, 2014 2 commits
-
-
Klaus Aehlig authored
* stable-2.8 Fix execution group of NodeD Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose A. Lopes <jabolopes@google.com>
-
Michele Tartara authored
The Node deamon was executed with the wrong gid (gnt-daemons) instead of the one assigned to it by configure.ac. Fixes Issue 707. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 03 Feb, 2014 1 commit
-
-
Hrvoje Ribicic authored
The LUInstanceCreate returned names instead of UUIDs in 2.6. Along the way, the names were internally replaced with UUIDs, and the abstraction leaked. This patch fixes the issue. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Thomas Thrainer <thomasth@google.com>
-
- 30 Jan, 2014 4 commits
-
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
The current code assumes that every instance either is of type diskless or has at least one disk. However, with the option to remove individual disk degraded 0-disk non-diskless instances can occur. While such instances usually are not useful, Ganeti still should be operational in their presence. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
In the case of a degraded file-based instance, the file storage directory for that instance cannot be obtained by looking at the first disk. Use the standard location, computed from first principles, in this case. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-