Guido Trotter [Thu, 25 Apr 2013 08:37:29 +0000 (10:37 +0200)]
Improve check for "unreleased" versions in NEWS
Currently this is checked only when distcheck-release is called.
Check it in check-news instead, for all versions before the "current"
one (as defined by configure.ac)
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Klaus Aehlig [Thu, 25 Apr 2013 08:31:48 +0000 (10:31 +0200)]
Update documentation for text format
In commit
000ca91a the text format was extended to also include
information about the master node. This commit updates the
htools man page to reflect this change.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Klaus Aehlig [Wed, 24 Apr 2013 16:30:26 +0000 (18:30 +0200)]
Merge branch 'stable-2.7' into stable-2.8
Conflicts:
NEWS
doc/rapi.rst
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Bernardo Dal Seno [Wed, 24 Apr 2013 12:40:35 +0000 (14:40 +0200)]
Add missing fields in htools text-backend documentation
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Bernardo Dal Seno [Wed, 24 Apr 2013 14:08:10 +0000 (16:08 +0200)]
cfgupgrade: Remove enabled_disk_templates on downgrade
Remove enabled_disk_templates instead of the deprecated
enabled_storage_types.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Michele Tartara [Tue, 23 Apr 2013 11:38:44 +0000 (13:38 +0200)]
Reason trail implementation for "start"
Opcode-specific implementation of the reason trail for the instance
startup operation.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Michele Tartara [Mon, 22 Apr 2013 15:26:29 +0000 (15:26 +0000)]
Reason trail implementation for "shutdown"
Opcode-specific implementation of the reason trail for the instance shutdown
operation.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Bernardo Dal Seno [Fri, 12 Apr 2013 13:53:24 +0000 (15:53 +0200)]
QA: More tests for instance policies in groups
Instance policies are changed and checked for changes.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Fri, 12 Apr 2013 08:22:35 +0000 (10:22 +0200)]
QA: Split function to set and parse instance policies
The main parts, moved to qa_util, will be used for node groups too.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Mon, 4 Mar 2013 23:30:33 +0000 (00:30 +0100)]
QA: Update tests for new ipolicy specs command-line options
The old command-line options weren't working any more. Utility functions
are updated, and broken tests are removed (new tests are coming in the
following patches).
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Mon, 15 Apr 2013 09:52:04 +0000 (11:52 +0200)]
Add unit tests for cfgupgrade with a real configuration
Test upgrade and downgrade from a realistic 2.7 configuration.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Wed, 10 Apr 2013 23:06:24 +0000 (01:06 +0200)]
Split functions in cfupgrade unit tests
This makes easier to test real configurations.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Mon, 8 Apr 2013 18:42:59 +0000 (20:42 +0200)]
cfgupgrade: Limit specs in ipolicy are always complete
Partial specs are filled with cluster defaults.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Mon, 8 Apr 2013 18:40:40 +0000 (20:40 +0200)]
Limit specs in ipolicy command lines are always complete
Command line options are brought in line with the specs change of previous
patch. Old options are still allowed in gnt-cluster init, where the
semantic will remain non-ambiguous even after introducing multiple specs.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Mon, 8 Apr 2013 18:36:34 +0000 (20:36 +0200)]
Limit specs in instance policies are always complete
Specs used to specify limits in instance policies are always complete, even
at group level (only the whole limit set can be overridden). This is in
preparation for introducing multiple limits.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Tue, 9 Apr 2013 15:37:00 +0000 (17:37 +0200)]
Refactor tests in ipolicy validation
This makes the code more modular, in preparation for the following patches.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Fri, 5 Apr 2013 15:56:41 +0000 (17:56 +0200)]
QA for --ipolicy-xxx-specs and show-ispecs-cmd
The tests check the interactions between the two commands.
Also refactored group QA code to separate tests about ipolicy, as those
tests are going to grow in complexity.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Thu, 4 Apr 2013 20:30:59 +0000 (22:30 +0200)]
Add command to print ipolicy options
The output of this command can be used to create an exact copy of the
current instance policy specs. The command could be expanded to print all
the options used to create a group or the cluster.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Bernardo Dal Seno [Mon, 11 Mar 2013 14:12:21 +0000 (15:12 +0100)]
Add --ipolicy-xxx-specs options
These options allow to specify whole instance policy specs. This is needed
for the upcoming changes that tend to threat specs as monolithic objects.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Wed, 6 Mar 2013 12:03:44 +0000 (13:03 +0100)]
New CLI input type: list of key/value pairs
This will be used for the new instance specs options.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Mon, 8 Apr 2013 17:59:25 +0000 (19:59 +0200)]
Allow "default" as a value for ipolicy templates
Previously the string value was being corrupted.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Bernardo Dal Seno [Fri, 5 Apr 2013 12:48:26 +0000 (14:48 +0200)]
Document all --ipolicy-... options
They were missing from the man pages.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Thomas Thrainer [Tue, 23 Apr 2013 12:04:23 +0000 (14:04 +0200)]
Extract DRBD-related classes into block/drbd.py
This is in preparation to introducing support for DRBD8.4.
base.py had to be extracted as well in order to avoid cylic imports
between bdev.py and drbd.py. It now contains the BlockDev class and
utility functions needed by bdev.py and drbd.py.
Signed-off-by: Thomas Thrainer <thomasth@google.com>
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Thomas Thrainer [Tue, 23 Apr 2013 12:04:22 +0000 (14:04 +0200)]
Move lib/bdev.py to lib/block/bdev.py
That's in preparation of extracting DRBD related code from bdev.py. As
bdev.py is already rather long, new features will require to split it
into more manageable pieces. That's why it's moved in an own directory.
Signed-off-by: Thomas Thrainer <thomasth@google.com>
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Guido Trotter [Tue, 23 Apr 2013 12:05:28 +0000 (14:05 +0200)]
Fix a few unclear sentences in gnt-cluster(8)
The renew-crypto entry had a few obscure sentences. Improve it by
rephrasing it.
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Michele Tartara [Tue, 23 Apr 2013 08:42:03 +0000 (08:42 +0000)]
Make burnin compatible with the reason trail
The burnin uses its own option list, different from the one of all other
command line programs, and uses it as a parameter to a function that now
requires the "--reason" option to be present.
This commit updates the burnin option list to be compatible with the reason
trail implementation.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Mon, 22 Apr 2013 11:50:26 +0000 (13:50 +0200)]
Extend the simulation backend to also simulate a master node
In a simulated cluster as created by the simulation backend to
the htools, make the first node of the first node group the master
node. In this way, hools (like hroller) that require a master node
can also be used on simulated clusters, e.g., for testing.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Klaus Aehlig [Mon, 22 Apr 2013 11:09:06 +0000 (13:09 +0200)]
Add unit tests for hroller
Add a unit test for hroller in a situation where the order
is completely determined. There are 3 nodes where node 2 has,
for each of the other nodes, an instanced shared with it. So
node 2 has to be a reboot group of its own. There are no more
instances, hence, my minimality, the other two nodes have to
form a single group. Node 1 is the master, and hence has to
be rebooted last; this determines the order.
Also add a unit test verifying that hroller rejects configurations
with multiple master nodes, even if the option --force is given.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Fri, 19 Apr 2013 12:58:43 +0000 (14:58 +0200)]
Extend Text format by marking the master node
Sometimes, e.g., for hroller, it is necessary to know which node
is the master node. Therefore this information has to be included
in the text format as well. Since we never use an offline node as
master node, we can put this information can be put in the "is
offline" field; as old versions only check this field for equality
to "Y", using "M" to indicate the master is compatible in both
directions. This also leaves room to add more roles in the future,
should we need them.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Sebastian Gebhard [Mon, 22 Apr 2013 15:28:57 +0000 (17:28 +0200)]
Minor changes / bugfixes in documentation
Signed-off-by: Sebastian Gebhard <sege@fs.ei.tum.de>
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Michele Tartara [Fri, 22 Mar 2013 18:31:56 +0000 (19:31 +0100)]
Reason trail implementation for instance reboot
This commits allows ganeti to correctly forward the reason trail information
regarding instance reboot.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Tue, 26 Mar 2013 09:27:37 +0000 (10:27 +0100)]
Add "reason" as a common parameter for all the RAPI calls
Also, this add an infrastructure for having parameters common to all the
RAPI calls.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Tue, 26 Mar 2013 09:33:21 +0000 (10:33 +0100)]
Add infrastructure for adding common RAPI parameters
Some parameters can be common to all the RAPI calls: this commit
adds the possibility of specifying them just once, instead of
manually adding them to the classes describing each call.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Tue, 26 Mar 2013 08:54:03 +0000 (09:54 +0100)]
Add job_id and index to the reason trail
The reason trail will contain an item indicating the job_id and the
index number of the current opcode inside the job queue.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Tue, 26 Mar 2013 12:58:53 +0000 (13:58 +0100)]
Add the reason trail to the opcodes
The reason trail is available for all the opcodes, and as such it is
initialized as a generic option.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 17:24:51 +0000 (18:24 +0100)]
Add a field to store the reason trail in OpCodes
The reason trail will be available for all the OpCodes, so the field that
is to contain it has to be added to the OpCode base class.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 17:19:38 +0000 (18:19 +0100)]
Provide "--reason" as a parameter for all commands
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 15:51:07 +0000 (16:51 +0100)]
Add function for extending the reason trail
Noded functions will have to extend the reason trail specifying what
operation is being executed.
This commit adds a function for doing that (will be used by future commits).
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 15:14:41 +0000 (16:14 +0100)]
Add an opcode name conversion function
Add a function to convert an opcode class name to a source string for the
reason trail, factoring out the code in common with the existing _NameToId
function.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 15:00:25 +0000 (16:00 +0100)]
Add function for storing the reason trail of an instance
We are interested in storing the reason trail for operations that changed
the state of instances. This commit adds a function to do this.
Also, the GetInstReasonFilename() function name is prepended with an
underscore because it is only used in this file.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 14:21:06 +0000 (15:21 +0100)]
Add function for getting the timestamp in nanoseconds
The timestamp is returned as an integer number of nanoseconds since the Unix
epoch.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 14:15:26 +0000 (15:15 +0100)]
Add TMaybeList as a new type for parameters
This will be used as the type for the reason trail parameter.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 14:11:31 +0000 (15:11 +0100)]
Add constants for the reason trail implementation
A few constants are required, describing the source reason of the opcode.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 25 Mar 2013 13:55:31 +0000 (13:55 +0000)]
Remove old "reason" implementation
Remove the useless parts of the old, partial, implementation of the support for
tracking the reason of instances state change, before implementing the new
reason trail support, as per the design document.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Fri, 22 Mar 2013 18:26:34 +0000 (19:26 +0100)]
More specifics on the implementation of the reason trail
Adding the reason trail as a parameter instead of as a new class attribute fits
better with the current structure of the system.
Also, the description of what part of the implementation will be OpCode
specific and which will be shared is added.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Michele Tartara [Mon, 22 Apr 2013 09:22:25 +0000 (09:22 +0000)]
Add monitoring daemon user to user creation script
The script was added to Ganeti before the monitoring daemon, so it
did not include that user yet.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Klaus Aehlig [Mon, 22 Apr 2013 09:08:29 +0000 (11:08 +0200)]
devel/review: fix addition of reviewer from environment
In commit 3dd990, the possibility of taking a default reviewer
from the environment was introduced. Fix two deficits here
- perl does not inherit the environment
- add at all places.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Bernardo Dal Seno [Fri, 19 Apr 2013 12:39:28 +0000 (14:39 +0200)]
QA: Skip RAPI setup when RAPI is disabled
This is similar to
405692ef, reverted in
aeefb4cd.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Guido Trotter [Mon, 22 Apr 2013 09:05:07 +0000 (11:05 +0200)]
Bump up version for 2.7.0~beta3
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Guido Trotter [Thu, 18 Apr 2013 13:53:11 +0000 (15:53 +0200)]
Update NEWS for 2.7.0~beta3
- Most entries for beta1 are moved to the top level
- The beta1 to beta2 delta is left
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Michele Tartara [Tue, 16 Apr 2013 12:56:39 +0000 (12:56 +0000)]
Allow proper cleanup of partially created disks
During the creation of an instance, if the creation of disks fails, some
partially created disks might remain lying around. There is an already
implemented cleanup procedure, but it requires the disks to be listed in the
disks_created variable, which is updated after the creation of the disk itself
to prevent it from removing disks already existing previously.
This patch introduces a better tracking of partially created disks, so that
they can be removed without risking removing already existing ones.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Thu, 18 Apr 2013 12:53:45 +0000 (14:53 +0200)]
Make hroller insist on finding precisely one master node
As people rely on the master node being the last node of the last
group, make hroller fail, if no master node could be found in the
cluster. This happens, e.g., if a backend format is used that does not
contain information about the master node. The error can be turned
into a warning by using the --force option.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Wed, 17 Apr 2013 11:13:17 +0000 (13:13 +0200)]
Update hroller man page: master node is last
Where the information is available, hroller now schedules the
master node as the last node in the last group. Update the man
page to reflect this change.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Wed, 17 Apr 2013 09:22:02 +0000 (11:22 +0200)]
In Rapi, set master correctly
The cluster data contains the information about the master
node. Use this information to set the isMaster bit correctly.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Tue, 16 Apr 2013 12:19:36 +0000 (14:19 +0200)]
In Luxi, set the master correctly
The cluster data contains the information about the master
node. Use this information to set the isMaster bit correctly.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Wed, 17 Apr 2013 09:42:28 +0000 (11:42 +0200)]
Utility function to set the master node in a node list
The information about which node is the master node is a cluster-wide
setting, in most formats provided independently of the node information.
Most backends therefore have to set the isMaster bit indepently in the
obtained node list. This patch provides a utility function for this.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Tue, 16 Apr 2013 08:57:39 +0000 (10:57 +0200)]
Make Hroller present master node last
If in the list of nodes to be scheduled for maintaince,
one is marked as being the master node, schedule it
as the last node in the last group.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Mon, 15 Apr 2013 12:54:23 +0000 (14:54 +0200)]
Extend the node description by isMaster
Extend the description of the node by the property
of being the master node; also provide and appropriate
setter function. This property will be used, e.g., by
hroller to schedule reboot of the master last.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Wed, 17 Apr 2013 11:23:37 +0000 (13:23 +0200)]
update hroller man page: node group filtering is implemented
Filtering of nodes by node group was already implemented in
2fce67b; fix the man page to reflect this change.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Guido Trotter [Fri, 19 Apr 2013 10:22:36 +0000 (12:22 +0200)]
Use correct name for design-storagespace.rst
This was renamed in b284f50 but the old name was still in use in the
makefile and draft designs list.
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Helga Velroyen [Wed, 17 Apr 2013 17:56:47 +0000 (19:56 +0200)]
Storage type design doc: ipolicy vs. enabled disk templates
Adding the design decision regarding the consistency of the enabled disk
templates in the ipolicy and in the cluster config.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Helga Velroyen [Wed, 17 Apr 2013 17:50:30 +0000 (19:50 +0200)]
Rename design doc from space reporting to storage types
Since the design doc for storage space reporting ended up being mostly
about disk templates and storage types, and the space reporting being
just a small part of it, I am renaming the design doc.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Helga Velroyen [Wed, 17 Apr 2013 18:55:47 +0000 (20:55 +0200)]
QA: Fix error regarding missing names of disk configs
This fixes an error in case there are no disk names in the QA config
(which was the case till recently). Right now, QA tries to use 'None'
as disk name and that makes instance creation fail.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Helga Velroyen [Wed, 17 Apr 2013 22:15:41 +0000 (00:15 +0200)]
Revert "Make invocation of rapi test configurable ..."
This reverts commit
405692eff3d6f8400834f2df93d597bc7e4dd89f, because it
breaks QA.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Klaus Aehlig [Fri, 12 Apr 2013 09:34:55 +0000 (11:34 +0200)]
devel/review: take default reviewer from environment
When adding a 'Reviewed-by'-line, also add the reviewer
passed through the REVIEWER environment variable. In that
way, adding the reviewer for patch series all reviewed
by the same person gets easier.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Michele Tartara [Thu, 18 Apr 2013 08:26:34 +0000 (10:26 +0200)]
Better wording of a documentation sentence
Specify that the need to manually modify the metavg only applies to
clusters with DRBD enabled, and is not always required.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Michele Tartara [Thu, 18 Apr 2013 08:01:17 +0000 (10:01 +0200)]
Specify behaviour of vg-name change in gnt-cluster manual
The current behaviour of a volume group name change after the cluster
has been initialized can be somewhat unclear. This patch specifies it
more esplicitly in the man page.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Klaus Aehlig <aehlig@google.com>
Michele Tartara [Wed, 17 Apr 2013 15:32:00 +0000 (17:32 +0200)]
Set the default metavg to be equal to the cluster name
The default metavg was always set to be the constant value "xenvg".
This is OK for most cases, but if the cluster is initialized with
a default name through the --vg-name option, the metavg should change
as well.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Helga Velroyen [Wed, 17 Apr 2013 19:54:11 +0000 (21:54 +0200)]
Make invocation of rapi test configurable by QA config
This does not solve the underlying problem of the rapi test not
being runnable locally, but it makes it at least configurable
to avoid having to patch in/out all the time.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Thomas Thrainer [Wed, 17 Apr 2013 13:21:32 +0000 (15:21 +0200)]
Fix warnings hlint 1.8.43 complained about
These lines are ok according to previous versions of hlint but trigger
an error with version 1.8.43.
Signed-off-by: Thomas Thrainer <thomasth@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Fri, 12 Apr 2013 09:40:25 +0000 (12:40 +0300)]
Preserve device names during instance move
Fix 'move-instance' tool to preserve the instance disk and NIC names
when moving instances from one cluster to another. Also, fix value error
since an instance NIC is an 8-tuple, containing also name and UUID.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:17 +0000 (11:51 +0300)]
Update manpages wrt new device refering
This patch updates gnt-instance man page to include refering to devices
by their name and UUID.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:16 +0000 (11:51 +0300)]
Update QA tests to check disk and NIC names
Modify existing tests to use the name option for instance disks. The
configuration options 'disk' and 'disk-growth' are merged into a single
'disks' option, which is a list of dictionaries with 'size', 'growth' and
'name' items.
Also, add 'instance-device-names' QA test, which tests addition, renaming
and removal of named devices.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:15 +0000 (11:51 +0300)]
Add name to INicParams and IDiskParams
This commits adds name to NIC and Disk modification definition.
Signed-off-by: Chris Stavrakakis <cstavr@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:14 +0000 (11:51 +0300)]
Add nic/disk name and UUID fields in Haskell code
Add name and uuid fields to Disk and nic Haskell objects. Also,
since they now have an UUID, make them instances of UuidObject.
Signed-off-by: Christor Stavrakakis <cstavr@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:13 +0000 (11:51 +0300)]
Add Disks and NICs to _AllUUIDObjects
Since disks and NICs have UUIDs, they must be considered
to _AllUUIDObjects.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:12 +0000 (11:51 +0300)]
Display UUIDs and names in gnt-instance info
Modify gnt-instance client to display the UUID and name
fields of instances disks and NICs.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:11 +0000 (11:51 +0300)]
Support quering for devices names and UUIDs
Extend instance queries to list 'uuid' and 'name' fields of instance's
Disks and NICs.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:10 +0000 (11:51 +0300)]
Check that device names are unique and valid
Extend the CheckArguments phase of LUInstanceCreate and CheckPrereq
phase of LUInstanceSetParams to also check if the name parameters of
disks and NICs are unique and valid.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:09 +0000 (11:51 +0300)]
Implement renaming Disks and NICs
Implement renaming Disks and NICs in LUInstanceSetParams. Remove code
that checked that changing disk mode was the only disk modification
supported. Also, handle case of 'None' value for 'name' parameter.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:08 +0000 (11:51 +0300)]
Support UUIDs and names when refering to a device
Modify _ApplyContainerMods function to lookup NICs/Disks not only by their
index inside the container, but also by their UUID or name. Abstract the
lookup code in new GetItemFromContainer function.
Make type of identifier in "opcode._TestInstSetParamsModList" to be
TInt or TString.
Modify gnt-instance client to not check if identifier is an integer.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:07 +0000 (11:51 +0300)]
Support UUIDs and names when handling NICs/Disks
Handle UUID and name fields when creating/managing NICs and Disks. Also,
export NICs and Disks names to instance hooks environment.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:06 +0000 (11:51 +0300)]
Add IDISK_NAME and INIC_NAME constants
Declare IDISK_NAME and INIC_NAME constants and add them to the
IDISK_PARAMS_TYPE and INIC_PARAMS_TYPE.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:05 +0000 (11:51 +0300)]
Add uuid and name slots to Disk/NIC ConfigObjects
This patch adds "uuid" and "name" slots to Disk and NIC ConfigObjects.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Christos Stavrakakis [Thu, 4 Apr 2013 08:51:04 +0000 (11:51 +0300)]
Add design doc for device UUIDs and names
This commit adds the design document for adding UUID and name slots to NIC and
Disk objects and the ability to refer to them by these slots.
Signed-off-by: Christos Stavrakakis <cstavr@grnet.gr>
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Reviewed-by: Helga Velroyen <helgav@google.com>
Guido Trotter [Tue, 16 Apr 2013 15:06:29 +0000 (08:06 -0700)]
users setup: add masterd to confd group
Without this masterd fails saving the config, because it can't change
the group on the file.
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Guido Trotter [Sun, 14 Apr 2013 15:51:08 +0000 (08:51 -0700)]
Move HooksMaster out of the mcpu module
We need to do this, so that backend.py doesn't need to import mcpu, and
thus indirectly cmdlib. This reduces the size of the node daemon by
about half, which is very important as it is pinned in memory.
This solves Issue 419.
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Aaron Knister [Mon, 15 Apr 2013 16:26:36 +0000 (12:26 -0400)]
Use KB as the unit for LVM PE size
LogicalVolume.Attach in bdev.py is calling "lvs" and specifying a unit of
Megabytes that is then converted to an integer resulting in the value 0 for
small sizes.
This patch makes Ganeti use KB for the unit instead of MB.
Fixes Issue 347.
Signed-off-by: Aaron Knister <aaron.knister@gmail.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Bernardo Dal Seno [Sun, 14 Apr 2013 14:31:35 +0000 (16:31 +0200)]
QA: Test enabled disk templates with known configuration
The test failed because it was executed also in a configuration that wasn't
expected, i.e., with exclusive storage enabled.
Also the docstring is shortened, as it was being truncated in the QA output.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Bernardo Dal Seno [Sun, 14 Apr 2013 14:25:45 +0000 (16:25 +0200)]
QA: Decision about disk templates to use is more modular
qa_config.IsTemplateSupported() is already used to decide which disk
templates are supported by QA. Enabled templates now are part of that
decision.
Unit tests are updated.
Signed-off-by: Bernardo Dal Seno <bdalseno@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Michele Tartara [Fri, 12 Apr 2013 08:47:06 +0000 (08:47 +0000)]
Improve RAPI documentation for command line usage
Provide some more insights about how to use the RAPI from the command line
through the "curl" command.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Michele Tartara [Tue, 26 Mar 2013 16:21:43 +0000 (16:21 +0000)]
More info on using the RAPI
Add some additional information about how to use/test the RAPI,
including how to specify authentication credentials.
Cherry picked from
681f4f7bb95a2b467f917c84a68ccf9aa7665763 on master.
Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
Klaus Aehlig [Tue, 9 Apr 2013 14:58:31 +0000 (16:58 +0200)]
Fix typo in documentation string
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Klaus Aehlig [Fri, 12 Apr 2013 07:57:49 +0000 (09:57 +0200)]
Adapt test data to changed ipolicy format
The test data for hail allocating a multi-disk instance was
originally added in the 2.7 branch. On master the format
of the ipolicy had changed; "min" and "max" are no longer
top-level of the ipolicy, but instead below the "minmax"
key. Hence change the test data accordingly after the merge
to master.
Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Michele Tartara <mtartara@google.com>
Guido Trotter [Thu, 11 Apr 2013 21:32:31 +0000 (17:32 -0400)]
Remove mistaken merge conflict line from NEWS
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Guido Trotter [Thu, 11 Apr 2013 21:03:32 +0000 (17:03 -0400)]
Merge branch 'devel-2.7'
* devel-2.7: (26 commits)
Fix burnin install path
Fix format of the NEWS file
NEWS: Add news entry for the hail disk policy fix
Add shelltests verifying hail applies disk ipolicy per disk
Make the disks parameter available to the constructor
Verify individual disks in Instance
Compatibility fix for GHC 7
Properly update iv_name of disks while changing templates
Limit the size of networks to /16
Check minimum size of networks on creation
Fix job queue directory permission problems
The disk size of a diskless instance is 0, not None
Postpone non-urgent TODO from 2.7 to 2.9
Add tool for creating users and groups
Backwards compatibility fix for Lucid
Properly export errors while reading job list
Fix typo and improve comment
Fix a bug in the Runtime tests
Restrict instance move to templates based on local files
Introduce a constant for the copyable disk templates
...
Conflicts:
NEWS: trivial
lib/network.py: trivial
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>
Helga Velroyen [Thu, 28 Mar 2013 12:45:32 +0000 (13:45 +0100)]
Update man page 'gnt-cluster' regarding disk templates
This documents the new 'gnt-cluster init/modify' option
'--enabled-disk-templates' in the man page.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michele Tartara <mtarara@google.com>
Helga Velroyen [Thu, 28 Mar 2013 10:34:42 +0000 (11:34 +0100)]
Removes the 'sharedfile' storage type
Since storage type are supposed to represent the underlying technology
of disk templates, the storage type 'sharedfile' is superfluous, because
technically both disk templates 'file' and 'sharedfile' use the file system.
This will be of use when implementing the storage space reporting for
all disk templates.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michele Tartara <mtarara@google.com>
Helga Velroyen [Tue, 26 Mar 2013 16:34:41 +0000 (17:34 +0100)]
Update NEWS file regarding disk types
This patch extends the NEWS file describing the essential user-facing
changes in this patch series.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michele Tartara <mtarara@google.com>
Helga Velroyen [Wed, 27 Mar 2013 15:02:47 +0000 (16:02 +0100)]
Consistency checks for config wrt disk templates
This patch adds consistency checks for the configuration regarding
disk templates. In particular, it checks that the list of enabled
disk templates is not empty, does not contain any bogus templates,
and that all instances use actually enabled disk templates.
Additionally, it fixes a small formatting issue regarding the list
of enabled hypervisors.
Signed-off-by: Helga Velroyen <helgav@google.com>
Reviewed-by: Michele Tartara <mtarara@google.com>