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 - [email protected] + +- 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
