- Oct 05, 2012
-
-
Michael Hanselmann authored
My local pylint didn't complain. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
This makes differences show up in “gnt-cluster verify”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
"gnt-instance replace-disks" now behaves like the other commands, and uses the default iallocator when "." is passed as the iallocator parameter. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
Now "gnt-instance recreate-disks" uses the default iallocator when "." is specified as the iallocator. For uniformity, the same behavior applies to these commands: gnt-node evacuate gnt-instance migrate gnt-instance add "." is used instead of "default" becuse the latter could be a valid name for an iallocator. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
- LoadAllowedFileStoragePaths: Loads a list of allowed file storage paths from a file - CheckFileStoragePath: Checks a path against the list of allowed paths The unit test for “utils.IsBelowDir” is updated with cases which weren't tested before. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
First: This enables the use of “gnt-job watch $id” for archived jobs. Now, the reason for actually making this work is that during sufficiently large group or node evacuations jobs are archived before the client gets to poll for their output. This led to situations where the jobs would finish successfully, but the client reported an error because it couldn't see the job anymore. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
If normal file storage was disabled but shared storage enabled, “_TransformFileStorageDir” would still throw an exception. in “opcodes._CheckStorageType” there's also a check, but I wasn't quite sure what the correct way of handling it was, so I added a TODO comment. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
We don't use generators often and lists are easier to re-use. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
This patch adds code to wipe newly added disk space when growing disks using “gnt-instance grow-disk”. “New disk space” is defined as the delta between the old block device size (not necessarily equal to the amount recorded in the configuration) and the new recorded size. Extra caution is taken to avoid overwriting existing data. Unit tests are included. A small typo in gnt-cluster(8) (“it's”) is also fixed. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 04, 2012
-
-
Michael Hanselmann authored
- LogInfo takes *args, no need to replace values right away - Don't overwrite wipe_chunk_size right after it's been set Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
This will also be used for verifying the file storage directory. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
The “WriteSsconfFiles” function is used to write ssconf files. By moving it we can avoid importing backend into bootstrap. The latter is imported by CLI programs and backend doesn't have much to do with them. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 03, 2012
-
-
Michael Hanselmann authored
Error messages don't need to say “please” and it's already obvious some investigation is needed. LogWarning already logs the message using “logging.error” internally. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
It is dangerous to have this block size as a global constant as that could give the impression of it being easily changed. Doing so without further adjustments to how “dd” is called will lead to disks not being wiped properly. Two additional parameter checks are added to “backend.BlockdevWipe”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
This fixes issue 190. The problem was that the check for DRBD was enabled if LVM storage is used and didn't depend at all on whether DRBD is enabled. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com> Signed-off-by:
Michael Hanselmann <hansmi@google.com>
-
- Oct 02, 2012
-
-
Michael Hanselmann authored
This patch is somewhat longer than was anticipated. Before, commands like “gnt-instance --help” would exit with the status code 1 (failure). With this patch, those commands exits with 0 (success) while unknown commands still print the usage screen and exit with status 1. To achieve this goal without too much ugly code some refactoring on cli._ParseArgs was necessary. Printing the version and usage screen was separated. At the same time this allows for some unit testing. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Iustin Pop authored
In 2.7 we will only support the Haskell version, if enabled. Since the original hconfd enabling was a bit hack-ish (copying over the actual installed ganeti-confd, Python version), the Makefile.am changes are a bit more involved than just the removal of the Python code. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Iustin Pop authored
This will need some more configure.ac checks for required libraries, which will come later with the Haskell dependencies reorganisation. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Sep 28, 2012
-
-
René Nussbaumer authored
The previous commits introduced some pylint errors. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
René Nussbaumer authored
This is the CLI part of the OpInstanceMultiAlloc change. There is some room for improvement especially with user handling, but it works for now and the code got simplified significantly. QA tests still needs to be written. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
René Nussbaumer authored
This is needed, as we're not strictly separating validation from populating the defaults. We do this all in one function. If we now receive a non complete OpInstanceCreate opcode in instances, we would run into AttributeErrors on those. So we run the validation + recursively on all instances opcodes. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
This code does not need to run as root, therefore it's better to split it out. It is now run with the same permissions as the master daemon. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Some parts of the code still use a hardcoded user name: root. This patch replaces all with a constant specified at build time. The end goal is to make it possible to run a Ganeti cluster without any special privileges (of course this will prevent some functionality from working). Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Sep 27, 2012
-
-
Michael Hanselmann authored
Otherwise chown(2) will fail when noded doesn't run as root. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
Make sure that all the nodes where a disk operation is peformed are locked. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
In case of in-place recreate-disks operation, all node locks were released before starting the actual execution. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Tuples are data structures, not containers. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
René Nussbaumer authored
It was very easy to refactor CreateInstance to repurpose some part of it for the instance multi allocation request. So we do this. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
René Nussbaumer authored
This is needed so we can load it as an opcode. However, this information should not be available on the client, so we inject that info when we receive the request. Provided unittest to verify behaviour. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Commit 3329f4de unintentionally changed the filenames of all daemon log files. This patch reverts part of those changes. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Sep 26, 2012
-
-
Agata Murawska authored
instance_info and all_instances_info calls had different per-instance return types, this commit fixes the mismatch. Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Sep 25, 2012
-
-
Michael Hanselmann authored
- pathutils: Prepend node-specific prefix path - RPC: Use virtual paths (see vcluster.py) - SSH: Pass environment variables, use destination's node directory when copying files using scp, use GANETI_HOSTNAME to determine hostname Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Michael Hanselmann authored
As requested by René Nussbaumer. Hopefully things are more clear now. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Sep 24, 2012
-
-
René Nussbaumer authored
This is straightforward. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
René Nussbaumer authored
This patch adds the Logical Unit for the instance multi allocation opcode. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
René Nussbaumer authored
Skeleton for the multi-allocation opcode Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
René Nussbaumer authored
We've some work which we need to do for the multi allocation request as well, so lets refactor it to separate functions. _ComputeNics is kinda ugly, as it reserves the MAC. I added a TODO to think more about how we factor this behaviour out. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-