Hello community,
here is the log from the commit of package crmsh for openSUSE:Factory checked in at 2016-05-05 12:12:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/crmsh (Old)
and /work/SRC/openSUSE:Factory/.crmsh.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "crmsh"
Changes:
--------
--- /work/SRC/openSUSE:Factory/crmsh/crmsh.changes 2016-04-28 16:59:01.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.crmsh.new/crmsh.changes 2016-05-05 12:12:22.000000000 +0200
@@ -1,0 +2,10 @@
+Tue May 03 14:19:08 UTC 2016 - kgronlund@suse.com
+
+- Update to version 2.2.0+git.1462285059.d79cd0d:
+ + high: ui_root: Add crm verify command
+ + medium: hb_report: Fix broken -S option (#137)
+ + low: hb_report: Fix spurious error on missing events.txt
+ + low: scripts: Note SBD recommendation in vmware script (fate#318320)
+ + low: scripts: Note SBD recommendation in libvirt script (fate#318320)
+
+-------------------------------------------------------------------
@@ -69 +79 @@
- + high: history: Faster log parsing (bsc#920278)
+ + high: history: Faster log parsing (bsc#970278)
Old:
----
crmsh-2.2.0+git.1461246131.bf3c265.tar.bz2
New:
----
crmsh-2.2.0+git.1462285059.d79cd0d.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ crmsh.spec ++++++
--- /var/tmp/diff_new_pack.TmGExt/_old 2016-05-05 12:12:23.000000000 +0200
+++ /var/tmp/diff_new_pack.TmGExt/_new 2016-05-05 12:12:23.000000000 +0200
@@ -32,13 +32,13 @@
%{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
-%define version_unconverted 2.2.0+git.1461246131.bf3c265
+%define version_unconverted 2.2.0+git.1462285059.d79cd0d
Name: crmsh
Summary: High Availability cluster command-line interface
License: GPL-2.0+
Group: %{pkg_group}
-Version: 2.2.0+git.1461246131.bf3c265
+Version: 2.2.0+git.1462285059.d79cd0d
Release: 0
Url: http://crmsh.github.io
Source0: %{name}-%{version}.tar.bz2
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.TmGExt/_old 2016-05-05 12:12:23.000000000 +0200
+++ /var/tmp/diff_new_pack.TmGExt/_new 2016-05-05 12:12:23.000000000 +0200
@@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://github.com/ClusterLabs/crmsh.git</param>
- <param name="changesrevision">bf3c265508ce63bf1eb9c873534c29cfa488420d</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">d79cd0db97b99ccb6d4dbbe9797917c18a4982aa</param></service></servicedata>
\ No newline at end of file
++++++ crmsh-2.2.0+git.1461246131.bf3c265.tar.bz2 -> crmsh-2.2.0+git.1462285059.d79cd0d.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/.gitignore new/crmsh-2.2.0+git.1462285059.d79cd0d/.gitignore
--- old/crmsh-2.2.0+git.1461246131.bf3c265/.gitignore 1970-01-01 01:00:00.000000000 +0100
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/.gitignore 2016-05-03 16:17:39.000000000 +0200
@@ -0,0 +1,19 @@
+*.pyc
+*~
+#*.*#
+.#*
+doc/website-v1/gen
+Makefile.in
+autom4te.cache
+patches/*
+
+# Tool specific files
+.README.md.html
+.*.*~
+.project
+.settings
+.pydevproject
+
+contrib/build/
+contrib/dist/
+contrib/pygments_crmsh_lexers.egg-info/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/.hgignore new/crmsh-2.2.0+git.1462285059.d79cd0d/.hgignore
--- old/crmsh-2.2.0+git.1461246131.bf3c265/.hgignore 1970-01-01 01:00:00.000000000 +0100
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/.hgignore 2016-05-03 16:17:39.000000000 +0200
@@ -0,0 +1,7 @@
+syntax: glob
+
+*.pyc
+*~
+#*.*#
+doc/gen
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/README.md new/crmsh-2.2.0+git.1462285059.d79cd0d/README.md
--- old/crmsh-2.2.0+git.1461246131.bf3c265/README.md 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/README.md 2016-05-03 16:17:39.000000000 +0200
@@ -1,6 +1,7 @@
# crmsh
[![Build Status](https://travis-ci.org/ClusterLabs/crmsh.svg?branch=master)](https://travis-ci.org/ClusterLabs/crmsh)
+[![Code Health](https://landscape.io/github/ClusterLabs/crmsh/master/landscape.svg?style=flat)](https://landscape.io/github/ClusterLabs/crmsh/master)
## Introduction
@@ -21,7 +22,13 @@
## Installation
-Autoconf is used to take care of platform dependent locations. It is mainly inherited from the Pacemaker source.
+The GNU Autotools suite is used to configure the OCF root directory,
+the Asciidoc tool which is used to generate documentation and the
+default daemon user (usually hacluster).
+
+It then calls the python setuptools setup.py to actually process the
+Python module sources and install into the Python system site-packages
+directory.
```shell
./autogen.sh
@@ -52,6 +59,14 @@
git clone https://github.com/ClusterLabs/crmsh
```
+There is a git `pre-commit` hook used to update the data-manifest
+which lists all the data files to be installed. To install this, run
+
+```shell
+cp contrib/git-hook-pre-commit .git/hooks/pre-commit
+chmod +x .git/hooks/pre-commit
+```
+
## Community
* Bugs and issues can be reported at the [crmsh issues @ Github.com](https://github.com/clusterlabs/crmsh/issues) page.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/configure.ac new/crmsh-2.2.0+git.1462285059.d79cd0d/configure.ac
--- old/crmsh-2.2.0+git.1461246131.bf3c265/configure.ac 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/configure.ac 2016-05-03 16:17:39.000000000 +0200
@@ -8,7 +8,7 @@
AC_PREREQ([2.53])
-AC_INIT([crmsh],[2.2.0],[users@clusterlabs.org])
+AC_INIT([crmsh],[2.3.0],[users@clusterlabs.org])
AC_ARG_WITH(version,
[ --with-version=version Override package version (if you're a packager needing to pretend) ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/crm new/crmsh-2.2.0+git.1462285059.d79cd0d/crm
--- old/crmsh-2.2.0+git.1461246131.bf3c265/crm 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/crm 2016-05-03 16:17:39.000000000 +0200
@@ -1,8 +1,22 @@
#!/usr/bin/python
#
+# crmsh, command line interface for Linux HA clusters
# Copyright (C) 2008-2015 Dejan Muhamedagic
# Copyright (C) 2013-2015 Kristoffer Gronlund
-# See COPYING for license information.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
import sys
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/crmsh/cmd_status.py new/crmsh-2.2.0+git.1462285059.d79cd0d/crmsh/cmd_status.py
--- old/crmsh-2.2.0+git.1461246131.bf3c265/crmsh/cmd_status.py 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/crmsh/cmd_status.py 2016-05-03 16:17:39.000000000 +0200
@@ -118,3 +118,24 @@
utils.page_string(CrmMonFilter()(s))
return True
+
+
+def cmd_verify(args):
+ '''
+ Calls crm_verify -LV; ptest -L -VVVV
+ '''
+ from . import config
+ from . import clidisplay
+ if "ptest" in config.core.ptest:
+ cmd1 = "crm_verify -LV; %s -L -VVVV" % (config.core.ptest)
+ else:
+ cmd1 = "crm_verify -LV; %s -LjV" % (config.core.ptest)
+
+ if "scores" in args:
+ cmd1 += " -s"
+
+ cmd1 = utils.add_sudo(cmd1)
+ rc, s, e = utils.get_stdout_stderr(cmd1)
+ e = '\n'.join(clidisplay.error(l) for l in e.split('\n')).strip()
+ utils.page_string("\n".join((s, e)))
+ return rc == 0 and not e
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/crmsh/ui_root.py new/crmsh-2.2.0+git.1462285059.d79cd0d/crmsh/ui_root.py
--- old/crmsh-2.2.0+git.1461246131.bf3c265/crmsh/ui_root.py 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/crmsh/ui_root.py 2016-05-03 16:17:39.000000000 +0200
@@ -181,6 +181,19 @@
def do_status(self, context, *args):
return cmd_status.cmd_status(args)
+ @command.help('''Verify cluster state
+Performs basic checks for the cluster configuration and
+current status, reporting potential issues.
+
+Usage:
+.................
+verify [scores]
+.................
+''')
+ def do_verify(self, context, *args):
+ return cmd_status.cmd_verify(args)
+
+
# this will initialize _children for all levels under the root
Root.init_ui()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/doc/crm.8.adoc new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/crm.8.adoc
--- old/crmsh-2.2.0+git.1461246131.bf3c265/doc/crm.8.adoc 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/crm.8.adoc 2016-05-03 16:17:39.000000000 +0200
@@ -1,5 +1,5 @@
:man source: crm
-:man version: 2.2.0
+:man version: 2.3.0
:man manual: crmsh documentation
crm(8)
@@ -892,6 +892,26 @@
| brief
...............
+[[cmdhelp_root_verify,Verify cluster status]]
+=== `verify`
+
+Performs basic checks for the cluster configuration and
+current status, reporting potential issues.
+
+See `crm_verify(8)` and `crm_simulate(8)` for more details.
+
+Example:
+...............
+verify
+verify scores
+...............
+
+Usage:
+...............
+verify [scores]
+...............
+
+
[[cmdhelp_cluster,Cluster setup and management]]
=== `cluster` - Cluster setup and management
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/index.adoc new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/index.adoc
--- old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/index.adoc 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/index.adoc 2016-05-03 16:17:39.000000000 +0200
@@ -18,6 +18,6 @@
insight into the state of your cluster.
* https://github.com/ClusterLabs/crmsh/[Source Code]
-* http://crmsh.github.io/man-2.0/[Reference Manual (v2.2.0)]
+* http://crmsh.github.io/man-2.0/[Reference Manual (v2.2.1)]
* https://build.opensuse.org/package/show/network:ha-clustering:Stable/crmsh[Packages]
* http://clusterlabs.org[Cluster Labs]
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/man-2.0.adoc new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/man-2.0.adoc
--- old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/man-2.0.adoc 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/man-2.0.adoc 2016-05-03 16:17:39.000000000 +0200
@@ -1,5 +1,5 @@
:man source: crm
-:man version: 2.2.0
+:man version: 2.2.1
:man manual: crmsh documentation
crm(8)
@@ -97,6 +97,11 @@
Extra directory where crm looks for cluster scripts, or a list of
directories separated by semi-colons (e.g. +/dir1;/dir2;etc.+).
+*-o, --opt*='OPTION=VALUE'::
+ Set crmsh option temporarily. If the options are saved using
+ +options save+ then the value passed here will also be saved.
+ Multiple options can be set by using +-o+ multiple times.
+
[[topics_Introduction,Introduction]]
== Introduction
@@ -1211,7 +1216,7 @@
Usage:
.........
-add-node <addr>
+add-node <addr> [name]
.........
[[cmdhelp_corosync_del-node,Remove a corosync node]]
@@ -2085,6 +2090,21 @@
ready [<node>]
...............
+[[cmdhelp_node_server,show node hostname or server address]]
+==== `server`
+
+Remote nodes may have a configured server address which should
+be used when contacting the node. This command prints the
+server address if configured, else the node name.
+
+If no parameter is given, the adresses or names for all nodes
+are printed.
+
+Usage:
+...............
+server [<node> ...]
+...............
+
[[cmdhelp_node_show,show node]]
==== `show`
@@ -2936,8 +2956,11 @@
Load a part of configuration (or all of it) from a local file or
a network URL. The +replace+ method replaces the current
-configuration with the one from the source. The +update+ tries to
-import the contents into the current configuration.
+configuration with the one from the source. The +update+ method
+tries to import the contents into the current configuration. The
++push+ method imports the contents into the current configuration
+and removes any lines that are not present in the given
+configuration.
The file may be a CLI file or an XML file.
If the URL is `-`, the configuration is read from standard input.
@@ -2946,12 +2969,13 @@
...............
load [xml] <method> URL
-method :: replace | update
+method :: replace | update | push
...............
Example:
...............
load xml update myfirstcib.xml
load xml replace http://storage.big.com/cibs/bigcib.xml
+load xml push smallcib.xml
...............
[[cmdhelp_configure_location,a location preference]]
@@ -3653,6 +3677,11 @@
example, to show both the tag itself and the objects tagged by it the
following combination can be used: +show tag:my-tag my-tag+.
+To refine a selection of objects using multiple modifiers, the keywords
++and+ and +or+ can be used. For example, to select all primitives tagged
++foo+, the following combination can be used:
++show type:primitive and tag:foo+.
+
Usage:
...............
show [xml] [<id>
@@ -3679,8 +3708,8 @@
show related:webapp
...............
-[[cmdhelp_configure_show_property,Show property value]]
-==== `show-property`
+[[cmdhelp_configure_get_property,Get property value]]
+==== `get-property`
Show the value of the given property. If the value is not set, the
command will print the default value for the property, if known.
@@ -3692,19 +3721,19 @@
property sets with different rule expressions, the output of this
command is undefined.
-Pass the argument +-t+ or +--true+ to `show-property` to translate
+Pass the argument +-t+ or +--true+ to `get-property` to translate
the argument value into +true+ or +false+. If the value is not
set, the command will print +false+.
Usage:
...............
-show-property [-t|--true] [<name>]
+get-property [-t|--true] [<name>]
...............
Example:
...............
-show-property stonith-enabled
-show-property -t maintenance-mode
+get-property stonith-enabled
+get-property -t maintenance-mode
...............
[[cmdhelp_configure_tag,Define resource tags]]
@@ -4765,6 +4794,22 @@
transition save 0 enigma-22
...............
+[[cmdhelp_history_transitions,List transitions]]
+==== `transitions`
+
+A transition represents a change in cluster configuration or
+state. This command lists the transitions in the current timeframe.
+
+Usage:
+...............
+transitions
+...............
+Example:
+...............
+transitions
+...............
+
+
[[cmdhelp_history_wdiff,cluster states/transitions difference]]
==== `wdiff`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/news/2016-04-28-release-2_2_1.adoc new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/news/2016-04-28-release-2_2_1.adoc
--- old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/news/2016-04-28-release-2_2_1.adoc 1970-01-01 01:00:00.000000000 +0100
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/news/2016-04-28-release-2_2_1.adoc 2016-05-03 16:17:39.000000000 +0200
@@ -0,0 +1,73 @@
+crmsh 2.2.1 and 2.1.6 are released
+==================================
+:Author: Kristoffer Gronlund
+:Email: kgronlund@suse.com
+:Date: 2016-04-28 01:00
+
+Today I'm announcing two new releases of crmsh: 2.2.1 and 2.1.6.
+
+Both are stable releases, and I would recommend all users to
+upgrade to crmsh 2.2.1 if they can.
+
+== crmsh 2.2.1
+
+Here is a brief list of the most significant changes in this release:
+
+* Rewritten history explorer internally to improve performance significantly
+* Allow configuring reload operation
+* Fix fencing for remote nodes
+* Recycle corosync node IDs when possible
+* Several bug fixes in crm report
+* Warn if generated report is empty
+* Improved SBD cluster script
+* Add push method for configure load
+* Fixed cluster init
+
+The source code can be downloaded from Github:
+
+* https://github.com/ClusterLabs/crmsh/releases/tag/2.2.1
+
+Packages for several popular Linux distributions can be downloaded
+from the Stable repository at the OBS:
+
+* http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/
+
+Archives of the tagged release:
+
+* https://github.com/ClusterLabs/crmsh/archive/2.2.1.tar.gz
+* https://github.com/ClusterLabs/crmsh/archive/2.2.1.zip
+
+For the full list of changes since version 2.2.0, see the ChangeLog,
+available at:
+
+* https://github.com/ClusterLabs/crmsh/blob/2.2.1/ChangeLog
+
+== crmsh 2.1.6
+
+This is a bug fix release.
+Most fixes are minor or related to time handling in reports.
+
+For a complete list of changes since the previous version, please
+refer to the changelog:
+
+* https://github.com/ClusterLabs/crmsh/blob/2.1.6/ChangeLog
+
+Currently I'm not building binary releases for 2.1.6 as the stable
+series (at OBS) is at 2.2. This release is intended for users of
+the 2.1 series who have yet to migrate to 2.2.
+
+Archives of the tagged release:
+
+https://github.com/ClusterLabs/crmsh/archive/2.1.6.tar.gz
+https://github.com/ClusterLabs/crmsh/archive/2.1.6.zip
+
+For the full list of changes since version 2.1.5, see the ChangeLog,
+available at:
+
+* https://github.com/ClusterLabs/crmsh/blob/2.1.5/ChangeLog
+
+
+As usual, a huge thank you to all contributors and users of crmsh!
+
+Cheers,
+Kristoffer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/news.adoc new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/news.adoc
--- old/crmsh-2.2.0+git.1461246131.bf3c265/doc/website-v1/news.adoc 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/doc/website-v1/news.adoc 2016-05-03 16:17:39.000000000 +0200
@@ -1,14 +1,15 @@
= News
-link:/news/2016-01-15-release-2_2_0[2016-01-15 15:00]
+link:/news/2016-04-28-release-2_2_1[2016-04-28 01:00]
:leveloffset: 1
-include::news/2016-01-15-release-2_2_0.adoc[]
+include::news/2016-04-28-release-2_2_1.adoc[]
:leveloffset: 0
''''
+* link:/news/2016-01-15-release-2_2_0[2016-01-15 15:00 crmsh 2.2.0 is released]
* link:/news/2016-01-12-release-2_1_5[2016-01-12 10:00 Announcing crmsh stable release 2.1.5]
* link:/news/2015-05-25-getting-started-jp[2015-05-25 13:30 Getting Started translated to Japanese]
* link:/news/2015-05-13-release-2_1_4[2015-05-13 15:30 Announcing crmsh stable release 2.1.4]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/hb_report/hb_report.in new/crmsh-2.2.0+git.1462285059.d79cd0d/hb_report/hb_report.in
--- old/crmsh-2.2.0+git.1461246131.bf3c265/hb_report/hb_report.in 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/hb_report/hb_report.in 2016-05-03 16:17:39.000000000 +0200
@@ -562,9 +562,8 @@
debug "running: $LOCAL_SUDO hb_report __slave"
$LOCAL_SUDO ${HA_NOARCHBIN}/hb_report __slave
else
- debug "running: ssh $SSH_OPTS $node \"$SUDO hb_report __slave"
- ssh $SSH_OPTS $node \
- "$SUDO ${HA_NOARCHBIN}/hb_report __slave"
+ debug "running: ssh $SSH_OPTS $node \"$SUDO ${HA_NOARCHBIN}/hb_report __slave\""
+ ssh $SSH_OPTS $node "$SUDO ${HA_NOARCHBIN}/hb_report __slave"
fi | (cd $WORKDIR && tar xf -)
}
@@ -972,7 +971,9 @@
if [ -f $destdir/$HALOG_F ]; then
events_all $destdir/$HALOG_F > $destdir/events.txt
for n in $NODES; do
- awk "\$4==\"$n\"" $destdir/events.txt > $destdir/$n/events.txt
+ if [ -d "$destdir/$n" ]; then
+ awk "\$4==\"$n\"" $destdir/events.txt > $destdir/$n/events.txt
+ fi
done
else
for n in $NODES; do
@@ -1424,9 +1425,8 @@
#
# Start slave collectors
#
-
-if ! is_collector; then
- for node in $NODES; do
+collect_for_nodes() {
+ for node in "$@"; do
if node_needs_pwd $node; then
info "Please provide password for `say_ssh_user` at $node"
info "Note that collecting data will take a while."
@@ -1436,6 +1436,14 @@
SLAVEPIDS="$SLAVEPIDS $!"
fi
done
+}
+
+if ! is_collector; then
+ if [ -z "$NO_SSH" ]; then
+ collect_for_nodes $NODES
+ elif is_node; then
+ collect_for_nodes "$WE"
+ fi
fi
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/scripts/libvirt/main.yml new/crmsh-2.2.0+git.1462285059.d79cd0d/scripts/libvirt/main.yml
--- old/crmsh-2.2.0+git.1461246131.bf3c265/scripts/libvirt/main.yml 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/scripts/libvirt/main.yml 2016-05-03 16:17:39.000000000 +0200
@@ -6,6 +6,9 @@
longdesc: >
Uses libvirt as a STONITH device to fence a guest node.
Create a separate resource for each guest node in the cluster.
+
+ Note that the recommended fencing mechanism is SBD whenever
+ a shared storage device (like a SAN) is available.
category: Stonith
parameters:
- name: id
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/scripts/vmware/main.yml new/crmsh-2.2.0+git.1462285059.d79cd0d/scripts/vmware/main.yml
--- old/crmsh-2.2.0+git.1461246131.bf3c265/scripts/vmware/main.yml 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/scripts/vmware/main.yml 2016-05-03 16:17:39.000000000 +0200
@@ -3,12 +3,16 @@
# License: GNU General Public License (GPL)
version: 2.2
category: Stonith
-shortdesc: VMWare vCenter / ESX Server Fencing
+shortdesc: Fencing using vCenter / ESX Server
longdesc: |
+ Note that SBD is the recommended fencing mechanism for VMware
+ hosts! Please refer to the documentation for more details on
+ recommended fencing configurations.
+
Fencing for VMware virtualized hosts using ESX Server or vCenter.
This wizard configures a fencing resource for a single node.
- You will need to run the wizard for each node to fence.
+ It is necessary to run the wizard for each node to fence.
Prerequisites
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/test/testcases/bugs new/crmsh-2.2.0+git.1462285059.d79cd0d/test/testcases/bugs
--- old/crmsh-2.2.0+git.1461246131.bf3c265/test/testcases/bugs 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/test/testcases/bugs 2016-05-03 16:17:39.000000000 +0200
@@ -40,3 +40,25 @@
_test
verify
.
+session Unknown properties
+configure
+erase
+primitive st stonith:null \
+ params hostlist='node1' \
+ meta description="some description here" \
+ op start requires=nothing \
+ op monitor interval=60m
+property SAPHanaSR: \
+ hana_ha1_site_lss_WDF1=4
+show
+commit
+_test
+verify
+property SAPHanaSR_2: \
+ hana_ha1_site_iss_WDF1=cde \
+ hana_ha1_site_bss_WDF1=abc
+show xml
+commit
+_test
+verify
+.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/test/testcases/bugs.exp new/crmsh-2.2.0+git.1462285059.d79cd0d/test/testcases/bugs.exp
--- old/crmsh-2.2.0+git.1461246131.bf3c265/test/testcases/bugs.exp 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/test/testcases/bugs.exp 2016-05-03 16:17:39.000000000 +0200
@@ -96,3 +96,64 @@
.EXT cib metadata
.INP: _test
.INP: verify
+.TRY Unknown properties
+.INP: configure
+.INP: erase
+INFO: 2: modified location:loc1 from g1 to gr2
+INFO: 2: constraint colocation:c2 updated
+INFO: 2: constraint colocation:c2 updated
+.INP: primitive st stonith:null params hostlist='node1' meta description="some description here" op start 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 \
+ 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
+.INP: show xml
+<?xml version="1.0" ?>
+<cib>
+ <configuration>
+
+
+ <nvpair name="hana_ha1_site_iss_WDF1" value="cde" id="SAPHanaSR_2-hana_ha1_site_iss_WDF1"/>
+ <nvpair name="hana_ha1_site_bss_WDF1" value="abc" id="SAPHanaSR_2-hana_ha1_site_bss_WDF1"/>
+
+
+ <nvpair name="hana_ha1_site_lss_WDF1" value="4" id="SAPHanaSR-hana_ha1_site_lss_WDF1"/>
+
+
+ <nodes>
+ <node uname="node1" id="node1"/>
+ </nodes>
+ <resources>
+ <primitive id="st" class="stonith" type="null">
+
+ <nvpair name="hostlist" value="node1" id="st-instance_attributes-hostlist"/>
+
+
+ <nvpair name="description" value="some description here" id="st-meta_attributes-description"/>
+
+ <operations>
+ <op name="start" requires="nothing" interval="0" id="st-start-0"/>
+ <op name="monitor" interval="60m" id="st-monitor-60m"/>
+ </operations>
+ </primitive>
+ </resources>
+ <constraints/>
+ </configuration>
+</cib>
+
+.INP: commit
+.INP: _test
+.INP: verify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/test/testcases/scripts.exp new/crmsh-2.2.0+git.1462285059.d79cd0d/test/testcases/scripts.exp
--- old/crmsh-2.2.0+git.1461246131.bf3c265/test/testcases/scripts.exp 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/test/testcases/scripts.exp 2016-05-03 16:17:39.000000000 +0200
@@ -57,6 +57,7 @@
libvirt STONITH for libvirt (kvm / Xen)
sbd SBD, Shared storage based fencing
+vmware Fencing using vCenter / ESX Server
.INP: list all
.EXT crm_resource --show-metadata systemd:haproxy
@@ -120,6 +121,7 @@
libvirt STONITH for libvirt (kvm / Xen)
sbd SBD, Shared storage based fencing
+vmware Fencing using vCenter / ESX Server
.INP: list names
add
@@ -160,6 +162,7 @@
sbd
sbd-device
virtual-ip
+vmware
.INP: list names all
add
apache
@@ -198,6 +201,7 @@
sbd
sbd-device
virtual-ip
+vmware
.INP: list all names
add
apache
@@ -236,6 +240,7 @@
sbd
sbd-device
virtual-ip
+vmware
.INP: list bogus
ERROR: 7: script.list: Unexpected argument 'bogus': expected [all|names]
.INP: show mailto
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1461246131.bf3c265/test/unittests/test_bugs.py new/crmsh-2.2.0+git.1462285059.d79cd0d/test/unittests/test_bugs.py
--- old/crmsh-2.2.0+git.1461246131.bf3c265/test/unittests/test_bugs.py 2016-04-21 15:46:53.000000000 +0200
+++ new/crmsh-2.2.0+git.1462285059.d79cd0d/test/unittests/test_bugs.py 2016-05-03 16:17:39.000000000 +0200
@@ -924,3 +924,14 @@
assert ok
ok = factory.create_object(*"primitive dup1 Dummy".split())
assert not ok
+
+
+@with_setup(setup_func, teardown_func)
+def test_dup_create():
+ """
+ Creating property sets with unknown properties
+ """
+ ok = factory.create_object(*"property hana_test1: hana_attribute_1=5 hana_attribute_2=mohican".split())
+ assert ok
+ ok = factory.create_object(*"property hana_test2: hana_attribute_1=5s a-b-c-d=e-f-g".split())
+ assert ok