- Oct 12, 2009
-
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
The timeout passed to LockSet.acquire() is measured over all lock acquires. If LockSet.acquire fails to acquire all requested locks within the specified amount of time, all locks are released again and the acquire fails. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Oct 09, 2009
-
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Using the new --timeout option: - gnt-instance shutdown is changed to accept a timeout - the opcode is changed to hold one - the LU is changed to optionally get one - the rpc is changed to carry one - the backend is changed to take it as a parameter rather than hardcoding it in the function Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Currently it has lots for duplicated code, and internal retries. Clean it up with the following assumptions: We'll probably be called more than once. It is ok to fail to stop, unless we're called with force=True. If we're called only once, and with force=True it's ok not to run the chroot "cleanup" script (it's a destroy after all, why should chroots have more chances than other instances?). Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Since we know StopInstance is going to be called more than once (at least twice, once with force and once without, but normally quite a lot more) we don't need our own sleep/loop, and we can just send one monitor command per call. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
1) unhardcode the timeout, abstracting it in a constant 2) Use time.time() rather than hiding the timeout in a range() 3) call hyper.StopInstance multiple times -- currently all hypervisors just ignore all calls but once 4) Use hyper.ListInstances() rather than GetInstanceList([hv_name]) -- it's cheaper :) 5) Change the final message to "forcing" from "using destroy" Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
It reflects the "current" two minutes we give to the instance. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Currently some hypervisors need the stop operations to be retried more than once, while other ones only do it in one pass. With this change we'll handle retries outside the hypervisor code, but telling whether this is the first try or not. Since this option is not used for now, all hypervisors just return if called with retry set to on, maintaining the old behavior. Since the fake hypervisor has an idempotent StopInstance call, we avoid returning in that case. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
- We never remember to use it (5 uses vs 21 " ,".join()) - It's longer to write than " ,".join() - The added value of the apostrophe in the string is not very much Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Oct 07, 2009
-
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
If we have only one node, instance moves fail, because it tries to move the instance to itself. Skipping the operation, because in that case it doesn't make sense. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Since DNS cannot contain two names with different cases anyway, this should be ok. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Now featuring unit testing, and more deterministic results on some corner cases. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Oct 06, 2009
-
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
- Oct 05, 2009
-
-
Michael Hanselmann authored
This should prevent typos in aliases from going unnoticed. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
If an OS supports variants, unless --force-variant is specified a valid variant must be passed. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Passing this option makes an undeclared variant be passed to the os "as is", hoping it'll be able to figure it out (as per the design doc). Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
These two opcode need to know whether an unknown variant must be forced through or not. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
List of OSes are displayed by gnt-os list, rapi, and gnt-instance reinstall --select-os, and checked by burnin. In all of these show the list with name+variant, if the os has variants. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
We already show the per-node os variants, also show the global ones. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Given an os and its variants, return a list of "full" os names. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
If selected this field will contain a list of os variants supported on all nodes. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
When we load an OS from disk, we need _TryOSFromDisk to get the real name, without any variant. This allows any functionality that uses the instance OS to handle a name with a variant. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
According to the design on api_version >= 15 the OS variant is the part of the OS name after the "+" sign. If none is found, we just pass in the first variant an OS declares (which is bound to exist, as we check for it in _TryOSFromDisk). Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Adding the file name to the os_files dict will fill in the full path and get it checked, if present we also read it and split into lines, one per declared variant. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
The slot will contain a list of variants, and the variants file constant contains the file in the os dir which is supposed to hold the list. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Currently all checked files in the loop are os scripts, so nothing will change, but in the future we only want the +x bit on actual os scripts, not necessarily all files. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
We'll be using this dict/loop to check more than just scripts, so we're renaming the variables appropriately. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
Since nobody ever read the actual OS object, this bug was introduced in the rpc conversion. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-
Jun Futagawa authored
This patch adds three optional parameters: - 'use_bootloader', whether use or not the bootloader - 'bootloader_path', absolute path to the bootloader - 'bootloader_args', extra arguments to the bootloader Syntax: gnt-cluster modify --hypervisor-parameters \ xen-pvm:bootloader_path=/usr/bin/pygrub,use_bootloader=False gnt-instance modify -H use_bootloader=True instance1.example.com If use_bootloader is True, each domU can boot with its own kernel instead of using the dom0 kernel. Signed-off-by:
Jun Futagawa <jfut@integ.jp> Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by: ultortter
-
- Oct 02, 2009
-
-
Michael Hanselmann authored
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:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
There were more race conditions. By adding a notify function to SharedLock.acquire we can prevent them. 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:
Olivier Tharan <olive@google.com>
-
Guido Trotter authored
If we're de-offlining or de-draining a node we need to promote it to MC if we have not enough, or the config will be corrupt. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Olivier Tharan <olive@google.com>
-