- Oct 19, 2012
-
-
Iustin Pop authored
We also need to change the signature for _GetInstanceInfo, since we don't have access to the instance dictionary in the rename instance test. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Currently, we set "info" metadata on block devices at device creation time, but we never update it, leading to stale data in case of instance renames. This would not be a big problem in case of regular renames (assuming this is a rare operation), but importing instances into the cluster via the import/export feature usually is done with a rename; this means that all imported instances have wrong information in their block devices. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This patch adds a small helper function to clear an LV's tags, and calls it at SetInfo time. We need this to be able to correctly track instance renames, once we will call SetInfo at such times. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
I wanted to write that snippet the third time, which is too much :) Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This can indeed be annoying, so let's document it. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Adeodato Simo <dato@google.com>
-
Michael Hanselmann authored
While writing the initial version of this design I misunderstood what “setup-ssh” does. It doesn't actually start the node daemon and just configures SSH, nothing else. This patch adds the cluster name as a field to the JSON structure and clarifies the purpose of the node daemon certificate given. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
For simple SSH keys, that is those without options such as “command="…"”, only the first two parts need to be compared. The third field is a free-form comment. This patch changes the comparison used in AddAuthorizedKey/RemoveAuthorizedKey to take this into account. Lines with options are still compared in full. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
This can be used to detect a reboot between two checks. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
- Oct 18, 2012
-
-
Michael Hanselmann authored
There might be more, but at least replace all these low-hanging fruits. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Guido Trotter authored
This design addresses the lack of a uniform way to query ganeti nodes for real time information that can be used by monitoring. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Since we now have the GeneralResult as a multi-purpose monad, we can remove the custom OpResult monad, and just use 'GeneralResult FailMode' as our type. This allows removal of a few bits of specialised infrastructure, relying instead on the generic one. The restriction on using OpResult as a general monad remains as before. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
* devel-2.6: ensure-dirs: Don't accept arguments ensure-dirs: Fix program name on usage screen cli: Fix small typo Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Before they would just be silently ignored. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
No string replacements are used, so doubling of the percent sign is not necessary. Before: Usage: %ensure-dirs [--full-run] After: Usage: ensure-dirs [--full-run] Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Instead of using the sphinx-specific highlight extension, which is not parsed by Pandoc, let's switch to the standard RST directive, which will be picked up and will result in slightly nicer man pages when converted to HTML (in man output it remains the same). Note that I've converted only some of the examples (the one that actually had shell scripts); the ones that show command lines (e.g. starting with '#') I didn't convert, as they don't look nice (and Pandoc/Kate highlighting doesn't have the equivalent of our shell-example lexer we use in sphinx). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Iustin Pop authored
This is straightforward; only one shell example remained, but as we process the man pages via pandoc and not sphinx, it's not actually used, we leave it as such for now. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Iustin Pop authored
While reading the docs, I saw that this is not converted to the shell lexer, and that a few other small improvements can be done. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Helga Velroyen authored
Furthermore, a few messages have their capitalisation changed (fixed). Signed-off-by:
Helga Velroyen <helgav@google.com> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Commit 21a5e56c forgot to rename a variable used in a conditional (of course shell didn't complain about unused vars), so the AM_CONDITIONAL was always false. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Adeodato Simo <dato@google.com>
-
- Oct 17, 2012
-
-
Iustin Pop authored
Currently, our error monad—Result—has a plain string error type. This is not good, as we don't have structured errors, we can't pass back proper error information to Python code, etc. To solve this, we generalise this type as 'GenericResult a', and make Result an alias to 'GenericResult String' for compatibility with the old code. New error hierarchies will be introduced as different types. Furthermore, we generalise our helper functions too, so that they can work on any 'GeneralInstance a' type, not only Result. There are two small drawbacks to this generalisation. First, a Monad instance requires (at least for the way we use it) a 'fail :: String -> m a' instance, so we need to be able to build an 'a' value from a string; therefore, we can implement the Monad instance only for a newly-introduced typeclass, 'FromString', which requires the needed conversion function. Second, due to the fact that 'String' is a type alias (for [Char]) instead of an actual type, we need to enable the FlexibleInstances language pragma; as far as I know, this has no significant drawbacks. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Dato Simó authored
* devel-2.6: htools-excl.test: add test case for exclusion tags in hbal Instance.hs: rename 'tags' to 'exclTags', provide 'allTags' Group.hs: add 'allTags'; adjust loaders and test data for it Add hbal-excl-tags.data to Makefile.am, missed in 0397694e Conflicts: Makefile.am: hbal-excl-tags.data moved under htest/ htools/Ganeti/HTools/Luxi.hs: types from Qlang are now used htools/Ganeti/HTools/QC.hs: defGroup definition now in TestHTools.hs lib/cmdlib.py: IAllocator class now in iallocator.py test/htools-excl.test: moved under htest/ Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
s/it/if/ Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Dato Simó <dato@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dato Simó authored
Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Dato Simó authored
This commit adds a Group.allTags field to store the tags of node groups, and teaches each loader backend in HTools to populate it (additionally, the IAllocator class in lib/cmdlib.py now includes tags for groups too). Test data is updated to include an empty set of tags for node groups in all affected test cases. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dato Simó authored
The mergeData function in Loader.hs included a step to filter an instance's tags to include only the exclusion tags (as specified via the commandline, or cluster-level tags). Later on, code in Node.hs assumed Instance.tags to contain only tags to be used for exclusion. Because in the future we will need to access the full list of an instance's tags (and not only exclusion tags), this commits deprecates the 'tags' field, and introduces Instance.exclTags and Instance.allTags. Instance.allTags is now populated from the different backends (Text, Luxi, Rapi, etc.), and Instance.exclTags is only populated from Loader.mergeData, as was done previously. This means that loading tags from e.g. Text or Simu and assuming that they'll be used as exclusion tags without going through Loader.hs will no longer work; but this was already the case with other fields, and 'mergeData' or 'loadExternalData' continue to be the only entry points to get a consistent view of the cluster. (Additionally, there were no tests that made this assumption that I could find.) Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dato Simó authored
In preparation for future modifications in the exclusion tags field, add a test that verifies that exclusion tags are being honored: in a test cluster with two instances of the same exclusion group in each node, hbal should shuffle instances around to improve the score. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Sorry, I didn't see this before pushing 5a7cb9d3… Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Adeodato Simo <dato@google.com>
-
Iustin Pop authored
This takes care of a FIXME; 2.6 already uses the new method, so we're good during upgrades. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Per a conversation on ganeti@googlegroups.com: - gnt-os diagnose ; gnt-os list take in consideration blank lines in /etc/ganeti/instance-image/variants.list that could be confusing. Let's fix this and also let's ignore comment lines. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
New parameters, “--pending”, “--queued” and “--waiting”, are added to select all jobs in the respective state. If one of those options is used and “--force” is not given, the user is asked to confirm the operation. Unit tests are included. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Mention that the file is something new and should be written by cfgupgrade. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 16, 2012
-
-
Michael Hanselmann authored
There is no need for the “_IsUniqueSequence” function anymore, it can easily be replaced by utils.FindDuplicates. Also, pass the message as a keyword parameter and use the more commonly used assert* functions. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
This is a first design for executing commands via RPC. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
This document should be kept up-to-date. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
This constant contains the job status' “queued”, “waiting” and “cancelled”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
* devel-2.6: ensure-dirs: Fix permissions on master socket Update security document for version 2.6 Update NEWS and bump version to 2.6.1 Text.hs: update field lists in parseData comments Conflicts: NEWS: Trivial lib/tools/ensure_dirs.py: constant moved to pathutils Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
A socket shouldn't have its executable bit set. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Quite some things were out of date. Some formatting was also updated. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
This only supports test delay for now, is not built by default (only on demand), and is also not installed anywhere. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Also add some more haddock structure to the module. The RPC call itself is rather trivial. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-