commit be43b7e41ee2b042520e75d931b12d116010ebe3
Merge: 3ae2892 713d40d
Author: Klaus Aehlig <[email protected]>
Date:   Wed May 28 10:45:56 2014 +0200

    Merge branch 'stable-2.12' into master
    
    * stable-2.12
      Move Statistics data type to a separate submodule of Utils
      Add the old MAC reservation code to ConfigMock
      Forward MAC reservations from ConfigWriter to WConfD
      Expose MAC reservations to WConfd's RPC interface
      Add functions for reserving MAC addresses
      Add a function for listing all MAC addresses in a cluster
      Add a function for looking up a value in a container
      Improve the RPC Python function argument names generator
      Add an implementation for multi-maps
      Add a lens for Set that works with 'Bool -> Bool'
      Add a function for traversing over a composition of functors
      Structure Ganeti.Config a bit
      Retrieving default values of dicts properly
      Fix static method calls in 'move-instance'
      Fix lint error in 'masterd'
      Add missing import of rapi.client_utils
      Another fix for 'too-many-branches' for 'cfgupgrade'
      Fix lint errors for 'ganeti-listrunner'
      Fix lint errors of 'cfgupgrade'
      Fix lint errors in 'cfgupgrade12'
      Fix lint errors in 'confd-client'
      Fix lint error in lvmstrap
      Fix lint errors of move-instance
    
    * stable-2.11
      (no changes)
    
    * stable-2.10
      Use more efficient statistics for the standard deviation
      Use statistics updates when allocating on pairs
      Factor score computation through abstract statistics
      Verify the update of the standard deviation statistics
      Add data type for abstract statistics
      Relax test requirements
      Fix gnt-network client wrt instances report
      Fix QueryNetworks wrt instances
    
    Signed-off-by: Klaus Aehlig <[email protected]>

diff --cc tools/cfgupgrade
index 19a658d,c256130..d480ee8
--- a/tools/cfgupgrade
+++ b/tools/cfgupgrade
@@@ -457,16 -536,14 +467,10 @@@ def DowngradeAll(config_data)
    # it can be removed when updating to the next version.
    config_data["version"] = version.BuildVersion(DOWNGRADE_MAJOR,
                                                  DOWNGRADE_MINOR, 0)
 -  DowngradeCluster(config_data)
 -  DowngradeGroups(config_data)
 -  DowngradeNodes(config_data)
 -  DowngradeTopLevelDisks(config_data)
 -  DowngradeInstances(config_data)
 +  DowngradeExtAccess(config_data)
  
  
- def main():
-   """Main program.
- 
-   """
-   global options, args # pylint: disable=W0603
- 
-   # Option parsing
+ def _ParseOptions():
    parser = optparse.OptionParser(usage="%prog [--debug|--verbose] [--force]")
    parser.add_option("--dry-run", dest="dry_run",
                      action="store_true",
@@@ -570,17 -708,11 +635,11 @@@ def main()
  
    # Downgrade to the previous stable version
    if options.downgrade:
-     if not ((config_major == TARGET_MAJOR and config_minor == TARGET_MINOR) or
-             (config_major == DOWNGRADE_MAJOR and
-              config_minor == DOWNGRADE_MINOR)):
-       raise Error("Downgrade supported only from the latest version (%s.%s),"
-                   " found %s (%s.%s.%s) instead" %
-                   (TARGET_MAJOR, TARGET_MINOR, config_version, config_major,
-                    config_minor, config_revision))
-     DowngradeAll(config_data)
+     _Downgrade(config_major, config_minor, config_version, config_data,
+                config_revision)
  
 -  # Upgrade from 2.{0..10} to 2.12
 -  elif config_major == 2 and config_minor in range(0, 12):
 +  # Upgrade from 2.{0..12} to 2.13
 +  elif config_major == 2 and config_minor in range(0, 13):
      if config_revision != 0:
        logging.warning("Config revision is %s, not 0", config_revision)
      UpgradeAll(config_data)

-- 
Klaus Aehlig
Google Germany GmbH, Dienerstr. 12, 80331 Muenchen
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschaeftsfuehrer: Graham Law, Christine Elizabeth Flores

Reply via email to