Merge stable-2.7 into stable-2.8
authorMichele Tartara <mtartara@google.com>
Fri, 3 May 2013 08:10:43 +0000 (10:10 +0200)
committerMichele Tartara <mtartara@google.com>
Fri, 3 May 2013 08:38:15 +0000 (10:38 +0200)
Conflicts:
INSTALL
NEWS
configure.ac
src/Ganeti/Query/Group.hs
test/hs/Test/Ganeti/Objects.hs
test/hs/Test/Ganeti/Query/Query.hs

Signed-off-by: Michele Tartara <mtartara@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>

16 files changed:
1  2 
INSTALL
Makefile.am
NEWS
UPGRADE
configure.ac
doc/admin.rst
doc/install.rst
lib/bdev.py
lib/cmdlib.py
lib/constants.py
lib/hypervisor/hv_kvm.py
lib/hypervisor/hv_xen.py
man/gnt-instance.rst
src/Ganeti/Query/Server.hs
src/Ganeti/THH.hs
tools/move-instance

diff --cc INSTALL
+++ b/INSTALL
@@@ -180,22 -194,19 +190,22 @@@ a few more Haskell libraries enabled: t
    bindings for the ``pcre`` library
  - `attoparsec <http://hackage.haskell.org/package/attoparsec>`_
  - `vector <http://hackage.haskell.org/package/vector>`_
 +- `snap-server` <http://hackage.haskell.org/package/snap-server>`_, version
 +  0.8.1 and above.
  
 -These libraries are available in Debian Wheezy (but not in Squeeze, with
 -the exception of curl), so you can use either apt::
 +These libraries are available in Debian Wheezy (but not in Squeeze), so you
 +can use either apt::
  
    $ apt-get install libghc-hslogger-dev libghc-crypto-dev libghc-text-dev \
 -                    libghc-hinotify-dev libghc-regex-pcre-dev libghc-curl-dev \
 -                    libghc-attoparsec-dev libghc-vector-dev libpcre3-dev
 +                    libghc-hinotify-dev libghc-regex-pcre-dev \
 +                    libghc-attoparsec-dev libghc-vector-dev \
 +                    libghc-snap-server-dev
  
 -or ``cabal``::
 +or ``cabal``, after installing a required non-Haskell dependency::
  
 -  $ apt-get install libprcre3-dev libcurl4-openssl-dev
 -  $ cabal install hslogger Crypto text hinotify==0.3.2 regex-pcre curl \
 -                  attoparsec vector
 +  $ apt-get install libpcre3-dev
-   $ cabal install hslogger Crypto text hinotify regex-pcre \
++  $ cabal install hslogger Crypto text hinotify==0.3.2 regex-pcre \
 +                  attoparsec vector snap-server
  
  to install them.
  
