- 24 Aug, 2009 2 commits
-
-
Michael Hanselmann authored
This can be used to generate the bash completion script automatically. In the future it may allow for better command line validation as well. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
This uses the new LUMoveInstance. It supports only single-instance moves. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- 18 Aug, 2009 1 commit
-
-
Michael Hanselmann authored
Merging them gets rid of two public functions in cli.py and optparse explicitly supports more than one option type per class. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- 17 Aug, 2009 1 commit
-
-
Iustin Pop authored
This patch adds querying of ctime/mtime for the cluster/nodes/instances. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- 14 Aug, 2009 1 commit
-
-
Iustin Pop authored
This can be used for a 'plain' type instance when the underlying storage went away, to recreate the storage (and reinstall) instead of removing the instance and readding it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- 13 Aug, 2009 1 commit
-
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- 06 Aug, 2009 2 commits
-
-
Michael Hanselmann authored
This allows us to report “uncertain” states (LDS_UNKNOWN) for cases where the code can't easily detect or report what's wrong with a block device. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- 04 Aug, 2009 1 commit
-
-
Iustin Pop authored
This patch modified OpActivateDisks, LUActivateDisks and gnt-instance activate-disks to support and pass this option to _AssembleInstanceDisks. The patch is quite trivial I think; there should be no issues from it except if used when not needed. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 19 Jul, 2009 4 commits
-
-
Iustin Pop authored
Commit 55efe6da "Convert instance reinstall to multi instance model" actually broke instance reinstall for single-instance cases. This one-liner fixes it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> (cherry picked from commit b6e243ab)
-
Iustin Pop authored
It seems epydoc needs fully-qualified references, and doesn't deal with relative ones (not even in the current module) if there are any ambiguities. There are other epydoc warnings, in the rapi docstrings, but those are left as-is as they're removed in 2.1. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This patch converts ‘gnt-instance reinstall’ from single-instance to multi-instance model; since this is dangerours, it's required to pass “--force --force-multiple” to skip the confirmation. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> (cherry picked from commit 55efe6da)
-
Iustin Pop authored
This small patch changed the batch create functionality to use the job executor instead of single-job submits. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> (cherry picked from commit d4dd4b74)
-
- 29 Jun, 2009 1 commit
-
-
Guido Trotter authored
If an ident member of an IdentKeyVal relationship starts with no_ or -, handle it the same way we do for a key. Some unittests are added to check that check_ident_key_val behaves as expected. This patch also changes ForceDictType to, for now, fail on such an entry, and the same to happen when creating an instance or modifying its nics or disks. This behavior will be used later on to allow deletion of os entries in os parameters. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- 19 Jun, 2009 1 commit
-
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 18 Jun, 2009 1 commit
-
-
Guido Trotter authored
This is compatible with the previous version, but also allows specifying more than one nic, by giving a "nics" list of dicts. The two methods (individual fields for the first nic, and list of all nics) are incompatible with each other. The default remains one nick with no parameters specified. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- 17 Jun, 2009 4 commits
-
-
Iustin Pop authored
Currently running “gnt-instance list -o+vcpus” fails with a cryptic message: Unhandled Ganeti error: vcpus This is due to multiple issues: - in some corner cases cmdlib.py raises an errors.ParameterError but this is not handled by cli.py - LUQueryInstances declares ‘vcpu’ as a supported field, but doesn't handle it, so instead of failing with unknown parameter, e.g.: Failure: prerequisites not met for this operation: Unknown output fields selected: vcpuscd it raises the ParameteError message This patch: - adds handling of 'vcpus' to LUQueryInstances - adds handling of the ParameterError exception to cli.py - changes the 'else: raise errors.ParameterError' in the field handling of LUQueryInstance to an assert, since it's a programmer error if we reached this step With this, a future unhandled parameter will show: gnt-instance list -o+vcpus Unhandled protocol error while talking to the master daemon: Caught exception: Declared but unhandled parameter 'vcpus' Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
This CL updates QueryInstanceData to return NICs in the new format (mac, ip, mode, link) and fixes gnt-instance info to properly display them. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Compatibility with the old parameters is maintained, by allowing to query for "bridge" "nic.bridges" and "nic.bridge/N", but None is returned in that case for routed nics. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
The size of the instance's disk was not shown in “gnt-instance info”. This patch adds it and formats it nicely if possible. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 10 Jun, 2009 1 commit
-
-
Iustin Pop authored
Commit 55efe6da "Convert instance reinstall to multi instance model" actually broke instance reinstall for single-instance cases. This one-liner fixes it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 22 May, 2009 2 commits
-
-
Iustin Pop authored
This patch converts ‘gnt-instance reinstall’ from single-instance to multi-instance model; since this is dangerours, it's required to pass “--force --force-multiple” to skip the confirmation. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This small patch changed the batch create functionality to use the job executor instead of single-job submits. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 19 May, 2009 1 commit
-
-
Iustin Pop authored
This patch modifies the start instance script, opcode and logical unit to support temporary startup parameters. Different from 1.2, where only the kernel arguments were supporting changes (and thus xen-pvm specific), this version supports changing all hypervisor and backend parameters (with appropriate checks). This is much more flexible, and allows for example: - start with different, temporary kernel - start with different memory size Note: in later versions, this should be extended to cover disk parameters as well (e.g. start with drbd without flushes, start with drbd in async mode, etc.). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 11 May, 2009 1 commit
-
-
Iustin Pop authored
The _TransformPath function is not used anymore in 2.0, let's remove it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- 24 Apr, 2009 1 commit
-
-
Guido Trotter authored
Don't show all instances info by default, but require --all to be passed for this time consuming operation. Reviewed-by: iustinp
-
- 15 Apr, 2009 1 commit
-
-
Iustin Pop authored
This patch adds a couple of both externally and internally reported issues: - missing SGML tags (Issue 54), report and patch by superdupont - wrong variable used in the init.d script, report and patch by Karsten Keil <karsten-keil@t-online.de> - man page for gnt-instance reinstall needs clarification (Issue 56) - gnt-instance man page missing --disks documentation for replace-disks - gnt-node modify help output is unclear about the -C/-D/-O input format, and the man page doesn't document this command at all - “gnt-node modify -C yes” for offline or drained nodes had wrong error message - “gnt-instance reinstall --select-os” has wrong prompt, we only accept a number for the OS and not the template name Reviewed-by: ultrotter
-
- 06 Apr, 2009 1 commit
-
-
Iustin Pop authored
This patch raises an error in the master daemon in case the user requests a locking query; accordingly, all clients were modified to send only lockless queries. This is short-term fix, for proper fix the clients should be modified to submit a job when the user request a locking query. The other approach would be to ignore the flag passed by the client; this would be worse as client's wouldn't get at least an error. The possible impact of this is multiple: - some commands could have been not converted, and thus fail; this can be remedied easily - the consistency of commands is lost; e.g. node failover will not lock the node *while we get the node info*, so we could miss some data; this is again in the thread of atomic operations which are missing in the current model of query-and-act from gnt-* scripts Reviewed-by: imsnah, ultrotter
-
- 12 Mar, 2009 1 commit
-
-
Iustin Pop authored
Similar to the --disk fixes a while ago, --net is broken too. This patch fixes it. Reviewed-by: imsnah
-
- 24 Feb, 2009 2 commits
-
-
Iustin Pop authored
This patch removes the extra_args parameter and instead switches the instance to the HV_KERNEL_ARGS hypervisor option. This is a big change, but it's a needed cleanup, this extra parameter on all RPC calls is not generic and we also need to have a persistent value here. Reviewed-by: imsnah
-
Guido Trotter authored
Having hvattr descriptions is only confusing for the user, because even if they explain better what an attribute is about, they don't help in deciding what keyword should be used to actually set it. If in the future we want descriptions they should probably live in constants.py, and be displayed together with the key, rather than instead of it. This patch also changes the handling of the vnc console connection description, making compatible work with both kvm and xen-hvm. Reviewed-by: iustinp
-
- 13 Feb, 2009 1 commit
-
-
Iustin Pop authored
This patch adds back to the instance creation command (gnt-instace add, gnt-backup import) the ‘-s’ short form option for specifying a single-disk instance. Also a small bug in gnt-backup import is fixed. Reviewed-by: ultrotter
-
- 12 Feb, 2009 2 commits
-
-
Iustin Pop authored
This patch changes the scripts so that the short name for the “--iallocator” option is always ‘-I’. Reviewed-by: ultrotter
-
Iustin Pop authored
Currently the batcher hypervisor parameter must be a dict with one element (e.g. {"xen-hvm": { "acpi": true }}). This is overly complex and hard to validate correctly; the patch splits it in two: - one "hypervisor" string parameter, with the name of the hypervisor - one "hvparams" dictionary, with the hypervisor parameters The patch also changes the error handling in parsing the definition file - since this is not a long-running file, we are less concerned with safe closing of the file, and more with presenting meaningful error messages. Reviewed-by: killerfoxi
-
- 11 Feb, 2009 1 commit
-
-
Guido Trotter authored
It's hvparams, not opts.hvparams. Reviewed-by: iustinp
-
- 10 Feb, 2009 1 commit
-
-
Guido Trotter authored
We want all the hv/be parameters to have a known type, rather than a random mix of empty string, boolean values, and None, so we declare the type of each variable and we enforce/convert it. - Add some new constants for enforceable value types - Add new constants dicts HVS_PARAMETER_TYPES and BES_PARAMETER_TYPES holding not only the valid parameters but also their types - Drop the old HVS_PARAMETERS and BES_PARAMETERS constants and calculate the values from the type dict - Convert all the default parameters to a valid type value - Create a new ForceDictType utils function, to check/enforce a dict's element value types, with relevant unit tests - Drop a few custom functions to check/convert the BE param types in utils and cli, in favor of ForceDictType - Double-check the parameter types using ForceDictType in both scripts and LogicalUnits, when possible. As a bonus: - Remove some old commented-out code in gnt-instance - Remove some already fixed FIXME - Fix a bug which prevented VALUE_DEFAULT to be applied to BE parameters in SetInstanceParams because the value was checked for validity before that transformation was made - Fix a bug which prevented initing a cluster and passing hvparams to work at all - ForceDictType allows an allowed_values for exceptions, which makes us able to do the checking even when some values must not be converted/typechecked (for example the 'default' string in SetInstanceParameters) Reviewed-by: iustinp
-
- 09 Feb, 2009 1 commit
-
-
Iustin Pop authored
This patch adds a new instance query flag called disk_usage that retrieves the overall space used by an instance on each of its nodes. This can be used when balancing the cluster or checking N+1 status. The flag is also exported in RAPI. Note the flag is currently broken for file-based instances, as it represents the amount of space in the cluster volume group. Reviewed-by: ultrotter
-
- 04 Feb, 2009 1 commit
-
-
Iustin Pop authored
This patch adds the framework for, and enables lockless OpQueryInstances. This means that instances will be shown in ERROR_up or ERROR_down state, even though this is not an error (but just an in-progress job). The framework is implemented as follows: - the OpQueryInstances, OpQueryNodes and OpQueryExports opcodes take an additional “use_locking” flag which will denote whether to lock or not; this patch only implements this for LUQueryInstances - the luxi query functions take an additional argument use_locking which is passed to the master daemon, and then passed to the above opcodes - cli.py export a new SYNC_OPT command line options which implement setting this flag to true - except for gnt-instance list, which uses this option, and for name-only queries (e.g. QueryNodes(fields=["names"])), all other callers are setting this flag to True - RAPI also sets the flag to True The patch was tested with a continuous (0.2s sleep in-between) gnt-instance list during a burnin, and no problems were observed. Reviewed-by: ultrotter
-
- 01 Feb, 2009 1 commit
-
-
Guido Trotter authored
Since parameters get set to False if a no_ is prefixed don't try to interpret those boolean values, and pass them unchanged. Reviewed-by: iustinp
-
- 29 Jan, 2009 1 commit
-
-
Iustin Pop authored
Currently gnt-instance list will refuse to take arguments, and always return the full list of instances. This patch allows it to pass names to LUQueryInstances, so that we restrict the input to a given set of instances. Reviewed-by: ultrotter
-