Statistics
| Branch: | Tag: | Revision:

root / lib / config.py @ 3439fd6b

History | View | Annotate | Download (74.6 kB)

# Date Author Comment
57407093 09/18/2012 06:09 pm Michael Hanselmann

Migrate lib/config.py from constants to pathutils

File system paths moved from constants to pathutils.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

951accad 08/27/2012 05:18 pm Iustin Pop

Merge branch 'devel-2.6'

  • devel-2.6:
    Make stable-2.6 compatible with newer pep8
    Fix computation of disk sizes in _ComputeDiskSize
    Add verification of RPC results in _WipeDisks
    Add test for checking that all gnt-* subcommands run OK
    Fix double use of PRIORITY_OPT in gnt-node migrate...
5ae4945a 08/23/2012 02:41 pm Iustin Pop

Bump pep8 version to 1.2

Debian Wheezy will ship with this version, and it has many improved checks compared to 0.6, so let's:

- bump version in the docs
- silence some new checks that are wrong due to our indent=2 instead of 4
- fix lots of errors in the code where the indentation was wrong by 1...

2ed0e208 07/27/2012 12:16 pm Iustin Pop

Fix 'explicitely' common typo

It seems that 'explicitely' is wrong, and that the right form is
'explicitly'. This is just fixing the typo plus adjusting affected
paragraphs.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

8b057218 07/19/2012 03:15 pm René Nussbaumer

Fix setting ipolicy on node groups

