Hello community,

here is the log from the commit of package crmsh for openSUSE:Factory checked 
in at 2018-01-13 21:49:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/crmsh (Old)
 and      /work/SRC/openSUSE:Factory/.crmsh.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "crmsh"

Sat Jan 13 21:49:03 2018 rev:137 rq:563866 version:4.0.0+git.1515767348.9561209c

Changes:
--------
--- /work/SRC/openSUSE:Factory/crmsh/crmsh.changes      2018-01-10 
23:36:06.349383198 +0100
+++ /work/SRC/openSUSE:Factory/.crmsh.new/crmsh.changes 2018-01-13 
21:49:07.645934986 +0100
@@ -1,0 +2,13 @@
+Fri Jan 12 14:30:15 UTC 2018 - kgronl...@suse.com
+
+- Update to version 4.0.0+git.1515767348.9561209c:
+  * medium: ui_cluster: Stop corosync when stopping pacemaker (bsc#1066156)
+  * medium: bootstrap: Don't try to remove full nodes from remote nodes
+  * medium: clvm-vg: update to use LVM-activate RA (bsc#1074835)
+  * medium: clvm: update to use lvmlockd instead of clvmd (bsc#1074835)
+  * low: ui_node: normal is deprecated in favor of member (fate#324508)
+  * low: ui_configure: no complete for rename new_id
+  * low: bootstrap: Don't ssh to localhost in remove
+  * low: ui_configure: improve do_group completer
+
+-------------------------------------------------------------------

Old:
----
  crmsh-4.0.0+git.1515511613.5ee0eb23.tar.bz2

New:
----
  crmsh-4.0.0+git.1515767348.9561209c.tar.bz2

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

Other differences:
------------------
++++++ crmsh.spec ++++++
--- /var/tmp/diff_new_pack.he92MD/_old  2018-01-13 21:49:08.333902910 +0100
+++ /var/tmp/diff_new_pack.he92MD/_new  2018-01-13 21:49:08.337902724 +0100
@@ -36,7 +36,7 @@
 Summary:        High Availability cluster command-line interface
 License:        GPL-2.0+
 Group:          %{pkg_group}
-Version:        4.0.0+git.1515511613.5ee0eb23
+Version:        4.0.0+git.1515767348.9561209c
 Release:        0
 Url:            http://crmsh.github.io
 Source0:        %{name}-%{version}.tar.bz2

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.he92MD/_old  2018-01-13 21:49:08.389900299 +0100
+++ /var/tmp/diff_new_pack.he92MD/_new  2018-01-13 21:49:08.389900299 +0100
@@ -1,4 +1,4 @@
 <servicedata>
 <service name="tar_scm">
             <param name="url">git://github.com/ClusterLabs/crmsh.git</param>
-          <param 
name="changesrevision">5ee0eb231d19e543bcba9a5dd9f43327096ff1b3</param></service></servicedata>
\ No newline at end of file
+          <param 
name="changesrevision">9561209c80e799683eda21e4fc93c9740db8e42e</param></service></servicedata>
\ No newline at end of file

++++++ crmsh-4.0.0+git.1515511613.5ee0eb23.tar.bz2 -> 
crmsh-4.0.0+git.1515767348.9561209c.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/bootstrap.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/bootstrap.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/bootstrap.py  2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/bootstrap.py  2018-01-12 
15:29:08.000000000 +0100
@@ -1804,6 +1804,13 @@
     """
     _context.connect_name = seed_host
     _context.host_status = 0
+
+    # if node is localhost, assume connected and hostname = cluster name
+    if seed_host == utils.this_node():
+        _context.cluster_node = seed_host
+        _context.host_status = 1
+        return
+
     _rc, outp, _errp = utils.get_stdout_stderr("ssh root@{} 
\"hostname\"".format(seed_host))
     if outp:
         _context.connect_name = seed_host
@@ -2095,7 +2102,7 @@
             error("Removing self requires --force")
         # get list of cluster nodes
         me = utils.this_node()
-        nodes = xmlutil.listnodes()
+        nodes = xmlutil.listnodes(include_remote_nodes=False)
         othernode = next((x for x in nodes if x != me), None)
         if othernode is not None:
             # remove from other node
@@ -2106,7 +2113,7 @@
         else:
             # stop cluster
             if not stop_service("corosync"):
-                error("Stopping corosync on failed")
+                error("Stopping corosync failed")
 
             # remove all trace of cluster from this node
             # delete configuration files from the node to be removed
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/cibconfig.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/cibconfig.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/cibconfig.py  2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/cibconfig.py  2018-01-12 
15:29:08.000000000 +0100
@@ -2187,13 +2187,6 @@
     t = cib_factory.get_op_default("timeout")
     if t is not None:
         return t
-    t = cib_factory.get_property("default-action-timeout")
-    if t is not None:
-        return t
-    try:
-        return get_pe_meta().param_default("default-action-timeout")
-    except:
-        return 0
 
 
 # xml -> cli translations (and classes)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/ui_cluster.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/ui_cluster.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/ui_cluster.py 2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/ui_cluster.py 2018-01-12 
15:29:08.000000000 +0100
@@ -78,10 +78,11 @@
         '''
         Starts the cluster services on this node
         '''
-        rc, out, err = utils.get_stdout_stderr('service pacemaker start')
-        if rc != 0:
-            context.fatal_error("Failed to start pacemaker service: %s" % 
(err))
-        err_buf.info("Cluster services started")
+        try:
+            utils.start_service("pacemaker")
+            err_buf.info("Cluster services started")
+        except IOError as err:
+            context.fatal_error(str(err))
 
         # TODO: optionally start services on all nodes or specific node
 
@@ -90,10 +91,11 @@
         '''
         Stops the cluster services on this node
         '''
-        rc, out, err = utils.get_stdout_stderr('service pacemaker stop')
-        if rc != 0:
-            context.fatal_error("Failed to stop pacemaker service: %s" % (err))
-        err_buf.info("Cluster services stopped")
+        try:
+            utils.stop_service("corosync")
+            err_buf.info("Cluster services stopped")
+        except IOError as err:
+            context.fatal_error(str(err))
 
         # TODO: optionally stop services on all nodes or specific node
 
@@ -102,13 +104,11 @@
         '''
         Enable the cluster services on this node
         '''
-        if utils.is_program('systemctl'):
-            rc, out, err = utils.get_stdout_stderr('systemctl enable 
pacemaker')
-            if rc != 0:
-                context.fatal_error("Failed to enable pacemaker service: %s" % 
(err))
+        try:
+            utils.enable_service("pacemaker")
             err_buf.info("Cluster services enabled")
-        else:
-            pass # TODO: for the os using chkconfig
+        except IOError as err:
+            context.fatal_error(str(err))
 
         # TODO: optionally enable services on all nodes or specific node
 
@@ -117,13 +117,11 @@
         '''
         Disable the cluster services on this node
         '''
-        if utils.is_program('systemctl'):
-            rc, out, err = utils.get_stdout_stderr('systemctl disable 
pacemaker')
-            if rc != 0:
-                context.fatal_error("Failed to disable pacemaker service: %s" 
% (err))
+        try:
+            utils.disable_service("pacemaker")
             err_buf.info("Cluster services disabled")
-        else:
-            pass # TODO: for the os using chkconfig
+        except IOError as err:
+            context.fatal_error(str(err))
 
         # TODO: optionally disable services on all nodes or specific node
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/ui_configure.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/ui_configure.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/ui_configure.py       
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/ui_configure.py       
2018-01-12 15:29:08.000000000 +0100
@@ -58,6 +58,27 @@
 _container_type = compl.choice(constants.container_type)
 
 
+def _group_completer(args):
+    '''
+    completer for group resource
+    '''
+    completing = args[-1]
+    id_list = cib_factory.f_prim_free_id_list()
+    if completing in id_list:
+        return [completing]
+    # complete resources id first
+    if len(args) == 3:
+        return [s for s in id_list if s not in args]
+    # complete meta or params attributes
+    key_words = ["meta", "params"]
+    keyw = last_keyword(args, key_words)
+    if keyw in key_words:
+        return _advanced_completer(args)
+
+    # otherwise, complete resources ids and some key words
+    return [s for s in id_list if s not in args] + _advanced_completer(args)
+
+
 def _advanced_completer(args):
     '''
     meta completers for group/ms/clone resource type 
@@ -774,7 +795,7 @@
         return cib_factory.default_timeouts(*args)
 
     @command.skill_level('administrator')
-    @command.completers(_id_list, _id_list)
+    @command.completers(_id_list)
     def do_rename(self, context, old_id, new_id):
         "usage: rename <old_id> <new_id>"
         return cib_factory.rename(old_id, new_id)
@@ -913,7 +934,7 @@
         return self.__conf_object(context.get_command_name(), *args)
 
     @command.skill_level('administrator')
-    @command.completers_repeating(compl.attr_id, _f_prim_free_id_list, 
_advanced_completer)
+    @command.completers_repeating(compl.attr_id, _group_completer)
     def do_group(self, context, *args):
         """usage: group <name> <rsc> [<rsc>...]
         [params <param>=<value> [<param>=<value>...]]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/ui_node.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/ui_node.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/ui_node.py    2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/ui_node.py    2018-01-12 
15:29:08.000000000 +0100
@@ -75,7 +75,7 @@
     """
     s_offline = offline and "(offline)" or ""
     if not node_type:
-        node_type = "normal"
+        node_type = "member"
     if uname == ident:
         print(term.render("%s: %s%s" % (uname, node_type, s_offline)))
     else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/utils.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/utils.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/utils.py      2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/utils.py      2018-01-12 
15:29:08.000000000 +0100
@@ -1720,6 +1720,45 @@
     return None
 
 
+def start_service(service, enable=False, start=True):
+    """
+    Start (and optionally enable) systemd service
+    TODO: support other init systems
+    """
+    if enable:
+        _rc, _out, _err = get_stdout_stderr("systemctl -q enable 
{}".format(service))
+    if start:
+        rc, _out, _err = get_stdout_stderr("systemctl -q is-active 
{}".format(service))
+        if rc != 0:
+            rc, _out, err = get_stdout_stderr("systemctl -q start 
{}".format(service))
+            if rc != 0:
+                raise IOError("systemd failed to start {}: {}".format(service, 
err))
+
+
+def stop_service(service, disable=False, stop=True):
+    """
+    Stop (and optionally disable) systemd service
+    TODO: support other init systems
+    """
+    rc, err = 0, ""
+    if stop:
+        rc, _out, err = get_stdout_stderr("systemctl -q stop 
{}".format(service))
+    if disable:
+        _rc, _out, _err = get_stdout_stderr("systemctl -q disable 
{}".format(service))
+    if rc != 0:
+        raise IOError("systemd failed to stop {}: {}".format(service, err))
+
+
+def enable_service(service, start=False):
+    "Enable (and optionally start) system service"
+    start_service(service, enable=True, start=start)
+
+
+def disable_service(service, stop=False):
+    "Enable (and optionally stop) system service"
+    stop_service(service, disable=True, stop=stop)
+
+
 def running_on(resource):
     "returns list of node names where the given resource is running"
     rsc_locate = "crm_resource --resource '%s' --locate"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/xmlutil.py 
new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/xmlutil.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/crmsh/xmlutil.py    2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/crmsh/xmlutil.py    2018-01-12 
15:29:08.000000000 +0100
@@ -334,12 +334,15 @@
     return ''.join((s1, s2, ra_type))
 
 
-def listnodes():
+def listnodes(include_remote_nodes=True):
     cib = cibdump2elem()
     if cib is None:
         return []
     local_nodes = cib.xpath('/cib/configuration/nodes/node/@uname')
-    remote_nodes = 
cib.xpath('/cib/status/node_state[@remote_node="true"]/@uname')
+    if include_remote_nodes:
+        remote_nodes = 
cib.xpath('/cib/status/node_state[@remote_node="true"]/@uname')
+    else:
+        remote_nodes = []
     return list(set([n for n in local_nodes + remote_nodes if n]))
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/crmsh-4.0.0+git.1515511613.5ee0eb23/data-manifest 
new/crmsh-4.0.0+git.1515767348.9561209c/data-manifest
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/data-manifest       2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/data-manifest       2018-01-12 
15:29:08.000000000 +0100
@@ -164,6 +164,7 @@
 test/unittests/test_scripts.py
 test/unittests/test_time.py
 test/unittests/test_utils.py
+test/update-expected-output.sh
 utils/crm_clean.py
 utils/crm_init.py
 utils/crm_pkg.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/scripts/clvm/main.yml 
new/crmsh-4.0.0+git.1515767348.9561209c/scripts/clvm/main.yml
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/scripts/clvm/main.yml       
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/scripts/clvm/main.yml       
2018-01-12 15:29:08.000000000 +0100
@@ -3,37 +3,37 @@
 # License: GNU General Public License (GPL)
 version: 2.2
 category: File System
-shortdesc: Cluster-aware LVM
+shortdesc: Cluster-aware LVM (lvmlockd)
 longdesc: |
-  Configure a cloned instance of cLVM.
+  Configure a cloned lvmlockd resource.
 
-  NB: Only one clvm cluster resource is necessary, regardless
-  of how many clustered volume groups are managed as resources.
-  To create volume groups after configuring cLVM, the wizard
-  for cLVM volume groups can be used.
+  NB: Only one lvmlockd resource is necessary, regardless
+  of how many volume groups are managed as resources. To
+  monitor volume groups after configuring lvmlockd, the wizard
+  for activating volume groups can be used. Refer to manpage
+  of lvmlockd for more information.
 
 parameters:
   - name: install
     type: boolean
-    shortdesc: Install packages for cLVM
+    shortdesc: Install packages for lvmlockd
     value: false
 
 actions:
   - install:
-      - lvm2-clvm
-    shortdesc: Install the clvm package
+      - lvm2-lockd
+    shortdesc: Install the lvm2-lockd package
     when: install
   - cib: |
       primitive dlm ocf:pacemaker:controld
         op start timeout=90s
         op stop timeout=100s
 
-      primitive clvm ocf:lvm2:clvmd
-        params daemon_timeout=30
+      primitive lvmlockd ocf:heartbeat:lvmlockd
         op start timeout=90s
         op stop timeout=100s
 
-      group g-clvm dlm clvm
+      group g-clvm dlm lvmlockd
 
       clone c-clvm g-clvm
         meta interleave=true ordered=true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/scripts/clvm-vg/main.yml 
new/crmsh-4.0.0+git.1515767348.9561209c/scripts/clvm-vg/main.yml
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/scripts/clvm-vg/main.yml    
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/scripts/clvm-vg/main.yml    
2018-01-12 15:29:08.000000000 +0100
@@ -3,13 +3,29 @@
 # License: GNU General Public License (GPL)
 version: 2.2
 category: File System
-shortdesc: Cluster-aware LVM (Volume Group)
+shortdesc: Cluster-aware LVM (auto activation)
 longdesc: |
-  Configures an cLVM volume group instance. Once created,
-  this resource is added to the cLVM group resource.
-
-  The cLVM group resource is assumed to be named g-clvm. This
-  is the name of the resource created by the clvm wizard.
+  Configures a resource to manage the activation of a volume
+  group. Before adding this resource, you need to proceed as below
+  to create new VG and LVs. Refer to manpage lvmlockd(8) for more
+  detailed steps.
+
+  - create VG on shared devices:
+    vgcreate --shared <vgname> <devices>
+
+  - create an LV:
+    lvcreate -an -L <size> -n <lvname> <vgname>
+
+  For LVs in shared VG, there are two activation modes: "exclusive"
+  and "shared". With the "exclusive" mode, a LV activated on one
+  host cannot be activated on another, which is the default option.
+  With the "shared" mode, a LV can be activated concurrently on
+  multiple hosts, and cluster filesystem like OCFS2 can use it.
+
+  If the resource is created with activation_mode="shared", it will
+  be added to the cLVM group resource. The cLVM group resource is
+  assumed to be named g-clvm. This is the name of the resource created
+  by the clvm wizard.
 
 parameters:
   - name: id
@@ -20,13 +36,24 @@
     type: resource
     value: vg1
 
-  - name: volgrpname
+  - name: vgname
     shortdesc: Volume Group Name
     longdesc: LVM volume group name.
     required: true
     type: string
     value: vg1
 
+  - name: activation_mode
+    shortdesc: LVM activation mode
+    longdesc: |
+      How a VG/LV is activated in cluster, either "exclusive" (default) or 
"shared".
+      It depends on the filesystem you need to create on the LV to choose the
+      activation mode. For local filesystem like ext4, you need "exclusive" 
activation.
+      For cluster filesystem like OCFS2, you need "shared" activation.
+    required: false
+    type: string
+    value: exclusive
+
   - name: clvm-group
     shortdesc: cLVM Resource Group ID
     longdesc: ID of the cLVM resource group.
@@ -36,11 +63,12 @@
 
 actions:
   - cib: |
-      primitive {{id}} ocf:heartbeat:LVM
-        params volgrpname="{{volgrpname}}"
+      primitive {{id}} ocf:heartbeat:LVM-activate
+        params vgname="{{vgname}}" vg_access_mode="lvmlockd" 
activation_mode="{{activation_mode}}"
         op start timeout=60s
         op stop timeout=60s
-        op monitor interval=30s timeout=60s
+        op monitor interval=30s timeout=90s
 
   - crm: configure modgroup {{clvm-group}} add {{id}}
     shortdesc: Add volume group to the cLVM group resource
+    when: activation_mode == "shared"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/bugs-test.txt 
new/crmsh-4.0.0+git.1515767348.9561209c/test/bugs-test.txt
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/bugs-test.txt  2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/bugs-test.txt  2018-01-12 
15:29:08.000000000 +0100
@@ -1,6 +1,6 @@
 node node1
 primitive st stonith:null params hostlist=node1
-property default-action-timeout=60s
+op_defaults timeout=60s
 group g1 gr1 gr2
 group g2 gr3
 group g3 gr4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/crm-interface 
new/crmsh-4.0.0+git.1515767348.9561209c/test/crm-interface
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/crm-interface  2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/crm-interface  2018-01-12 
15:29:08.000000000 +0100
@@ -33,7 +33,7 @@
 primitive st stonith:null params hostlist=node1
 clone c1 p1
 ms m1 p2
-property default-action-timeout=60s
+op_defaults timeout=60s
 commit
 end
 EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/acl 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/acl
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/acl  2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/acl  2018-01-12 
15:29:08.000000000 +0100
@@ -3,8 +3,8 @@
 property enable-acl=true
 primitive st stonith:ssh \
        params hostlist='node1' \
-       meta target-role="Started" \
-       op start requires=nothing timeout=60s \
+       meta target-role="Started" requires=nothing \
+       op start timeout=60s \
        op monitor interval=60m timeout=60s
 primitive d0 ocf:pacemaker:Dummy
 primitive d1 ocf:pacemaker:Dummy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/acl.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/acl.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/acl.exp      
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/acl.exp      
2018-01-12 15:29:08.000000000 +0100
@@ -5,7 +5,7 @@
 .INP: erase nodes
 .INP: node node1
 .INP: property enable-acl=true
-.INP: primitive st stonith:ssh         params hostlist='node1'         meta 
target-role="Started"      op start requires=nothing timeout=60s   op monitor 
interval=60m timeout=60s
+.INP: primitive st stonith:ssh         params hostlist='node1'         meta 
target-role="Started" requires=nothing     op start timeout=60s    op monitor 
interval=60m timeout=60s
 .INP: primitive d0 ocf:pacemaker:Dummy
 .INP: primitive d1 ocf:pacemaker:Dummy
 .INP: role basic-read        read status        read type:node attribute:uname 
       read type:node attribute:type        read property
@@ -31,8 +31,8 @@
 primitive d1 ocf:pacemaker:Dummy
 primitive st stonith:ssh \
        params hostlist=node1 \
-       meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       meta target-role=Started requires=nothing \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 property cib-bootstrap-options: \
        enable-acl=true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bugs 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bugs
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bugs 2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bugs 2018-01-12 
15:29:08.000000000 +0100
@@ -6,8 +6,7 @@
 erase
 primitive st stonith:null \
        params hostlist='node1' \
-       meta description="some description here" \
-       op start requires=nothing \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 primitive p4 Dummy
 primitive p3 Dummy
@@ -45,8 +44,7 @@
 erase
 primitive st stonith:null \
        params hostlist='node1' \
-       meta description="some description here" \
-       op start requires=nothing \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 property SAPHanaSR: \
     hana_ha1_site_lss_WDF1=4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bugs.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bugs.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bugs.exp     
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bugs.exp     
2018-01-12 15:29:08.000000000 +0100
@@ -4,7 +4,7 @@
 .INP: up
 .INP: configure
 .INP: erase
-.INP: primitive st stonith:null        params hostlist='node1'         meta 
description="some description here"        op start requires=nothing       op 
monitor interval=60m
+.INP: primitive st stonith:null        params hostlist='node1'         meta 
description="some description here" requires=nothing       op monitor 
interval=60m
 .INP: primitive p4 Dummy
 .INP: primitive p3 Dummy
 .INP: primitive p2 Dummy
@@ -25,8 +25,7 @@
 node node1
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 primitive p4 Dummy
 primitive p3 Dummy
@@ -40,15 +39,13 @@
 .EXT crm_resource --show-metadata stonith:null
 .EXT stonithd metadata
 .EXT crm_resource --show-metadata ocf:heartbeat:Dummy
-.EXT pengine metadata
 .INP: _test
 .INP: verify
 .INP: show
 node node1
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 primitive p4 Dummy
 primitive p3 Dummy
@@ -85,15 +82,12 @@
 colocation c2 inf: ( p1 p2 ) p3 p4
 location loc1 g1 \
        rule 200: #uname eq node1
-property cib-bootstrap-options: \
-       default-action-timeout=60s
+op_defaults op-options: \
+       timeout=60s
 .INP: commit
 .EXT crm_resource --show-metadata stonith:null
 .EXT stonithd metadata
 .EXT crm_resource --show-metadata ocf:heartbeat:Dummy
-.EXT crmd metadata
-.EXT pengine metadata
-.EXT cib metadata
 .INP: _test
 .INP: verify
 .TRY Unknown properties
@@ -102,21 +96,19 @@
 INFO: 2: constraint colocation:c2 updated
 INFO: 2: constraint colocation:c2 updated
 INFO: 2: modified location:loc1 from g1 to gr2
-.INP: primitive st stonith:null        params hostlist='node1'         meta 
description="some description here"        op start requires=nothing       op 
monitor interval=60m
+.INP: primitive st stonith:null        params hostlist='node1'         meta 
description="some description here" requires=nothing       op monitor 
interval=60m
 .INP: property SAPHanaSR:     hana_ha1_site_lss_WDF1=4
 .INP: show
 node node1
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 property SAPHanaSR: \
        hana_ha1_site_lss_WDF1=4
 .INP: commit
 .EXT crm_resource --show-metadata stonith:null
 .EXT stonithd metadata
-.EXT pengine metadata
 .INP: _test
 .INP: verify
 .INP: property SAPHanaSR_2:     hana_ha1_site_iss_WDF1=cde     
hana_ha1_site_bss_WDF1=abc
@@ -124,8 +116,7 @@
 node node1
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 property SAPHanaSR: \
        hana_ha1_site_lss_WDF1=4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bundle 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bundle
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bundle       
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bundle       
2018-01-12 15:29:08.000000000 +0100
@@ -6,8 +6,8 @@
 node node2 utilization cpu=4
 primitive st stonith:ssh \
        params hostlist='node1 node2' \
-       meta target-role="Started" \
-       op start requires=nothing timeout=60s \
+       meta target-role="Started" requires=nothing \
+       op start timeout=60s \
        op monitor interval=60m timeout=60s
 primitive st2 stonith:ssh \
        params hostlist='node1 node2'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bundle.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bundle.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/bundle.exp   
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/bundle.exp   
2018-01-12 15:29:08.000000000 +0100
@@ -7,7 +7,7 @@
 .INP: delete node1
 .INP: node node1       attributes mem=16G
 .INP: node node2 utilization cpu=4
-.INP: primitive st stonith:ssh         params hostlist='node1 node2'   meta 
target-role="Started"      op start requires=nothing timeout=60s   op monitor 
interval=60m timeout=60s
+.INP: primitive st stonith:ssh         params hostlist='node1 node2'   meta 
target-role="Started" requires=nothing     op start timeout=60s    op monitor 
interval=60m timeout=60s
 .INP: primitive st2 stonith:ssh        params hostlist='node1 node2'
 .INP: bundle id=bundle-test1 docker image=test network 
ip-range-start=10.10.10.123 port-mapping id=port1 port=80 storage 
storage-mapping id=storage1 target-dir=test source-dir=test meta 
target-role=Stopped
 .INP: primitive id=dummy ocf:heartbeat:Dummy op monitor interval=10 meta 
target-role=Stopped
@@ -32,8 +32,8 @@
        meta target-role=Stopped
 primitive st stonith:ssh \
        params hostlist="node1 node2" \
-       meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       meta target-role=Started requires=nothing \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 primitive st2 stonith:ssh \
        params hostlist="node1 node2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/commit 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/commit
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/commit       
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/commit       
2018-01-12 15:29:08.000000000 +0100
@@ -1,9 +1,8 @@
 show Commits of all kinds
-property default-action-timeout=2m
+op_defaults timeout=2m
 primitive st stonith:null \
        params hostlist='node1' \
-       meta yoyo-meta="yoyo 2" \
-       op start requires=nothing \
+       meta yoyo-meta="yoyo 2" requires=nothing \
        op monitor interval=60m
 commit
 node node1 \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/commit.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/commit.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/commit.exp   
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/commit.exp   
2018-01-12 15:29:08.000000000 +0100
@@ -3,14 +3,11 @@
 .INP: _regtest on
 .INP: erase
 .INP: erase nodes
-.INP: property default-action-timeout=2m
-.INP: primitive st stonith:null        params hostlist='node1'         meta 
yoyo-meta="yoyo 2"         op start requires=nothing       op monitor 
interval=60m
+.INP: op_defaults timeout=2m
+.INP: primitive st stonith:null        params hostlist='node1'         meta 
yoyo-meta="yoyo 2" requires=nothing        op monitor interval=60m
 .INP: commit
 .EXT crm_resource --show-metadata stonith:null
 .EXT stonithd metadata
-.EXT crmd metadata
-.EXT pengine metadata
-.EXT cib metadata
 WARNING: 7: st: unknown attribute 'yoyo-meta'
 .INP: node node1       attributes mem=16G
 .INP: primitive p1 ocf:heartbeat:Dummy         op monitor interval=60m         
op monitor interval=120m OCF_CHECK_LEVEL=10
@@ -63,16 +60,15 @@
 primitive p3 Dummy
 primitive st stonith:null \
        params hostlist=node1 \
-       meta yoyo-meta="yoyo 2" \
-       op start requires=nothing interval=0 \
+       meta yoyo-meta="yoyo 2" requires=nothing \
        op monitor interval=60m
 group g1 d1 p2
 group g2 d3
 colocation cl1 inf: g1 p3
 location l1 p3 100: node1
 order o1 inf: p3 g1
-property cib-bootstrap-options: \
-       default-action-timeout=2m
+op_defaults op-options: \
+       timeout=2m
 .INP: commit
 INFO: 37: apparently there is nothing to commit
 INFO: 37: try changing something first
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic    
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic    
2018-01-12 15:29:08.000000000 +0100
@@ -7,7 +7,7 @@
 primitive st stonith:ssh \
        params hostlist='node1 node2' \
        meta target-role="Started" \
-       op start requires=nothing timeout=60s \
+       op start timeout=60s \
        op monitor interval=60m timeout=60s
 primitive st2 stonith:ssh \
        params hostlist='node1 node2'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic-xml 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic-xml
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic-xml        
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic-xml        
2018-01-12 15:29:08.000000000 +0100
@@ -6,8 +6,8 @@
 node node2 utilization cpu=4
 primitive st stonith:ssh \
        params hostlist='node1 node2' \
-       meta target-role=Started \
-       op start requires=nothing timeout=60s \
+       meta target-role=Started requires=nothing \
+       op start timeout=60s \
        op monitor interval=60m timeout=60s
 primitive st2 stonith:ssh \
        params hostlist='node1 node2'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic-xml.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic-xml.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic-xml.exp    
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic-xml.exp    
2018-01-12 15:29:08.000000000 +0100
@@ -68,11 +68,12 @@
         <instance_attributes id="st-instance_attributes">
           <nvpair name="hostlist" value="node1 node2" 
id="st-instance_attributes-hostlist"/>
         </instance_attributes>
-        <meta_attributes id="st-meta_attributes">
+          <meta_attributes id="st-meta_attributes">
+          <nvpair name="requires" value="nothing" 
id="st-meta_attributes-requires"/>
           <nvpair name="target-role" value="Started" 
id="st-meta_attributes-target-role"/>
         </meta_attributes>
         <operations>
-          <op name="start" requires="nothing" timeout="60s" interval="0" 
id="st-start-0"/>
+          <op name="start" timeout="60s" interval="0" id="st-start-0"/>
           <op name="monitor" interval="60m" timeout="60s" id="st-monitor-60m"/>
         </operations>
       </primitive>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/confbasic.exp        
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/confbasic.exp        
2018-01-12 15:29:08.000000000 +0100
@@ -7,7 +7,7 @@
 .INP: delete node1
 .INP: node node1       attributes mem=16G
 .INP: node node2 utilization cpu=4
-.INP: primitive st stonith:ssh         params hostlist='node1 node2'   meta 
target-role="Started"      op start requires=nothing timeout=60s   op monitor 
interval=60m timeout=60s
+.INP: primitive st stonith:ssh         params hostlist='node1 node2'   meta 
target-role="Started"      op start timeout=60s    op monitor interval=60m 
timeout=60s
 .INP: primitive st2 stonith:ssh        params hostlist='node1 node2'
 .INP: primitive d1 ocf:pacemaker:Dummy         operations $id=d1-ops   op 
monitor interval=60m         op monitor interval=120m OCF_CHECK_LEVEL=10
 .INP: monitor d1 60s:30s
@@ -93,7 +93,7 @@
 primitive st stonith:ssh \
        params hostlist="node1 node2" \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 primitive st2 stonith:ssh \
        params hostlist="node1 node2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/delete 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/delete
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/delete       
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/delete       
2018-01-12 15:29:08.000000000 +0100
@@ -8,7 +8,7 @@
 primitive st stonith:ssh \
        params hostlist='node1' \
        meta target-role="Started" \
-       op start requires=nothing timeout=60s \
+       op start timeout=60s \
        op monitor interval=60m timeout=60s
 primitive d1 ocf:pacemaker:Dummy
 primitive d2 ocf:pacemaker:Dummy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/delete.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/delete.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/delete.exp   
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/delete.exp   
2018-01-12 15:29:08.000000000 +0100
@@ -5,7 +5,7 @@
 .INP: erase nodes
 .INP: node node1
 .INP: # create one stonith so that verify does not complain
-.INP: primitive st stonith:ssh         params hostlist='node1'         meta 
target-role="Started"      op start requires=nothing timeout=60s   op monitor 
interval=60m timeout=60s
+.INP: primitive st stonith:ssh         params hostlist='node1'         meta 
target-role="Started"      op start timeout=60s    op monitor interval=60m 
timeout=60s
 .INP: primitive d1 ocf:pacemaker:Dummy
 .INP: primitive d2 ocf:pacemaker:Dummy
 .INP: location d1-pref d1 100: node1
@@ -16,7 +16,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 location d1-pref d1 100: node1
 .INP: _test
@@ -29,7 +29,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 location d1-pref p1 100: node1
 .INP: # delete primitive
@@ -41,7 +41,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 location d1-pref p1 100: node1
 .INP: # delete primitive with constraint
@@ -53,7 +53,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 .INP: primitive d1 ocf:pacemaker:Dummy
 .INP: location d1-pref d1 100: node1
@@ -70,7 +70,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 group g1 d1
 location d1-pref g1 100: node1
@@ -83,14 +83,13 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 location d1-pref d1 100: node1
 .INP: verify
 .EXT crm_resource --show-metadata stonith:ssh
 .EXT stonithd metadata
 .EXT crm_resource --show-metadata ocf:pacemaker:Dummy
-.EXT pengine metadata
 .INP: # delete a group which is in a clone
 .INP: primitive d2 ocf:pacemaker:Dummy
 .INP: group g1 d2 d1
@@ -107,7 +106,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 location d1-pref d2 100: node1
 .INP: _test
@@ -127,7 +126,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 location d1-pref d2 100: node1
 .INP: _test
@@ -145,7 +144,7 @@
 primitive st stonith:ssh \
        params hostlist=node1 \
        meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 .INP: _test
 .INP: # verify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/edit 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/edit
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/edit 2018-01-09 
16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/edit 2018-01-12 
15:29:08.000000000 +0100
@@ -1,11 +1,10 @@
 show Configuration editing
-property default-action-timeout=2m
+op_defaults timeout=2m
 node node1 \
        attributes mem=16G
 primitive st stonith:null \
        params hostlist='node1' \
-       meta description="some description here" \
-       op start requires=nothing \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 primitive p1 ocf:heartbeat:Dummy \
        op monitor interval=60m \
@@ -50,8 +49,8 @@
 modgroup g1 add nosuch
 filter "sed 's/^/# this is a comment\\n/'" loc-d1
 rsc_defaults $id="rsc_options" failure-timeout=10m
-filter "sed 's/2m/60s/'" cib-bootstrap-options
-show rsc_options
+filter "sed 's/2m/60s/'" op-options
+show op-options
 property stonith-enabled=true
 show cib-bootstrap-options
 filter 'sed "s/stonith-enabled=true//"'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/edit.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/edit.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/edit.exp     
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/edit.exp     
2018-01-12 15:29:08.000000000 +0100
@@ -3,9 +3,9 @@
 .INP: _regtest on
 .INP: erase
 .INP: erase nodes
-.INP: property default-action-timeout=2m
+.INP: op_defaults timeout=2m
 .INP: node node1       attributes mem=16G
-.INP: primitive st stonith:null        params hostlist='node1'         meta 
description="some description here"        op start requires=nothing       op 
monitor interval=60m
+.INP: primitive st stonith:null        params hostlist='node1'         meta 
description="some description here" requires=nothing       op monitor 
interval=60m
 .INP: primitive p1 ocf:heartbeat:Dummy         op monitor interval=60m         
op monitor interval=120m OCF_CHECK_LEVEL=10
 .INP: filter "sed '$aprimitive p2 ocf:heartbeat:Dummy'"
 .INP: filter "sed '$agroup g1 p1 p2'"
@@ -19,12 +19,11 @@
 primitive p2 Dummy
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 group g1 p1 p2
-property cib-bootstrap-options: \
-       default-action-timeout=2m
+op_defaults op-options: \
+       timeout=2m
 .INP: filter "sed 's/p2/p3/;$aprimitive p3 ocf:heartbeat:Dummy'" g1
 .INP: show
 node node1 \
@@ -37,12 +36,11 @@
 primitive p3 Dummy
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 group g1 p1 p3
-property cib-bootstrap-options: \
-       default-action-timeout=2m
+op_defaults op-options: \
+       timeout=2m
 .INP: filter "sed '$aclone c1 p2'"
 .INP: filter "sed 's/p2/g1/'" c1
 .INP: filter "sed '/clone/s/g1/p2/'" c1 g1
@@ -103,19 +101,17 @@
 ERROR: 46: g1 refers to missing object nosuch
 .INP: filter "sed 's/^/# this is a comment\n/'" loc-d1
 .INP: rsc_defaults $id="rsc_options" failure-timeout=10m
-.INP: filter "sed 's/2m/60s/'" cib-bootstrap-options
-.INP: show rsc_options
-rsc_defaults rsc_options: \
-       failure-timeout=10m
+.INP: filter "sed 's/2m/60s/'" op-options
+.INP: show op-options
+op_defaults op-options: \
+       timeout=60s
 .INP: property stonith-enabled=true
 .INP: show cib-bootstrap-options
 property cib-bootstrap-options: \
-       default-action-timeout=60s \
        stonith-enabled=true
 .INP: filter 'sed "s/stonith-enabled=true//"'
 .INP: show cib-bootstrap-options
-property cib-bootstrap-options: \
-       default-action-timeout=60s
+property cib-bootstrap-options:
 .INP: primitive d4 ocf:heartbeat:Dummy
 .INP: primitive d5 ocf:heartbeat:Dummy
 .INP: primitive d6 ocf:heartbeat:Dummy
@@ -153,8 +149,7 @@
 primitive p3 Dummy
 primitive st stonith:null \
        params hostlist=node1 \
-       meta description="some description here" \
-       op start requires=nothing interval=0 \
+       meta description="some description here" requires=nothing \
        op monitor interval=60m
 group g1 p1 p2 d3
 group g2 d1 d2
@@ -167,8 +162,9 @@
        rule webserver: defined webserver
 order o-d456 d4 d5 d6
 order o1 inf: p3 c1
-property cib-bootstrap-options: \
-       default-action-timeout=60s
+property cib-bootstrap-options:
 rsc_defaults rsc_options: \
        failure-timeout=10m
+op_defaults op-options: \
+       timeout=60s
 .INP: commit
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/file.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/file.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/file.exp     
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/file.exp     
2018-01-12 15:29:08.000000000 +0100
@@ -10,17 +10,14 @@
        params hostlist=node1
 ms m1 p2
 clone c1 p1
-property cib-bootstrap-options: \
-       default-action-timeout=60s
+op_defaults op-options: \
+       timeout=60s
 .TRY configure erase nodes
 .TRY configure load replace sample.txt
 .EXT crm_resource --show-metadata ocf:pacemaker:Dummy
 .EXT crm_resource --show-metadata ocf:heartbeat:Delay
 .EXT crm_resource --show-metadata stonith:null
 .EXT stonithd metadata
-.EXT crmd metadata
-.EXT pengine metadata
-.EXT cib metadata
 .EXT sed -i 's/60s/2m/' sample.txt
 .EXT sed -i '8a # comment' sample.txt
 .TRY Load update
@@ -48,6 +45,7 @@
 ms m1 p2
 clone c1 p1
 property cib-bootstrap-options: \
-       default-action-timeout=2m \
        cluster-recheck-interval=10m
+op_defaults op-options: \
+       timeout=2m
 .EXT rm sample.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/newfeatures 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/newfeatures
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/newfeatures  
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/newfeatures  
2018-01-12 15:29:08.000000000 +0100
@@ -7,8 +7,8 @@
 # create one stonith so that verify does not complain
 primitive st stonith:ssh \
        params hostlist='node1' \
-       meta target-role="Started" \
-       op start requires=nothing timeout=60s \
+       meta target-role="Started" requires=nothing \
+       op start timeout=60s \
        op monitor interval=60m timeout=60s
 primitive p0 Dummy params $p0-state:state=1
 primitive p1 Dummy params \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/newfeatures.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/newfeatures.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/newfeatures.exp      
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/newfeatures.exp      
2018-01-12 15:29:08.000000000 +0100
@@ -5,7 +5,7 @@
 .INP: erase nodes
 .INP: node node1
 .INP: # create one stonith so that verify does not complain
-.INP: primitive st stonith:ssh         params hostlist='node1'         meta 
target-role="Started"      op start requires=nothing timeout=60s   op monitor 
interval=60m timeout=60s
+.INP: primitive st stonith:ssh         params hostlist='node1'         meta 
target-role="Started" requires=nothing     op start timeout=60s    op monitor 
interval=60m timeout=60s
 .INP: primitive p0 Dummy params $p0-state:state=1
 .INP: primitive p1 Dummy params     rule role=Started date in start=2009-05-26 
end=2010-05-26 or date gt 2014-01-01     state=2
 .INP: primitive p2 Dummy params @p0-state
@@ -32,8 +32,8 @@
        params @p0-state
 primitive st stonith:ssh \
        params hostlist=node1 \
-       meta target-role=Started \
-       op start requires=nothing timeout=60s interval=0 \
+       meta target-role=Started requires=nothing \
+       op start timeout=60s interval=0 \
        op monitor interval=60m timeout=60s
 tag ones l1 p1
 tag tag1 p0 p1 p2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/node.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/node.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/node.exp     
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/node.exp     
2018-01-12 15:29:08.000000000 +0100
@@ -1,7 +1,7 @@
 .TRY node show
-node1: normal
+node1: member
 .TRY node show node1
-node1: normal
+node1: member
 .SETENV showobj=node1
 .TRY node standby node1
 .EXT crm_attribute -t nodes -N 'node1' -n standby -v 'on' --lifetime='forever'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/rset.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/rset.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/rset.exp     
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/rset.exp     
2018-01-12 15:29:08.000000000 +0100
@@ -40,7 +40,6 @@
 .EXT stonithd metadata
 .EXT crm_resource --show-metadata ocf:pacemaker:Dummy
 .EXT crm_resource --show-metadata ocf:heartbeat:Dummy
-.EXT pengine metadata
 .INP: show
 node node1
 primitive d1 ocf:pacemaker:Dummy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/scripts.exp 
new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/scripts.exp
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/testcases/scripts.exp  
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/testcases/scripts.exp  
2018-01-12 15:29:08.000000000 +0100
@@ -28,8 +28,8 @@
 
 Filesystem:
 
-clvm             Cluster-aware LVM
-clvm-vg          Cluster-aware LVM (Volume Group)
+clvm             Cluster-aware LVM (lvmlockd)
+clvm-vg          Cluster-aware LVM (auto activation)
 drbd             DRBD Block Device
 filesystem       File System (mount point)
 gfs2             GFS2 File System (Cloned)
@@ -79,8 +79,8 @@
 
 Filesystem:
 
-clvm             Cluster-aware LVM
-clvm-vg          Cluster-aware LVM (Volume Group)
+clvm             Cluster-aware LVM (lvmlockd)
+clvm-vg          Cluster-aware LVM (auto activation)
 drbd             DRBD Block Device
 filesystem       File System (mount point)
 gfs2             GFS2 File System (Cloned)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/unittests/test_bugs.py 
new/crmsh-4.0.0+git.1515767348.9561209c/test/unittests/test_bugs.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/unittests/test_bugs.py 
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/unittests/test_bugs.py 
2018-01-12 15:29:08.000000000 +0100
@@ -616,19 +616,18 @@
 primitive st stonith:null params hostlist=node1
 clone c1 p1
 ms m1 p2
-property default-action-timeout=60s
+op_defaults timeout=60s
 """)
     assert ok
 
     obj = cibconfig.mkset_obj()
     assert obj is not None
-    ok = obj.save("""property default-action-timeout=2m
+    ok = obj.save("""op_defaults timeout=2m
 node node1 \
     attributes mem=16G
 primitive st stonith:null \
     params hostlist='node1' \
-    meta description="some description here" \
-    op start requires=nothing \
+    meta description="some description here" requires=nothing \
     op monitor interval=60m
 primitive p1 ocf:heartbeat:Dummy \
     op monitor interval=60m \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/unittests/test_parse.py 
new/crmsh-4.0.0+git.1515767348.9561209c/test/unittests/test_parse.py
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/unittests/test_parse.py        
2018-01-09 16:26:53.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/unittests/test_parse.py        
2018-01-12 15:29:08.000000000 +0100
@@ -147,10 +147,10 @@
         self.assertEqual(out.get('class'), 'ocf')
         #print out
 
-        out = self._parse('primitive st stonith:ssh params hostlist=node1 meta 
target-role=Started op start requires=nothing timeout=60s op monitor 
interval=60m timeout=60s')
+        out = self._parse('primitive st stonith:ssh params hostlist=node1 meta 
target-role=Started requires=nothing op start timeout=60s op monitor 
interval=60m timeout=60s')
         self.assertEqual(out.get('id'), 'st')
 
-        out2 = self._parse('primitive st stonith:ssh hostlist=node1 meta 
target-role=Started op start requires=nothing timeout=60s op monitor 
interval=60m timeout=60s')
+        out2 = self._parse('primitive st stonith:ssh hostlist=node1 meta 
target-role=Started requires=nothing op start timeout=60s op monitor 
interval=60m timeout=60s')
         self.assertEqual(out2.get('id'), 'st')
 
         self.assertEqual(xml_tostring(out), xml_tostring(out2))
@@ -158,7 +158,7 @@
         out = self._parse('primitive st stonith:ssh params hostlist= meta')
         self.assertEqual(out.get('id'), 'st')
 
-        out = self._parse('primitive st stonith:null params hostlist=node1 
meta description="some description here" op start requires=nothing op monitor 
interval=60m')
+        out = self._parse('primitive st stonith:null params hostlist=node1 
meta requires=nothing description="some description here" op start op monitor 
interval=60m')
         self.assertEqual(out.get('id'), 'st')
 
         out = self._parse('ms m0 resource params a=b')
@@ -614,8 +614,8 @@
             """node node2 utilization cpu=4""",
             """primitive st stonith:ssh \
             params hostlist='node1 node2' \
-            meta target-role="Started" \
-            op start requires=nothing timeout=60s \
+            meta target-role="Started" requires="nothing" \
+            op start timeout=60s \
             op monitor interval=60m timeout=60s""",
             """primitive st2 stonith:ssh \
             params hostlist='node1 node2'""",
@@ -679,7 +679,7 @@
         b = [
             '<node uname="node1"><instance_attributes><nvpair name="mem" 
value="16G"/></instance_attributes></node>',
             '<node uname="node2"><utilization><nvpair name="cpu" 
value="4"/></utilization></node>',
-            '<primitive id="st" class="stonith" 
type="ssh"><instance_attributes><nvpair name="hostlist" value="node1 
node2"/></instance_attributes><meta_attributes><nvpair name="target-role" 
value="Started"/></meta_attributes><operations><op name="start" 
requires="nothing" timeout="60s" interval="0"/><op name="monitor" 
interval="60m" timeout="60s"/></operations></primitive>',
+            '<primitive id="st" class="stonith" 
type="ssh"><instance_attributes><nvpair name="hostlist" value="node1 
node2"/></instance_attributes><meta_attributes><nvpair name="target-role" 
value="Started"/><nvpair name="requires" 
value="nothing"/></meta_attributes><operations><op name="start" timeout="60s" 
interval="0"/><op name="monitor" interval="60m" 
timeout="60s"/></operations></primitive>',
             '<primitive id="st2" class="stonith" 
type="ssh"><instance_attributes><nvpair name="hostlist" value="node1 
node2"/></instance_attributes></primitive>',
             '<primitive id="d1" class="ocf" provider="pacemaker" 
type="Dummy"><operations id="d1-ops"><op name="monitor" interval="60m"/><op 
name="monitor" interval="120m"><instance_attributes><nvpair 
name="OCF_CHECK_LEVEL" 
value="10"/></instance_attributes></op></operations></primitive>',
             '<op name="monitor" rsc="d1" interval="60s" timeout="30s"/>',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/update-expected-output.sh 
new/crmsh-4.0.0+git.1515767348.9561209c/test/update-expected-output.sh
--- old/crmsh-4.0.0+git.1515511613.5ee0eb23/test/update-expected-output.sh      
1970-01-01 01:00:00.000000000 +0100
+++ new/crmsh-4.0.0+git.1515767348.9561209c/test/update-expected-output.sh      
2018-01-12 15:29:08.000000000 +0100
@@ -0,0 +1,9 @@
+#!/bin/bash
+crmtestout="$1"
+
+[ -d "$crmtestout" ] || { echo "usage: $0 <test-output-dir>"; exit 1; }
+
+for f in $crmtestout/*.diff; do
+       fil=$(grep -- --- $f | awk '{print $2}' | sed 
's/\/usr\/share\/crmsh\/tests/\/test/g')
+       awk "NR==1{\$2=\"a$fil\"}1" < "$f" | awk "NR==2{\$2=\"b$fil\"}1"
+done


Reply via email to