- 26 Nov, 2013 6 commits
-
-
Helga Velroyen authored
This patch removes the python implementation of export (aka backup) queries. So far, it is replaced by 'NotImplemented' exceptions, but later in this series it will be replaced completely. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Helga Velroyen authored
This patch removes the python implementation of network queries and replaces it with 'NotImplemented' exceptions. It will be removed completely once all queries are switched to Haskell. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Helga Velroyen authored
The master daemon so far still did queries via the python implementation. This patch implements that it uses the haskell implementation and removes the node queries from the list of OP-queriable entities. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Helga Velroyen authored
While the command line uses the generic 'Query' call, rapi calls 'QueryInstances'. 'QueryInstances' so far was not fully implemented in the Haskell implementation of the luxi server. This was discovered when trying to switch from python to haskell queries. This patch fixes the Haskell luxi server implementation wrt to that. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Helga Velroyen authored
When moving from python to haskell node queries, a bug was discovered where a node's UUID was mistakenly compared to a node's name. This indirectly caused the cluster epo operation to fail, because it was not able to identify the master node. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Helga Velroyen authored
Switching from python to haskell queries, this patch removes the option to dis/enable the haskell queries at configure time. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
- 25 Nov, 2013 1 commit
-
-
Klaus Aehlig authored
hsqueeze can produce a shell script with the commands to squeeze the cluster; in the script, fix the position of the '-f' option in the 'gnt-node power' command. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Jose Lopes <jabolopes@google.com>
-
- 21 Nov, 2013 1 commit
-
-
Klaus Aehlig authored
When spindles where added to Ganeti, apparently it was forgotten to add the parameter to the Haskell data type as well. Do this now. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Petr Pudlak <pudlak@google.com>
-
- 19 Nov, 2013 3 commits
-
-
Hrvoje Ribicic authored
The NIC VLAN has previously not been modified via Haskell, causing the INicParams class not to be used. With the recent job queue refactorings, a modification definition is recorded, and for an empty string (which is a legal default value) a crash happens. This patch fixes this by allowing VLANS to be empty strings on the Haskell side. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Thomas Thrainer <thomasth@google.com>
-
Hrvoje Ribicic authored
Allow the retrieval of the VLANs of all the NICs through nic.vlans. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Thomas Thrainer <thomasth@google.com>
-
Hrvoje Ribicic authored
The field was added to Python queries in an earlier version, and now has to be added to the Haskell queries as well. Signed-off-by:
Hrvoje Ribicic <riba@google.com> Reviewed-by:
Thomas Thrainer <thomasth@google.com>
-
- 15 Nov, 2013 5 commits
-
-
Klaus Aehlig authored
Add an option to hsqueeze to show, or save in a file, the commands that have to be carried out. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
In hsqueeze, when computing the balancing sequence, also remember the sequence of moves that lead there. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
Add a function that, given two adjacent cluster configurations of a balancing sequence, computes the moves that led from the first to the second configuration. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
When grouping moves into jobs, a new job set is started, if the new move involves a node also touched by a previous move. When computing the list of involved nodes, the new primary and secondary nodes of the instance are included; if an instance, however, has only one node, the "no secondary" index -1 should be left out to avoid spurious conflicts between unrelated moves of single-homed instances. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Klaus Aehlig authored
Move the function that saves a list of a command in a file to CLI.hs. In this way, it is reusable by other htools. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
- 14 Nov, 2013 9 commits
-
-
Petr Pudlak authored
Before, calls to `gnt-instance list -o console` with an instance on a node with a custom SSH port failed because of missing group configuration. This patch fixes the problem. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Petr Pudlak authored
The parameter is added to Haskell sources, from which the corresponding Python code is generated. Signed-off-by:
Petr Pudlak <pudlak@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Helga Velroyen authored
In an effort to get rid of the python queries soon, this patch fixes a FIXME of the group queries regarding the missing testing of niceSort in this context. Due to the lack of actually weirdly named hostnames, this patch adds an extra unit test for hostnames instead. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Thomas Thrainer authored
Ganeti does not support optional fields in parameters (hypervisor-params, disk-params, etc.). OpenVSwitch related node parameters were the exception to this rule, which caused numerous problems related to import/export and (de-)serialization. The reason for making those parameters optional in the first place was to disallow them when OpenVSwitch is not used. This was not consistent with other parts of Ganeti, where we allow parameters to be set even though they are not actively used. This patch makes all node parameters mandatory and provides sensible defaults for them. Checks which make sure that certain parameters are not set in some cases were removed, and the tests adapted. Also, the inheritance logic from cluster -> node group -> node was implemented, as it was missing previously. Signed-off-by:
Thomas Thrainer <thomasth@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Jose A. Lopes authored
Update instance queries on the Haskell codebase to report 'USER_down', similarly to the Python instance queries. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Jose A. Lopes authored
Add instance state 'USER_down' which is a state used in reporting only and it represents the situation in which the user has shutdown the instance but Ganeti's configuration still has this instance marked as 'ADMIN_up'. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Jose A. Lopes authored
Add 'InstanceState' datatype which is the Haskell counterpart of the Python type 'HvInstanceState'. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Jose A. Lopes authored
Merge code of 'hs2py-constants' into 'hs2py', which requires adding flag '--constants', and merge target 'src/hs2py-constants' into 'src/hs2py' in 'Makefile.am', also updating dependencies and variables. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Jose A. Lopes authored
This is a transitional step before merging 'hs2py-constants' and 'hs2py'. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- 13 Nov, 2013 3 commits
-
-
Klaus Aehlig authored
Disks and nics can not only be addressed by indices, but also by name. Hence add a constructor for this case as well, to be faithful to the python world. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Hrvoje Ribicic <riba@google.com>
-
Petr Pudlak authored
A previous patch [229da00f ] added an annotation for ignoring the warning, but to the middle of a function, which doesn't compile. This patch moves the annotation to the end of the function to correct the problem. Signed-off-by:
Petr Pudlak <pudlak@google.com> Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Petr Pudlak authored
This warning appears only in newer versions of hlint (mine was v1.8.43), and in this case it's reported incorrectly. The arguments to "showJSON" have different types, therefore it's not possible to move "showJSON" in front of "if". Signed-off-by:
Petr Pudlak <pudlak@google.com> Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
- 08 Nov, 2013 12 commits
-
-
Klaus Aehlig authored
Handle this request by writing the jobs to the queue and inform masterd; masterd will then also distribute the jobs to all master candidates. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
As luxid is to take over responsibility for the job queue, handle this request by writing the job to the queue and then informing masterd; masterd will also distribute the job to all master candidates. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
Adding jobs to the queue is only allowed if the queue is not drained. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
Since luxid is going to write to the job queue, it needs to honor drains of the queue as well. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
During the transition to the new daemon layout, from step 2 onwards, luxid will write to the queue but masterd will trigger the execution. Therefore, add a new luxi request to tell masterd to pick up a job that has already been written to the queue. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Jose A. Lopes authored
Move Haskell constants from module 'Ganeti.HsConstants', which was a transitional module part of the Haskell to Python constant generation infrastructure, to module 'Ganeti.Constants'. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Jose A. Lopes authored
Tear down Python to Haskell constant conversion infrastructure, which includes eliminating the autotool 'convert-constants' and the Haskell module, namely 'Ganeti.PyConstants', which held the converted contants. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Klaus Aehlig authored
Two avoid two processes simultaneously accessing the same on-file structure, like the job queue, file locks are used. Therefore, provide this functionality in Haskell as well. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
To avoid several processes accessing the queue at the same time, Ganeti locks the queue via a lock file on disk. Provide the path to this file. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Klaus Aehlig authored
This function writes a (non-archived) job to disk. The file name can be computed from the job id, which is part of the job. Signed-off-by:
Klaus Aehlig <aehlig@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Jose A. Lopes authored
Add constants from additional modules ('ganeti.jstore') to the Haskell to Python constant generation. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-
Jose A. Lopes authored
Add constants from module 'ganeti.errors' to the Haskell to Python constant generation. Signed-off-by:
Jose A. Lopes <jabolopes@google.com> Reviewed-by:
Klaus Aehlig <aehlig@google.com>
-