Hello community,

here is the log from the commit of package crmsh for openSUSE:Factory checked 
in at 2016-06-14 23:06:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/crmsh (Old)
 and      /work/SRC/openSUSE:Factory/.crmsh.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "crmsh"

Changes:
--------
--- /work/SRC/openSUSE:Factory/crmsh/crmsh.changes      2016-05-23 
16:40:43.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.crmsh.new/crmsh.changes 2016-06-14 
23:06:54.000000000 +0200
@@ -1,0 +2,19 @@
+Wed Jun 01 08:22:41 UTC 2016 - kgronl...@suse.com
+
+- Update to version 2.2.0+git.1464769043.9e4df55:
+  * medium: tmpfiles: Create temporary directory if non-existing (bsc#981583)
+
+-------------------------------------------------------------------
+Thu May 26 04:40:28 UTC 2016 - kgronl...@suse.com
+
+- Update to version 2.2.0+git.1464237560.fd9e583:
+  + high: constants: Add maintenance to set of known attributes (bsc#981659)
+  + medium: xmlutil: reduce unknown attribute to warning (bsc#981659)
+
+-------------------------------------------------------------------
+Wed May 25 09:20:57 UTC 2016 - kgronl...@suse.com
+
+- Update to version 2.2.0+git.1464167894.621fe00:
+  + medium: scripts: no-quorum-policy=ignore is deprecated (bsc#981056)
+
+-------------------------------------------------------------------

Old:
----
  crmsh-2.2.0+git.1463777827.9b402a8.tar.bz2

New:
----
  crmsh-2.2.0+git.1464769043.9e4df55.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ crmsh.spec ++++++
--- /var/tmp/diff_new_pack.HEPd8d/_old  2016-06-14 23:06:55.000000000 +0200
+++ /var/tmp/diff_new_pack.HEPd8d/_new  2016-06-14 23:06:55.000000000 +0200
@@ -32,13 +32,13 @@
 
 %{!?python_sitelib: %define python_sitelib %(python -c "from 
distutils.sysconfig import get_python_lib; print get_python_lib()")}
 
-%define version_unconverted 2.2.0+git.1463777827.9b402a8
+%define version_unconverted 2.2.0+git.1464769043.9e4df55
 
 Name:           crmsh
 Summary:        High Availability cluster command-line interface
 License:        GPL-2.0+
 Group:          %{pkg_group}
-Version:        2.2.0+git.1463777827.9b402a8
+Version:        2.2.0+git.1464769043.9e4df55
 Release:        0
 Url:            http://crmsh.github.io
 Source0:        %{name}-%{version}.tar.bz2

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.HEPd8d/_old  2016-06-14 23:06:55.000000000 +0200
+++ /var/tmp/diff_new_pack.HEPd8d/_new  2016-06-14 23:06:55.000000000 +0200
@@ -1,4 +1,4 @@
 <servicedata>
 <service name="tar_scm">
             <param name="url">git://github.com/ClusterLabs/crmsh.git</param>
-          <param 
name="changesrevision">9b402a8f9970f430a037dd0251ea88155d569ef4</param></service></servicedata>
\ No newline at end of file
+          <param 
name="changesrevision">9e4df55617a3255398064d789af1b5180d0de736</param></service></servicedata>
\ No newline at end of file

++++++ crmsh-2.2.0+git.1463777827.9b402a8.tar.bz2 -> 
crmsh-2.2.0+git.1464769043.9e4df55.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/constants.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/constants.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/constants.py   2016-05-23 
10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/constants.py   2016-06-01 
10:22:40.000000000 +0200
@@ -203,7 +203,7 @@
 precious_attrs = ("id-ref",)
 op_extra_attrs = ("interval",)
 rsc_meta_attributes = (
-    "allow-migrate", "is-managed", "interval-origin",
+    "allow-migrate", "maintenance", "is-managed", "interval-origin",
     "migration-threshold", "priority", "multiple-active",
     "failure-timeout", "resource-stickiness", "target-role",
     "restart-type", "description", "remote-node", "requires",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/corosync.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/corosync.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/corosync.py    2016-05-23 
10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/corosync.py    2016-06-01 
10:22:40.000000000 +0200
@@ -414,8 +414,7 @@
     p.add('nodelist', make_section('nodelist.node', node_value))
 
     num_nodes = p.count('nodelist.node')
-    if num_nodes > 2:
-        p.remove('quorum.two_node')
+    p.set('quorum.two_node', '1' if num_nodes == 2 else '0')
 
     f = open(conf(), 'w')
     f.write(p.to_string())
@@ -445,8 +444,7 @@
     if nth == -1:
         return
 
-    if p.count('nodelist.node') <= 2:
-        p.set('quorum.two_node', '1')
+    p.set('quorum.two_node', '1' if num_nodes == 2 else '0')
 
     f = open(conf(), 'w')
     f.write(p.to_string())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/msg.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/msg.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/msg.py 2016-05-23 
10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/msg.py 2016-06-01 
10:22:40.000000000 +0200
@@ -139,38 +139,10 @@
     err_buf.error("%s not available, check your installation" % name)
 
 
-def no_file_err(name):
-    err_buf.error("%s does not exist" % name)
-
-
-def missing_prog_warn(name):
-    err_buf.warning("could not find any %s on the system" % name)
-
-
-def node_err(msg, node):
-    err_buf.error("%s: %s" % (msg, etree.tostring(node, pretty_print=True)))
-
-
-def node_debug(msg, node):
-    err_buf.debug("%s: %s" % (msg, etree.tostring(node, pretty_print=True)))
-
-
-def no_attribute_err(attr, obj_type):
-    err_buf.error("required attribute %s not found in %s" % (attr, obj_type))
-
-
-def bad_def_err(what, msg):
-    err_buf.error("bad %s definition: %s" % (what, msg))
-
-
 def unsupported_err(name):
     err_buf.error("%s is not supported" % name)
 
 
-def no_such_obj_err(name):
-    err_buf.error("%s object is not supported" % name)
-
-
 def missing_obj_err(node):
     err_buf.error("object %s:%s missing (shouldn't have happened)" %
                   (node.tag, node.get("id")))
@@ -181,10 +153,6 @@
                   (constraint_id, obj_id))
 
 
-def obj_exists_err(name):
-    err_buf.error("object %s already exists" % name)
-
-
 def no_object_err(name):
     err_buf.error("object %s does not exist" % name)
 
@@ -197,10 +165,6 @@
     err_buf.error("%s: id is already in use" % node_id)
 
 
-def skill_err(s):
-    err_buf.error("%s: this command is not allowed at this skill level" % s)
-
-
 def syntax_err(s, token='', context='', msg=''):
     err = "syntax"
     if context:
@@ -233,10 +197,6 @@
     err_buf.info("offending string: %s" % s)
 
 
-def cib_no_elem_err(el_name):
-    err_buf.error("CIB contains no '%s' element!" % el_name)
-
-
 def cib_ver_unsupported_err(validator, rel):
     err_buf.error("Unsupported CIB: validator '%s', release '%s'" %
                   (validator, rel))
@@ -261,9 +221,5 @@
         err_buf.info("offending xml: %s" % xml)
 
 
-def not_impl_info(s):
-    err_buf.info("%s is not implemented yet" % s)
-
-
 err_buf = ErrorBuffer()
 # vim:ts=4:sw=4:et:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/tmpfiles.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/tmpfiles.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/tmpfiles.py    2016-05-23 
10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/tmpfiles.py    2016-06-01 
10:22:40.000000000 +0200
@@ -30,6 +30,14 @@
             pass
 
 
+def _mkdir(directory):
+    if not os.path.isdir(directory):
+        try:
+            os.makedirs(directory)
+        except OSError as err:
+            raise ValueError("Failed to create directory: %s" % (err))
+
+
 def add(filename):
     '''
     Remove the named file at program exit.
@@ -44,12 +52,17 @@
     Create a temporary file and remove it at program exit.
     Returns (fd, filename)
     '''
+    _mkdir(directory)
     fd, fname = mkstemp(dir=directory, prefix=prefix)
     add(fname)
     return fd, fname
 
 
 def create_dir(directory=utils.get_tempdir(), prefix='crmsh_'):
+    '''
+    Create a temporary directory and remove it at program exit.
+    '''
+    _mkdir(directory)
     ret = mkdtemp(dir=directory, prefix=prefix)
     if len(_FILES) + len(_DIRS) == 0:
         atexit.register(_exit_handler)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/xmlutil.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/xmlutil.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/crmsh/xmlutil.py     2016-05-23 
10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/crmsh/xmlutil.py     2016-06-01 
10:22:40.000000000 +0200
@@ -13,7 +13,7 @@
 from . import options
 from . import schema
 from . import constants
-from .msg import common_err, common_error, common_debug, cib_parse_err, err_buf
+from .msg import common_err, common_error, common_warn, common_debug, 
cib_parse_err, err_buf
 from . import userdir
 from . import utils
 from .utils import add_sudo, str2file, str2tmp, get_boolean
@@ -135,8 +135,8 @@
     for nvpair in node.iterchildren("nvpair"):
         n = nvpair.get("name")
         if n and n not in attr_list:
-            common_err("%s: attribute %s does not exist" % (ident, n))
-            rc |= utils.get_check_rc()
+            common_warn("%s: unknown attribute '%s'" % (ident, n))
+            rc |= 1
     return rc
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-2.2.0+git.1463777827.9b402a8/scripts/init/basic.cib.template 
new/crmsh-2.2.0+git.1464769043.9e4df55/scripts/init/basic.cib.template
--- old/crmsh-2.2.0+git.1463777827.9b402a8/scripts/init/basic.cib.template      
2016-05-23 10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/scripts/init/basic.cib.template      
2016-06-01 10:22:40.000000000 +0200
@@ -1,13 +1,12 @@
 # Note: STONITH must be enabled for proper functionality!
-property $id="cib-bootstrap-options" \
-    stonith-enabled="false" \
-    no-quorum-policy="%(no_quorum_policy)s" \
-    placement-strategy="balanced"
+property cib-bootstrap-options: \
+    stonith-enabled=false \
+    placement-strategy=balanced
 
-op_defaults $id="op-options" \
-    timeout="600" \
-    record-pending="true"
+op_defaults op-options: \
+    timeout=600 \
+    record-pending=true
 
-rsc_defaults $id="rsc-options" \
-    resource-stickiness="1" \
-    migration-threshold="3"
+rsc_defaults rsc-options: \
+    resource-stickiness=1 \
+    migration-threshold=3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-2.2.0+git.1463777827.9b402a8/scripts/init/configure.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/scripts/init/configure.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/scripts/init/configure.py    
2016-05-23 10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/scripts/init/configure.py    
2016-06-01 10:22:40.000000000 +0200
@@ -91,16 +91,14 @@
     }
 """ % (node, i + 1)
 
-    quorum_txt = ""
-    if len(nodelist) == 1:
-        quorum_txt = ''
-    if len(nodelist) == 2:
-        quorum_txt = """    two_node: 1
-"""
-    else:
-        quorum_txt = """    provider: corosync_votequorum
+    twonode = 1 if len(nodelist) == 2 else 0
+    expected_votes = len(nodelist)
+
+    quorum_txt = """
+    provider: corosync_votequorum
+    two_node: %s
     expected_votes: %s
-""" % ((len(nodelist) / 2) + 1)
+    """ % (twonode, expected_votes)
 
     try:
         crm_script.save_template('./corosync.conf.template',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-2.2.0+git.1463777827.9b402a8/scripts/init/init.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/scripts/init/init.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/scripts/init/init.py 2016-05-23 
10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/scripts/init/init.py 2016-06-01 
10:22:40.000000000 +0200
@@ -17,13 +17,8 @@
 
 try:
     nodelist = crm_script.param('nodes')
-    if len(nodelist) < 3:
-        policy = 'ignore'
-    else:
-        policy = 'stop'
     crm_script.save_template('./basic.cib.template',
-                             './basic.cib',
-                             no_quorum_policy=policy)
+                             './basic.cib')
 except IOError, e:
     crm_script.exit_fail("IO error: %s" % (str(e)))
 except ValueError, e:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-2.2.0+git.1463777827.9b402a8/test/unittests/test_cliformat.py 
new/crmsh-2.2.0+git.1464769043.9e4df55/test/unittests/test_cliformat.py
--- old/crmsh-2.2.0+git.1463777827.9b402a8/test/unittests/test_cliformat.py     
2016-05-23 10:25:56.000000000 +0200
+++ new/crmsh-2.2.0+git.1464769043.9e4df55/test/unittests/test_cliformat.py     
2016-06-01 10:22:40.000000000 +0200
@@ -259,6 +259,11 @@
 
 
 @with_setup(setup_func, teardown_func)
+def test_locrule():
+    roundtrip('location loc-testfs-with-eth1 testfs rule ethmonitor-eth1 eq 1')
+
+
+@with_setup(setup_func, teardown_func)
 def test_is_value_sane():
     roundtrip('''primitive p1 dummy params state="bo'o"''')
 


Reply via email to