On node groups we don't have the std field. However, the InstancePolicy
object always verifies that the std value is within a given range. As we
fill it up with defaults if not set (as it happens to be on node groups)
and the min value is higher than the default std value (taken from...

af9fb4cc 05/10/2012 02:56 pm René Nussbaumer

apidoc: Fix some typos and errors introduced by my previous patches

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

99ccf8b9 05/10/2012 02:30 pm René Nussbaumer

cmdlib: Remove all diskparams calculations not required anymore

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

8a147bba 05/10/2012 02:30 pm René Nussbaumer

config: Adding convenience method for disk parameters

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

5ad68a23 04/13/2012 04:19 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5: (29 commits)
    gnt-* {add,list,remove}-tags: Unify options
    Bump version for 2.5.0 final release
    configure.ac: Fix “too many arguments” error
    Fix extra whitespace
    Further fixes concerning drbd port release
    Fix a bug concerning TCP port release...
ce445897 04/12/2012 08:52 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    Bump version for 2.5.0 final release
    configure.ac: Fix “too many arguments” error
    Fix extra whitespace
    Further fixes concerning drbd port release
    Fix a bug concerning TCP port release
    Fix extra whitespace...
3b3b1bca 03/29/2012 06:28 pm Dimitris Aragiorgis

Fix a bug concerning TCP port release

Commit f396ad8 returns the TCP port used by DRBD disk back to the
TCP/UDP port pool using AddTcpUdpPort().

However, AddTcpUdpPort() writes the config on every invocation,
using _WriteConfig(). This causes two problems:...

080fbeea 03/22/2012 08:44 pm Michael Hanselmann

gnt-instance info: Show node group information

This requires acquiring the node group locks in shared mode.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

3ccb3a64 02/21/2012 05:23 pm Michael Hanselmann

Replace single- with double-quotes

In at least two cases "%s" is replaced with str(), too.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

82c54b5b 02/20/2012 01:27 pm Michael Hanselmann

config: Add check for disk's “iv_name”

This check verifies “iv_name” of all instance disks. If one is wrong
(which shouldn't happen in the first place), cluster verification will
warn:

“ERROR: cluster: Instance 'inst.example.com' has wrongly named disks:...

e2569c1d 02/17/2012 12:52 pm Michael Hanselmann

ConfigWriter: Stop using “iv_name”

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

ea642319 02/17/2012 12:52 pm Michael Hanselmann

ConfigWriter.RenameInstance: Stop using iv_name, safer operation

Stop using the disk index encoded in “iv_name” when renaming an instance.

This patch also changes the code to operate on a copy of the instance
until the major changes have been applied. In the case of a failure we...

ff6c5e55 01/26/2012 01:53 pm Iustin Pop

Add new ipolicy parameter vcpu_ratio

This adds the new parameter and changes the validation routines to
handle IPOLICY_PARAMETER value as floats. Very very ugly code :(,
should be redone much cleaner.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

12378fe3 01/26/2012 01:47 pm Iustin Pop

Rename IPOLICY_PARAMETERS to IPOLICY_ISPECS

As opposed to the initial situation, the PARAMETERS will be more than
just the min/std/max ispecs. Let's rename it, before re-adding the
PARAMETERS constant with a different meaning.

Signed-off-by: Iustin Pop <>...

2cc673a3 01/13/2012 03:16 pm Iustin Pop

Add new disk_templates parameter to instance policy

This is a bit more complex patch, as it requires changing the
assumption that all keys in the policy dict points to values that are
themselves dicts. Right now we introduce an assumption that any
non-dicts are lists, we'll see in the future if this holds or whether...

a41fd46e 01/09/2012 06:16 pm Michael Hanselmann

Merge branch 'devel-2.4' into stable-2.5

  • devel-2.4:
    Add UnescapeAndSplit unittest for multi-escapes
    Fix a bug in command line option parsing code
    ConfigWriter: Fix epydoc error
    LUGroupAssignNodes: Fix node membership corruption
    Ensure unused ports return to the free port pool...
81e3ab4f 12/08/2011 07:24 pm Agata Murawska

Introduce instance policy on nodegroup level

Signed-off-by: Agata Murawska <>
Reviewed-by: Iustin Pop <>

918eb80b 12/08/2011 07:23 pm Agata Murawska

Introduce instance policy on cluster level

Signed-off-by: Agata Murawska <>
Reviewed-by: Iustin Pop <>

c1ef933c 11/24/2011 04:11 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5:
    ConfigWriter: Fix epydoc error
    ConfigWriter: Fix epydoc error

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

1df43aa3 11/24/2011 02:22 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    ConfigWriter: Fix epydoc error

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Andrea Spadaccini <>

1d4930b9 11/24/2011 02:11 pm Michael Hanselmann

ConfigWriter: Fix epydoc error

The parameter is called “mods”, not “modes”.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Andrea Spadaccini <>
(cherry picked from commit 1730d4a1ab56ef36d082b614d3d0ab13f3e14a85)

1730d4a1 11/24/2011 02:07 pm Michael Hanselmann

ConfigWriter: Fix epydoc error

The parameter is called “mods”, not “modes”.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Andrea Spadaccini <>

75191077 11/24/2011 12:31 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5:
    LUGroupAssignNodes: Fix node membership corruption
    LUGroupAssignNodes: Fix node membership corruption
    Fix pylint warning on unreachable code
    LUNodeEvacuate: Disallow migrating all instances at once
    Separate OpNodeEvacuate.mode from iallocator...
2b9245ff 11/24/2011 11:04 am Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    LUGroupAssignNodes: Fix node membership corruption
    Fix pylint warning on unreachable code
    LUNodeEvacuate: Disallow migrating all instances at once
    LUNodeEvacuate: Locking fixes
    Fix error when removing node...
54c31fd3 11/24/2011 10:39 am Michael Hanselmann

LUGroupAssignNodes: Fix node membership corruption

Note: This bug only manifests itself in Ganeti 2.5, but since the
problematic code also exists in 2.4, I decided to fix it there.

If a node was assigned to a new group using “gnt-group assign-nodes” the...

218f4c3d 11/24/2011 10:32 am Michael Hanselmann

LUGroupAssignNodes: Fix node membership corruption

Note: This bug only manifests itself in Ganeti 2.5, but since the
problematic code also exists in 2.4, I decided to fix it there.

If a node was assigned to a new group using “gnt-group assign-nodes” the...

0e82dcf9 11/18/2011 01:48 pm Andrea Spadaccini

Merge branch 'devel-2.5'

  • devel-2.5: (24 commits)
    LUInstanceCreate: Release unused node locks
    htools: rework message display construction
    hbal: handle empty node groups
    Document OpNodeMigrate's result for RAPI
    Ensure unused ports return to the free port pool...
05c2e624 11/18/2011 12:05 pm Michael Hanselmann

Merge branch 'devel-2.4' into devel-2.5

  • devel-2.4:
    Ensure unused ports return to the free port pool
    Re-wrap a paragraph to eliminate a sphinx warning

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Guido Trotter <>

57de31c0 11/16/2011 03:15 pm Agata Murawska

Transition into and out of offline instance state

Signed-off-by: Agata Murawska <>
Reviewed-by: Iustin Pop <>

2e04d454 11/16/2011 03:15 pm Agata Murawska

Introduce admin_state as 3-values data type

Signed-off-by: Agata Murawska <>
Reviewed-by: Iustin Pop <>

9ca8a7c5 11/16/2011 03:15 pm Agata Murawska

Rename admin_up to admin_state

Signed-off-by: Agata Murawska <>
Reviewed-by: Iustin Pop <>

33be7576 11/14/2011 05:17 pm Andrea Spadaccini

Add use_external_mip_script cluster parameter

Add the use_external_mip_script cluster parameter, that represents
whether the master IP address turnup/turndown procedures must use a
script provided by the user (True) or the one provided by Ganeti
(False)....

f396ad8c 11/14/2011 11:03 am Vangelis Koukis

Ensure unused ports return to the free port pool

Ensure ports previously allocated by calling ConfigWriter's AllocatePort() are
returned to the pool of free ports when no longer needed:

  • Return the network_port of an instance when it is removed
  • Return the port used by a DRBD-based disk when it is removed...
cc19798f 11/07/2011 07:32 pm Michael Hanselmann

LUNodeSetParams: Lock affected instances only

Until now LUNodeSetParams would lock all instances if a node's
secondary IP address was to be changed and would then release
all instances it didn't actually need. With this patch the LU
optimistically locks instances and, once it got the locks,...

b2acdbdc 11/03/2011 06:30 pm Michael Hanselmann

Show RPC calls from config in lock monitor

With this patch all RPC calls at runtime of masterd will show up in the
lock monitor. There is a chicken-and-egg issue with initializing the
configuration with a context since the lock manager, containing the
monitor, requires the configuration. This is worked around by setting...

c79198a0 11/03/2011 04:39 pm Andrea Spadaccini

Pass MasterNetworkParameters instances in RPCs

Pass instances of objects.MasterNetworkParameters when calling RPCs for
activation and deactivation of master IP.

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Guido Trotter <>

f9d20654 11/03/2011 04:39 pm Andrea Spadaccini

Use MasterNetworkParameters attributes for RPC

Instead of manually unpacking the return values of
cfg.GetMasterNetworkParameters, let it return an instance of
objects.MasterNetworkParameters and pass its attributes.

Signed-off-by: Andrea Spadaccini <>...

c9f4b8e6 10/28/2011 12:34 pm Andrea Spadaccini

Add shortcut for network-related cluster params

Signed-off-by: Andrea Spadaccini <>
Reviewed-by: Michael Hanselmann <>

ee14d800 10/27/2011 09:52 pm Michael Hanselmann

config: Add unlocked function to get all node objects

This will be used for resolving node names.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

415a7304 10/26/2011 11:53 am Michael Hanselmann

rpc: Convert last two calls to generated code

These two calls, “upload_file” and “write_ssconf_files” are treated
separated as they're used by the configuration, where we can't use the
normal resolver.

There's still some duplicated code in rpc.py, but that will be taken...

5a8648eb 10/05/2011 12:05 pm Andrea Spadaccini

Add cluster netmask parameter

Add the master_netmask cluster parameter, that represents the netmask of
the master IP, encoded as a CIDR suffix.

This parameter can be set via the --master-netmask of gnt-cluster init
and gnt-cluster modify. The default behaviour is to be consistent with...

b459a848 08/30/2011 11:24 am Andrea Spadaccini

DeprecationWarning fixes for pylint

In version 0.21, pylint unified all the disable-* (and enable-*)
directives to disable (resp. enable). This leads to a lot of
DeprecationWarning being emitted even if one uses the recommended
version of pylint (0.21.1, as stated in devnotes.rst)....

e687ec01 08/25/2011 01:53 pm Michael Hanselmann

PEP8 style fixes

Identified using the “pep8” utility.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

ce523de1 08/04/2011 04:19 pm Michael Hanselmann

Fix broken object references in docstrings

The module is called “objects”, not “object”.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

71333cb9 08/03/2011 05:41 pm Iustin Pop

Optimise use of repeated/looping GetInstanceInfo

Similar to the previous patch, this adds a helper function to
eliminate repeated calls info ConfigWriter.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

f5eaa3c1 08/03/2011 05:41 pm Iustin Pop

Optimise use of repeated/looping GetNodeInfo

This adds a new ConfigWriter.GetMultiNodeInfo function and replaces
multiple/looping calls to GetNodeInfo with it.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

07346f28 06/01/2011 08:08 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    jqueue: Fix potential race condition when cancelling queued jobs
    Fix argument order in ReserveLV and ReserveMAC

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

8785b71b 05/30/2011 06:03 pm Apollon Oikonomopoulos

Fix argument order in ReserveLV and ReserveMAC

ConfigWriter.ReserveLV() and Configwriter.ReserveMAC() called
TemporaryReservationManager.Reserve() with the ec_id and resource arguments
swapped. As a result, two reservation attempts for the same resource type...

dac81741 05/25/2011 12:30 pm Michael Hanselmann

config: Add method to get members of nodes' groups

This will be used for locking during node evacuation.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

c71b049c 05/19/2011 02:01 pm Michael Hanselmann

config: Add function to get instances in node group

This will be used for evacuating instances in a node group.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

93384b8c 05/11/2011 05:14 pm Guido Trotter

Merge branch 'devel-2.4'

  • devel-2.4:
    Use floppy disk and a second CDROM on KVM
    Document the selection of instance kernels
    Make root_path an optional hypervisor parameter
    Some man page updates
    Add 2 new variables to the OS scripts environment
    Add --no-wait-for-sync when converting to drbd...
9d5b1371 05/06/2011 01:46 pm Michael Hanselmann

Fix race condition in LUGroupAssignNodes

The original code would get all node information and their groups
without before acquiring the necessary locks. With this patch the node
information is only retrieved once all locks have been acquired. Groups
are locked optimistically and verified after acquiring the node locks....

2674690b 05/05/2011 02:09 pm Michael Hanselmann

config: Add function to determine instance's groups

This will be used for locking only the necessary node group(s)
for per-instance operations.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

2afc9238 04/14/2011 11:36 am Iustin Pop

Prevent ssconf values from having non-string values

For whatever reason, my test cluster managed to acquire
shared_file_storage_dir with a None value, instead of empty
string. This is not flagged in masterd itself, but the node daemon
will fail in writing the value to disk, as it calls len() on the...

3a93eebb 03/11/2011 07:05 pm Michael Hanselmann

Fix epydoc warning about unknown reference

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

fe698b38 03/11/2011 06:35 pm Michael Hanselmann

config: Wrap MatchNameComponent, reduce lock duration

- Remove duplication by merging two MatchNameComponent into a wrapper
- Reduce lock duration by getting list of names under lock and then
matching names without the lock
- Also, ExpandNodeName's docstring is fixed....

4b97f902 03/01/2011 07:11 pm Apollon Oikonomopoulos

Core shared file storage support

This patch introduces core file storage support, consisting of the following:

A configure-time switch for enabling/disabling shared file storage
support and controlling the shared file storage location:
--with-shared-file-storage-dir=. Shared file storage configuration is then...

18ffc0fe 02/01/2011 02:15 pm Stephen Shirley

Enforce that new node groups have unique names

Signed-off-by: Stephen Shirley <>
Reviewed-by: René Nussbaumer <>

e85d8982 02/01/2011 02:15 pm Stephen Shirley

Add _UnlockedLookupNodeGroup()

This allows calling of _UnlockedLookupNodeGroup() from within
AddNodeGroup()

Signed-off-by: Stephen Shirley <>
Reviewed-by: René Nussbaumer <>

7e01d204 01/28/2011 03:57 pm Iustin Pop

ConfigWriter: simplify _UnlockedVerifyConfig

This just adds a 'cluster' local variable for reducing duplication.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

26f2fd8d 01/28/2011 03:57 pm Iustin Pop

ConfigWriter: add checks for be/nd/nic params

This adds checking (in the configuration) for invalid be, nd and nic
params. The code is a bit tricky as nd params are at cluster,
nodegroup and node level, nicparams are at cluster and nic level,
whereas beparams are at cluster and instance level....

0389c42a 01/28/2011 02:43 pm Stephen Shirley

Prevent removal of last node group

- Add check in ConfigWriter to prevent last node group from being
removed
- Tidy up error message a bit

Signed-off-by: Stephen Shirley <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

075b62ca 01/20/2011 07:43 pm Iustin Pop

Another fix for LUClusterVerifyDisks

The LVM queries should only be done for vm_capable nodes. In order to
do this, we also add a new ConfigWriter method to abstract that query.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

90e99856 12/13/2010 06:33 pm Adeodato Simo

Add the "alloc_policy" attribute to node groups

This can be set at group creation time and via OpSetGroupParams. The default
is "preferred", and existing node groups from previous Ganeti version will
get the attribute set to this value.

Signed-off-by: Adeodato Simo <>...

31ed0b58 12/09/2010 05:14 pm Guido Trotter

Merge branch 'devel-2.3'

  • devel-2.3:
    Fix rename for file-backed instances

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

d1a0ab50 12/09/2010 05:13 pm Guido Trotter

Merge branch 'devel-2.2' into devel-2.3

  • devel-2.2:
    Fix rename for file-backed instances

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

3721d2fe 12/09/2010 05:09 pm Guido Trotter

Fix rename for file-backed instances

Currently the code wrongly changes the disk logical/physical id
component representing the path from "$storage_dir/$iname/disk$seq" to
"$storage_dir/$iname/disk/$seq" (note the additional slash) breaking the
rename.

Signed-off-by: Guido Trotter <>...

75cf411a 12/08/2010 09:45 pm Adeodato Simo

Introduce constant for the name of the initial node group

Signed-off-by: Adeodato Simo <>
Reviewed-by: Michael Hanselmann <>

e11a1b77 12/08/2010 02:27 pm Adeodato Simo

config.py, objects.py: more node group support

In particular:

- add AddNodeGroup and RemoveNodeGroup in config.py
- refactor _UpgradeConfig to make use of _UnlockedAddNodeGroup
- add support for objects.NodeGroup in ConfigWriter.Update; add missing...
e0f9ed64 12/02/2010 05:21 pm Adeodato Simo

config.py: add error code to OpPrereqError

This adds a errors.ECODE_NOENT for OpPrereqError in LookupNodeGroup.

Signed-off-by: Adeodato Simo <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

913cc25e 12/02/2010 05:20 pm Adeodato Simo

config.py: replace "node group" with "nodegroup"

Though code uses "nodegroup" as data member name, strings that will be
read by the user should use "node group" (with a space), since "nodegroup"
is not a word.

Signed-off-by: Adeodato Simo <>...

c033f259 12/01/2010 03:14 pm Michael Hanselmann

Merge branch 'devel-2.3'

  • devel-2.3:
    Correct version check for release candidates
    config.py: need explicit %-formatting in errors.OpPrereqError.
    Fix version check
    Add script to check version format

Conflicts:
Makefile.am

Signed-off-by: Michael Hanselmann <>...

c49b0092 11/30/2010 06:15 pm Adeodato Simo

config.py: need explicit %-formatting in errors.OpPrereqError.

Signed-off-by: Adeodato Simo <>
Reviewed-by: Michael Hanselmann <>

5768e6a6 11/23/2010 01:57 pm René Nussbaumer

Adding convenience getter for ndparams

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

28a7318f 11/11/2010 02:16 pm Iustin Pop

Add unittests for TemporaryReservationManager

And fix an error message.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

a7359d91 11/11/2010 12:30 pm David Knowles

TempReservationManager: Reserved() doesn't work

Note: It appears this has been around since the initial checkin of
TemporaryReservationManager. I have no idea what this could break, so
someone else may want to test this more thoroughly.

Signed-off-by: David Knowles <>...

412b3531 11/01/2010 07:27 pm Guido Trotter

Improve LookupNodeGroup's docstring

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

648e4196 11/01/2010 07:27 pm Guido Trotter

Add ConfigWriter.GetNodeGroup

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

1fc34c48 11/01/2010 05:02 pm Michael Hanselmann

config: Write ssconf after renaming instance

This fixes a bug where the ssconf_instance_list file was
not updated after an instance rename.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

1ac6f2ad 10/28/2010 05:06 pm Guido Trotter

ConfigWriter.GetNodeGroupList

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

8bf9e9a5 10/28/2010 02:51 pm Iustin Pop

ConfigWriter: add some helper functions

This can be used to compute a node's instances easily, and a small
function to get all non-vm_capable nodes.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

490acd18 10/27/2010 01:46 pm Iustin Pop

Add the master/vm_capable flags to objects

This adds the flag and some initial handling. The rest of the changes,
for cmdlib, come in a separate patch.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

b30aded7 10/26/2010 03:38 pm Michael Hanselmann

Merge branch 'devel-2.2'

  • devel-2.2:
    Allow remote imports without checked names
    ConfigWriter: Fix typo in error message parts
    Fix remote imports

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

f936c153 10/26/2010 12:48 pm Iustin Pop

Rename node.nodegroup to node.group

In the context of a node, its group has (at least today) only one
meaning, that is the node's node group. As such, we rename
node.nodegroup to just node.group.

Note: if we want to keep node in there, it should be at least...

622444e5 10/26/2010 12:47 pm Iustin Pop

Export node group data in iallocator

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

3d889a7d 10/25/2010 02:03 pm Michael Hanselmann

ConfigWriter: Fix typo in error message parts

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

eb180fe2 10/22/2010 06:23 pm Iustin Pop

ConfigWriter: prevent using a foreign config

If the configuration file doesn't denote this node as master, we prevent
startup. This would have detected our previous race condition more
easily, hence we add it as a permanent check.

Signed-off-by: Iustin Pop <>...

bd407597 10/22/2010 06:23 pm Iustin Pop

ConfigWriter: protect against multiple writers

This should fix the case where there are two masters that both try to
distribute the configuration file to the cluster. The first one that does so,
will "win" the ownership of the config.data.

Signed-off-by: Iustin Pop <>...

4b63dc7a 10/13/2010 02:42 pm Iustin Pop

"Fix" handling of old software versions on startup

Currently, masterd startup with old software versions is very confusing
for users: we present two tracebacks, with a message in the middle about
"version mismatch". This can lead to users believing that all that needs...

485ba212 09/29/2010 02:42 pm Guido Trotter

Avoid nodegroup name/uuid conflicts

Forbid nodegroups to be called with a name that matches the UUID regular
expression. Uppercase versions are forbidden as well.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

ace16501 09/15/2010 03:42 pm Guido Trotter

Check for duplicate nodegroup names

Since the nodegroups dict is indexed by uuid duplicate names might
happen as a result of bugs. Add a check to prevent them.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

6f076453 09/14/2010 07:49 pm Guido Trotter

Export nodegroups list (names/uuids) via ssconf

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

190e3cb6 09/14/2010 07:49 pm Guido Trotter

Add node's nodegroup field

If a node doesn't have a node group we'll upgrade the config making it
the cluster default. Also the node add and removal operations are
changed to set/clear the node group correctly. Finally we populate the
"members" list of nodegroups on config load with the value from the...

6520ba14 09/14/2010 07:40 pm Guido Trotter

Check for nodegroup uuid indexing

Since the uuid is immutable the probability of it getting out of sync
between the object and the dict key is very low. Still, checking is
cheap, so we do it to be more sure nothing is wrong.

Signed-off-by: Guido Trotter <>...

eaa98a04 09/14/2010 07:40 pm Guido Trotter

config.LookupNodeGroup

This function allows a node group to be looked up by name or uuid.
If no nodegroup is specified and only one exists, that one is returned.

Signed-off-by: Guido Trotter <>
Reviewed-by: Michael Hanselmann <>

f9e81396 09/14/2010 07:40 pm Guido Trotter

ConfigWriter: create the default node group

If no node groups exist we'll create a new default empty one.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>