diff --cc Makefile.am
@@@ -444,11 -426,15 +444,15 @@@ mandocrst = $(addprefix doc/man-,$(notd
  HS_BIN_PROGS=src/htools
  
  # Haskell programs to be installed in the MYEXECLIB dir
 -if ENABLE_MONITORING
++if ENABLE_MOND
  HS_MYEXECLIB_PROGS=src/mon-collector
+ else
+ HS_MYEXECLIB_PROGS=
+ endif
  
 -# Haskell programs to compiled but not installed automatically
 -# Usually they have their own specific installation rules
 +# Haskell programs to be compiled by "make really-all"
  HS_COMPILE_PROGS= \
 +      src/ganeti-mond \
        src/hconfd \
        src/rpc-test
  
diff --cc NEWS
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
@@@ -2,32 -2,10 +2,32 @@@ New
  ====
  
  
 +Version 2.8.0 beta1
 +-------------------
 +
 +*(unreleased)*
 +
 +- The minimum Python version needed to run Ganeti is now 2.6.
 +- The :doc:`Remote API <rapi>` daemon now supports a command line flag
 +  to always require authentication, ``--require-authentication``. It can
 +  be specified in ``$sysconfdir/default/ganeti``.
 +- A new cluster attribute 'enabled_disk_templates' is introduced. It will
 +  be used to manage the disk templates to be used by instances in the cluster.
 +  Initially, it will be set to a list that includes plain, drbd, if they were
 +  enabled by specifying a volume group name, and file and sharedfile, if those
 +  were enabled at configure time. Additionally, it will include all disk
 +  templates that are currently used by instances. The order of disk templates
 +  will be based on Ganeti's history of supporting them. In the future, the
 +  first entry of the list will be used as a default disk template on instance
 +  creation.
 +- ``cfgupgrade`` now supports a ``--downgrade`` option to bring the
 +  configuration back to the previous stable version.
 +
 +
- Version 2.7.0 beta3
- -------------------
+ Version 2.7.0 rc1
+ -----------------
  
- *(Released Mon, 22 Apr 2013)*
+ *(unreleased)*
  
  Incompatible/important changes
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --cc UPGRADE
Simple merge
diff --cc configure.ac
@@@ -564,25 -582,42 +564,44 @@@ if test "$enable_monitoring" != no; the
    MONITORING_PKG=
    AC_GHC_PKG_CHECK([attoparsec], [],
                     [MONITORING_PKG="$MONITORING_PKG attoparsec"])
 +  AC_GHC_PKG_CHECK([snap-server], [],
 +                   [MONITORING_PKG="$MONITORING_PKG snap-server"])
+   MONITORING_DEP=
+   if test "$has_confd" = False; then
+     MONITORING_DEP="$MONITORING_DEP confd"
+   fi
+   has_monitoring_pkg=False
    if test -z "$MONITORING_PKG"; then
-     has_monitoring=True
+     has_monitoring_pkg=True
    elif test "$enable_monitoring" = check; then
      AC_MSG_WARN(m4_normalize([The required extra libraries for the monitoring
 -                              agent were not found ($MONITORING_PKG),
 +                              daemon were not found ($MONITORING_PKG),
                                monitoring disabled]))
    else
      AC_MSG_FAILURE(m4_normalize([The monitoring functionality was requested, but
                                   required libraries were not found:
                                   $MONITORING_PKG]))
    fi
+   has_monitoring_dep=False
+   if test -z "$MONITORING_DEP"; then
+     has_monitoring_dep=True
+   elif test "$enable_monitoring" = check; then
+     AC_MSG_WARN(m4_normalize([The optional Ganeti components required for the
+                               monitoring agent were not enabled
+                               ($MONITORING_DEP), monitoring disabled]))
+   else
+     AC_MSG_FAILURE(m4_normalize([The monitoring functionality was requested, but
+                                  required optional Ganeti components were not
+                                  found: $MONITORING_DEP]))
+   fi
  fi
- if test "$has_monitoring" = True; then
-   AC_MSG_NOTICE([Enabling the monitoring daemon usage])
+ if test "$has_monitoring_pkg" = True -a "$has_monitoring_dep" = True; then
+   has_monitoring=True
+   AC_MSG_NOTICE([Enabling the monitoring agent usage])
  fi
 -AC_SUBST(ENABLE_MONITORING, $has_monitoring)
 -AM_CONDITIONAL([ENABLE_MONITORING], [test "$has_monitoring" = True])
 +AC_SUBST(ENABLE_MOND, $has_monitoring)
 +AM_CONDITIONAL([ENABLE_MOND], [test "$has_monitoring" = True])
  
  # development modules
  HS_NODEV=
diff --cc doc/admin.rst
@@@ -261,9 -277,9 +277,9 @@@ can give include, among others
  
  - Arguments for the NICs of the instance; by default, a single-NIC
    instance is created. The IP and/or bridge of the NIC can be changed
 -  via ``--nic 0:ip=IP,bridge=BRIDGE``
 +  via ``--net 0:ip=IP,link=BRIDGE``
  
- See the manpage for gnt-instance for the detailed option list.
+ See :manpage:`ganeti-instance(8)` for the detailed option list.
  
  For example if you want to create an highly available instance, with a
  single disk of 50GB and the default memory size, having primary node
diff --cc doc/install.rst
Simple merge
diff --cc lib/bdev.py
Simple merge
diff --cc lib/cmdlib.py
Simple merge
Simple merge
Simple merge
@@@ -909,9 -767,12 +909,11 @@@ class XenHvmHypervisor(XenHypervisor)
      constants.HV_CPU_CAP: hv_base.NO_CHECK,
      constants.HV_CPU_WEIGHT:
        (False, lambda x: 0 < x < 65535, "invalid weight", None, None),
+     constants.HV_VIF_TYPE:
+       hv_base.ParamInSet(False, constants.HT_HVM_VALID_VIF_TYPES),
      }
  
 -  @classmethod
 -  def _WriteConfigFile(cls, instance, startup_memory, block_devices):
 +  def _GetConfig(self, instance, startup_memory, block_devices):
      """Create a Xen 3.1 HVM config file.
  
      """
@@@ -28,10 -28,11 +28,11 @@@ AD
  
  | **add**
  | {-t|\--disk-template {diskless | file \| plain \| drbd \| rbd}}
 -| {\--disk=*N*: {size=*VAL* \| adopt=*LV*}[,vg=*VG*][,metavg=*VG*][,mode=*ro\|rw*]
 -|  \| {size=*VAL*,provider=*PROVIDER*}[,param=*value*... ][,mode=*ro\|rw*]
 +| {\--disk=*N*: {size=*VAL* \| adopt=*LV*}[,options...]
 +|  \| {size=*VAL*,provider=*PROVIDER*}[,param=*value*... ][,options...]
  |  \| {-s|\--os-size} *SIZE*}
- | [\--no-ip-check] [\--no-name-check] [\--no-start] [\--no-install]
+ | [\--no-ip-check] [\--no-name-check] [\--no-conflicts-check]
+ | [\--no-start] [\--no-install]
  | [\--net=*N* [:options...] \| \--no-nics]
  | [{-B|\--backend-parameters} *BEPARAMS*]
  | [{-H|\--hypervisor-parameters} *HYPERVISOR* [: option=*value*... ]]
Simple merge
Simple merge
Simple merge