Hello community, here is the log from the commit of package crmsh for openSUSE:Factory checked in at 2016-08-17 12:04:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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-08-09 22:16:00.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.crmsh.new/crmsh.changes 2016-08-17 12:04:59.000000000 +0200 @@ -1,0 +2,6 @@ +Mon Aug 15 06:01:21 UTC 2016 - kgronl...@suse.com + +- Update to version 2.3.0+git.1470991992.7deaa3a: + * Release 2.3.0 + +------------------------------------------------------------------- Old: ---- crmsh-2.2.0+git.1470743271.64d1a40.tar.bz2 New: ---- crmsh-2.3.0+git.1470991992.7deaa3a.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ crmsh.spec ++++++ --- /var/tmp/diff_new_pack.2l3rvq/_old 2016-08-17 12:05:00.000000000 +0200 +++ /var/tmp/diff_new_pack.2l3rvq/_new 2016-08-17 12:05:00.000000000 +0200 @@ -32,13 +32,11 @@ %{!?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.1470743271.64d1a40 - Name: crmsh Summary: High Availability cluster command-line interface License: GPL-2.0+ Group: %{pkg_group} -Version: 2.2.0+git.1470743271.64d1a40 +Version: 2.3.0+git.1470991992.7deaa3a Release: 0 Url: http://crmsh.github.io Source0: %{name}-%{version}.tar.bz2 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.2l3rvq/_old 2016-08-17 12:05:00.000000000 +0200 +++ /var/tmp/diff_new_pack.2l3rvq/_new 2016-08-17 12:05:00.000000000 +0200 @@ -3,7 +3,7 @@ <param name="url">git://github.com/ClusterLabs/crmsh.git</param> <param name="scm">git</param> <param name="filename">crmsh</param> - <param name="versionformat">2.2.0+git.%ct.%h</param> + <param name="versionformat">2.3.0+git.%ct.%h</param> <param name="revision">master</param> <param name="changesgenerate">enable</param> </service> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.2l3rvq/_old 2016-08-17 12:05:00.000000000 +0200 +++ /var/tmp/diff_new_pack.2l3rvq/_new 2016-08-17 12:05:00.000000000 +0200 @@ -1,4 +1,4 @@ <servicedata> <service name="tar_scm"> <param name="url">git://github.com/ClusterLabs/crmsh.git</param> - <param name="changesrevision">64d1a40b8ed79e17973af5d9159eca3e703cf8e8</param></service></servicedata> \ No newline at end of file + <param name="changesrevision">7deaa3a022f1b817640fe7d7ab7d956dded50caa</param></service></servicedata> \ No newline at end of file ++++++ crmsh-2.2.0+git.1470743271.64d1a40.tar.bz2 -> crmsh-2.3.0+git.1470991992.7deaa3a.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1470743271.64d1a40/AUTHORS new/crmsh-2.3.0+git.1470991992.7deaa3a/AUTHORS --- old/crmsh-2.2.0+git.1470743271.64d1a40/AUTHORS 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/AUTHORS 2016-08-15 08:01:21.000000000 +0200 @@ -24,6 +24,7 @@ Michael Prokop <devnull[at]localhost> Motaharu Kobu <mkubo[at]3ware[dot]co[dot]jp> NAKAHIRA Kazutomo <nakahira[dot]kazutomo[at]oss[dot]ntt[dot]co[dot]jp> + Nate Clark <nate[at]neworld[dot]us> nozawat <nozawat[at]gmail[dot]com> Pedro Salgado <steenzout[at]saucelabs[dot]com> Richard B Winters <rik[at]mmogp[dot]com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1470743271.64d1a40/ChangeLog new/crmsh-2.3.0+git.1470991992.7deaa3a/ChangeLog --- old/crmsh-2.2.0+git.1470743271.64d1a40/ChangeLog 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/ChangeLog 2016-08-15 08:01:21.000000000 +0200 @@ -1,3 +1,97 @@ +* Fri Aug 12 2016 Kristoffer Grönlund <kgronl...@suse.com> and many others +- Release 2.3.0 +- medium: constants: Add missing alerts constants (#150) (bsc#992789) +- high: hb_report: Don't collect logs from journalctl if -M is set (bsc#990025) +- high: hb_report: Skip lines without timestamps in log correctly (bsc#989810) +- low: scripts: Fix use of non-relative import for ra +- medium: tmpfiles: Create temporary directory if non-existing (bsc#981583) +- medium: xmlutil: reduce unknown attribute to warning (bsc#981659) +- high: constants: Add maintenance to set of known attributes (bsc#981659) +- medium: scripts: no-quorum-policy=ignore is deprecated (bsc#981056) +- low: history: fall back to any log file in report root +- medium: history: Report better error when history user is not sudoer (bsc#980924) +- high: history: Store live report in per-user directory (bsc#980924) +- medium: logparser: Fix use-before-declaration error in logparser +- low: utils: Clearer error if permission denied when locking (bsc#980924) +- medium: logparser: Handle read-only access to metadata cache (bsc#980924) +- doc: Add @steenzout to AUTHORS +- fix issue #144 by comparing output line by line (#146) +- fixed version number (#142) +- added crm to scripts (#143) +- doc: sort subcommands in the documentation +- high: parse: Support for event-driven alerts (fate#320855) (#136) +- medium: ui_resource: Add force argument to resource cleanup (bsc#979420) +- high: ui_resource: Improved resource move/clear/locate commands +- medium: ui_resource: Show utilization in output from crm resource scores +- high: utils: Avoid deadlock if DC changes during idle wait (bsc#978480) +- low: scripts: Note SBD recommendation in libvirt script (fate#318320) +- low: scripts: Note SBD recommendation in vmware script (fate#318320) +- high: ui_root: Add crm verify command +- low: hb_report: Fix spurious error on missing events.txt +- medium: hb_report: Fix broken -S option (#137) +- medium: ui_node: Fix crash in node fence command (bsc#974902) +- low: scripts: Better description for sbd +- low: scripts: Preserve formatting in description for vmware wizard +- medium: scripts: Add vmware to data manifest (fate#318320) +- high: scripts: VMware fencing using vCenter (fate#318320) +- low: scripts: Shouldn't set -e here (fate#318320) +- low: parse: Don't validate operation name in parser (bsc#975357) +- low: constants: Add missing reload operation to parser +- medium: ui_node: Fix "crm node fence" (bsc#974902) (#134) +- low: corosync: Recycle node IDs when possible +- low: scripts: Fix watchdog test in sbd-device (fate#318320) +- low: scripts: Only print debug output locally unless there were remote actions +- low: cibconfig: Don't mix up CLI name with XML tag +- low: parser: ignore case for attr: prefix +- medium: scripts: Use os.uname() to find hostname (#128) +- low: history: Don't skip nodes without logs +- low: logparser: Don't crash on nodes without logs +- low: scripts: Need sudo if non-local call +- medium: hb_report: Add timeout to SSH connection (bsc#971690) +- low: scripts: Clean up various scripts +- medium: main: Add -o|--opt to pass extra options for crmsh +- low: command: handle stray regex characters in input +- medium: scripts: SBD wizard which configures SBD itself (fate#318320) +- medium: scripts: Add nfs-utils to list of packages for nfsserver +- medium: scripts: Set sudo and full path for exportfs -v in nfs scripts +- medium: scripts: Don't require sudo for root +- medium: scripts: inline scripts for call actions +- medium: scripts: Simplify SBD script (bsc#968076) (fate#318320) +- low: logparser: Add cib info to __meta for hawk +- low: hb_report: Suggest user checks timeframe on empty logs (bsc#970823) +- medium: ui_node: Add crm node server command +- medium: hb_report: Use server attribute for remote nodes if set (bsc#970819) +- low: ui_resource: alias show to get +- high: history: Faster log parsing (bsc#920278) +- low: log_patterns_118: Add captures to log patterns for tagging (bsc#970278) +- medium: crm_pssh: Fix live refresh of journalctl logs (bsc#970931) +- low: hb_report: Warn if generated report is empty (bsc#970823) +- low: hb_report: Print covered time span at exit (bsc#970823) +- low: logtime: Improve performance of syslog_ts (bsc#970278) +- low: scripts: Fix error in service action +- low: history: use os.listdir to list history sessions +- medium: ui_node: Use stonith_admin -F to fence remote nodes (bsc#967907) +- low: ui_node: Less cryptic query when fencing node +- low: config: Messed up previous fix (#119) +- low: config: Clean up libdir configuration (#119) +- medium: config: make multiarch dependency a dynamic include (#119) +- high: ui_configure: Fix commit force (#120) +- medium: hb_report: Don't collect logs on non-nodes (bsc#959031) +- medium: ui_configure: Only wait for DC if resources were stopped (#117) +- low: Fix title style vs. sentence style in cluster scripts (bsc#892108) +- medium: command: Disable fuzzy matcher for completion (#116) +- Merge pull request #115 from rikkotec/patch-queue/remove-fix-for-debian +- medium: corosync: added optional parameter [name] to "corosync add-node" function +- medium: constants: clone-min meta attribute (new in Pacemaker 1.1.14) +- medium: cibconfig: add and|or filter combinators to influence filtering (fate#320401) +- high: scripts: fix broken cluster init script (bsc#963135) +- high: scripts: Add LVM on DRBD cluster script (bsc#951132) +- high: scripts: Add NFS on LVM and DRBD cluster script (bsc#951132) +- medium: ui_configure: Rename show-property to get-property +- high: scripts: Improved OCFS2 cluster script (bsc#953984) +- medium: scripts: Updated SBD cluster script +- high: history: Parse log lines without timestamp (bsc#955581) + * Fri Jan 15 2016 Kristoffer Grönlund <kgronl...@suse.com> and many others - Release 2.2.0 - medium: history: Fix live report refresh (bsc#950422) (bsc#927414) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1470743271.64d1a40/crmsh.spec new/crmsh-2.3.0+git.1470991992.7deaa3a/crmsh.spec --- old/crmsh-2.2.0+git.1470743271.64d1a40/crmsh.spec 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/crmsh.spec 2016-08-15 08:01:21.000000000 +0200 @@ -36,12 +36,16 @@ Summary: High Availability cluster command-line interface License: GPL-2.0+ Group: %{pkg_group} -Version: 2.2.0 +Version: 2.3.0 Release: 0 Url: http://crmsh.github.io Source0: %{name}-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-build +%if 0%{?suse_version} +# Requiring pacemaker makes crmsh harder to build on other distributions, +# and is mostly a convenience feature. So only do it for SUSE. Requires(pre): pacemaker +%endif Requires: %{name}-scripts >= %{version}-%{release} Requires: /usr/bin/which Requires: python >= 2.6 @@ -77,7 +81,7 @@ BuildRequires: libxslt-tools %endif -%if 0%{?suse_version} > 1110 +%if 0%{?suse_version} > 1110 || 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?rhel} || 0%{?fedora} BuildArch: noarch %endif @@ -92,29 +96,26 @@ Group: %{pkg_group} Requires: crmsh %if 0%{?with_regression_tests} -BuildRequires: mailx -BuildRequires: procps -BuildRequires: python-dateutil -BuildRequires: python-nose -BuildRequires: python-parallax -BuildRequires: vim -Requires: pacemaker +Requires(post): mailx +Requires(post): procps +Requires(post): python-dateutil +Requires(post): python-nose +Requires(post): python-parallax +Requires(post): pacemaker %if 0%{?suse_version} > 1110 BuildArch: noarch %endif %if 0%{?suse_version} -BuildRequires: libglue-devel -BuildRequires: libpacemaker-devel +Requires(post): libglue-devel %else -BuildRequires: cluster-glue-libs-devel -BuildRequires: pacemaker-libs-devel +Requires(post): cluster-glue-libs-devel %endif %if 0%{?fedora_version} -BuildRequires: PyYAML +Requires(post): PyYAML %else -BuildRequires: python-PyYAML +Requires(post): python-PyYAML %endif %endif @@ -143,7 +144,7 @@ # This can result in files having been created in the future # when building on machines in timezones 'behind' the one the # commit occurred in - which seriously confuses 'make' -find . -exec touch \{\} \; +find . -mtime -0 -exec touch \{\} \; %build ./autogen.sh @@ -151,10 +152,10 @@ %{configure} \ --sysconfdir=%{_sysconfdir} \ --localstatedir=%{_var} \ - --with-version=%{version}-%{release} \ + --with-version=%{version} \ --docdir=%{crmsh_docdir} -make %{_smp_mflags} VERSION="%{version}-%{release}" sysconfdir=%{_sysconfdir} localstatedir=%{_var} +make %{_smp_mflags} VERSION="%{version}" sysconfdir=%{_sysconfdir} localstatedir=%{_var} %if 0%{?with_regression_tests} ./test/run --quiet @@ -167,6 +168,10 @@ %install make DESTDIR=%{buildroot} docdir=%{crmsh_docdir} install install -Dm0644 contrib/bash_completion.sh %{buildroot}%{_sysconfdir}/bash_completion.d/crm.sh +if [ -f %{buildroot}%{_bindir}/crm ]; then + install -Dm0755 %{buildroot}%{_bindir}/crm %{buildroot}%{_sbindir}/crm + rm %{buildroot}%{_bindir}/crm +fi %if 0%{?suse_version} %fdupes %{buildroot} %endif @@ -196,8 +201,7 @@ %defattr(-,root,root) %{_sbindir}/crm -%{python_sitelib}/crmsh -%{python_sitelib}/crmsh*.egg-info +%{python_sitelib}/crmsh* %{_datadir}/%{name} %exclude %{_datadir}/%{name}/tests diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1470743271.64d1a40/doc/website-v1/index.adoc new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/index.adoc --- old/crmsh-2.2.0+git.1470743271.64d1a40/doc/website-v1/index.adoc 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/index.adoc 2016-08-15 08:01:21.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.1)] +* http://crmsh.github.io/man-2.0/[Reference Manual (v2.3.0)] * 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.1470743271.64d1a40/doc/website-v1/man-2.0.adoc new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/man-2.0.adoc --- old/crmsh-2.2.0+git.1470743271.64d1a40/doc/website-v1/man-2.0.adoc 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/man-2.0.adoc 2016-08-15 08:01:21.000000000 +0200 @@ -1,5 +1,5 @@ :man source: crm -:man version: 2.2.1 +:man version: 2.3.0 :man manual: crmsh documentation crm(8) @@ -333,7 +333,7 @@ Configuration templates have been deprecated in favor of the more capable `cluster scripts`. To learn how to use cluster scripts, see the dedicated documentation on the `crmsh` website at -https://crmsh.github.io/, or in the <<cmdhelp_script,Script section>>. +http://crmsh.github.io/, or in the <<cmdhelp_script,Script section>>. **************************** Configuration templates are ready made configurations created by @@ -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 @@ -922,6 +942,43 @@ add <node> ............... +[[cmdhelp_cluster_copy,Copy file to other cluster nodes]] +==== `copy` + +Copy file to other cluster nodes. + +Copies the given file to all other nodes unless given a +list of nodes to copy to as argument. + +Usage: +............... +copy <filename> [nodes ...] +............... + +Example: +............... +copy /etc/motd +............... + +[[cmdhelp_cluster_diff,Diff file across cluster]] +==== `diff` + +Displays the difference, if any, between a given file +on different nodes. If the second argument is `--checksum`, +a checksum of the file will be calculated and displayed for +each node. + +Usage: +............... +diff <file> [--checksum] [nodes...] +............... + +Example: +............... +diff /etc/crm/crm.conf node2 +diff /etc/resolv.conf --checksum +............... + [[cmdhelp_cluster_health,Cluster health check]] ==== `health` @@ -971,24 +1028,6 @@ run "cat /proc/uptime" ............... -[[cmdhelp_cluster_copy,Copy file to other cluster nodes]] -==== `copy` - -Copy file to other cluster nodes. - -Copies the given file to all other nodes unless given a -list of nodes to copy to as argument. - -Usage: -............... -copy <filename> [nodes ...] -............... - -Example: -............... -copy /etc/motd -............... - [[cmdhelp_cluster_start,Start cluster services]] ==== `start` @@ -1034,25 +1073,6 @@ wait_for_startup ........ -[[cmdhelp_cluster_diff,Diff file across cluster]] -==== `diff` - -Displays the difference, if any, between a given file -on different nodes. If the second argument is `--checksum`, -a checksum of the file will be calculated and displayed for -each node. - -Usage: -............... -diff <file> [--checksum] [nodes...] -............... - -Example: -............... -diff /etc/crm/crm.conf node2 -diff /etc/resolv.conf --checksum -............... - [[cmdhelp_script,Cluster script management]] === `script` - Cluster script management @@ -1073,6 +1093,45 @@ function through the usual SSH channels used for system maintenance, requiring no additional software to be installed or maintained. +[[cmdhelp_script_json,JSON API for cluster scripts]] +==== `json` + +This command provides a JSON API for the cluster scripts, intended for +use in user interface tools that want to interact with the cluster via +scripts. + +The command takes a single argument, which should be a JSON array with +the first member identifying the command to perform. + +The output is line-based: Commands that return multiple results will +return them line-by-line, ending with a terminator value: "end". + +When providing parameter values to this command, they should be +provided as nested objects, so +virtual-ip:ip=192.168.0.5+ on the +command line becomes the JSON object ++{"virtual-ip":{"ip":"192.168.0.5"}}+. + +API: +........ +["list"] +=> [{name, shortdesc, category}] + +["show", <name>] +=> [{name, shortdesc, longdesc, category, <<steps>>}] + +<<steps>> := [{name, shortdesc], longdesc, required, parameters, steps}] + +<<params>> := [{name, shortdesc, longdesc, required, unique, advanced, + type, value, example}] + +["verify", <name>, <<values>>] +=> [{shortdesc, longdesc, text, nodes}] + +["run", <name>, <<values>>] +=> [{shortdesc, rc, output|error}] +........ + + [[cmdhelp_script_list,List available scripts]] ==== `list` @@ -1095,6 +1154,32 @@ list all names ............ +[[cmdhelp_script_run,Run the script]] +==== `run` + +Given a list of parameter values, this command will execute the +actions specified by the cluster script. The format for the parameter +values is the same as for the `verify` command. + +Can optionally take at least two parameters: +* `nodes=<nodes>`: List of nodes that the script runs over +* `dry_run=yes|no`: If set, the script will not perform any modifications. + +Additional parameters may be available depending on the script. + +Use the `show` command to see what parameters are available. + +Usage: +............. +run <script> [args...] +............. + +Example: +............. +run apache install=true +run sbd id=sbd-1 node=node1 sbd_device=/dev/disk/by-uuid/F00D-CAFE +............. + [[cmdhelp_script_show,Describe the script]] ==== `show` @@ -1131,71 +1216,6 @@ verify sbd id=sbd-1 node=node1 sbd_device=/dev/disk/by-uuid/F00D-CAFE ............ -[[cmdhelp_script_run,Run the script]] -==== `run` - -Given a list of parameter values, this command will execute the -actions specified by the cluster script. The format for the parameter -values is the same as for the `verify` command. - -Can optionally take at least two parameters: -* `nodes=<nodes>`: List of nodes that the script runs over -* `dry_run=yes|no`: If set, the script will not perform any modifications. - -Additional parameters may be available depending on the script. - -Use the `show` command to see what parameters are available. - -Usage: -............. -run <script> [args...] -............. - -Example: -............. -run apache install=true -run sbd id=sbd-1 node=node1 sbd_device=/dev/disk/by-uuid/F00D-CAFE -............. - -[[cmdhelp_script_json,JSON API for cluster scripts]] -==== `json` - -This command provides a JSON API for the cluster scripts, intended for -use in user interface tools that want to interact with the cluster via -scripts. - -The command takes a single argument, which should be a JSON array with -the first member identifying the command to perform. - -The output is line-based: Commands that return multiple results will -return them line-by-line, ending with a terminator value: "end". - -When providing parameter values to this command, they should be -provided as nested objects, so +virtual-ip:ip=192.168.0.5+ on the -command line becomes the JSON object -+{"virtual-ip":{"ip":"192.168.0.5"}}+. - -API: -........ -["list"] -=> [{name, shortdesc, category}] - -["show", <name>] -=> [{name, shortdesc, longdesc, category, <<steps>>}] - -<<steps>> := [{name, shortdesc], longdesc, required, parameters, steps}] - -<<params>> := [{name, shortdesc, longdesc, required, unique, advanced, - type, value, example}] - -["verify", <name>, <<values>>] -=> [{shortdesc, longdesc, text, nodes}] - -["run", <name>, <<values>>] -=> [{shortdesc, rc, output|error}] -........ - - [[cmdhelp_corosync,Corosync management]] === `corosync` - Corosync management @@ -1589,6 +1609,19 @@ All (or almost all) commands are implemented with the CRM tools such as `crm_resource(8)`. +[[cmdhelp_resource_ban,ban a resource from a node]] +==== `ban` + +Ban a resource from running on a certain node. If no node is given +as argument, the resource is banned from the current location. + +See `move` for details on other arguments. + +Usage: +............... +ban <rsc> [<node>] [<lifetime>] [force] +............... + [[cmdhelp_resource_cleanup,cleanup resource status]] ==== `cleanup` @@ -1596,11 +1629,39 @@ temporarily failed. If a node is omitted, cleanup on all nodes. If there are many nodes, the command may take a while. ++(Pacemaker 1.1.14)+ Pass force to cleanup the resource itself, +otherwise the cleanup command will apply to the parent resource (if +any). + +Usage: +............... +cleanup <rsc> [<node>] [force] +............... + +[[cmdhelp_resource_clear,Clear any relocation constraint]] +==== `clear` (`unmove`, `unmigrate`, `unban`) + +Remove any relocation constraint created by +the `move`, `migrate` or `ban` command. + Usage: ............... -cleanup <rsc> [<node>] +clear <rsc> +unmigrate <rsc> +unban <rsc> ............... +[[cmdhelp_resource_constraints,Show constraints affecting a resource]] +==== `constraints` + +Display the location and colocation constraints affecting the +resource. + +Usage: +................ +constraints <rsc> +................ + [[cmdhelp_resource_demote,demote a master-slave resource]] ==== `demote` @@ -1628,6 +1689,16 @@ failcount fs_0 delete node2 ............... +[[cmdhelp_resource_locate,show the location of resources]] +==== `locate` + +Show the current location of one or more resources. + +Usage: +............... +locate [<rsc> ...] +............... + [[cmdhelp_resource_maintenance,Enable/disable per-resource maintenance mode]] ==== `maintenance` @@ -1678,33 +1749,33 @@ meta ip_0 set target-role stopped ............... -[[cmdhelp_resource_migrate,migrate a resource to another node]] -==== `migrate` (`move`) +[[cmdhelp_resource_move,Move a resource to another node]] +==== `move` (`migrate`) + +Move a resource away from its current location. + +If the destination node is left out, the resource is migrated by +creating a constraint which prevents it from running on the current +node. For this type of constraint to be created, the +force+ argument +is required. -Migrate a resource to a different node. If node is left out, the -resource is migrated by creating a constraint which prevents it from -running on the current node. Additionally, you may specify a -lifetime for the constraint---once it expires, the location -constraint will no longer be active. +A lifetime may be given for the constraint. Once it expires, the +location constraint will no longer be active. Usage: ............... -migrate <rsc> [<node>] [<lifetime>] [force] +move <rsc> [<node>] [<lifetime>] [force] ............... -[[cmdhelp_resource_ban,ban a resource from a node]] -==== `ban` - -Ban a resource from running on a certain node. If no node is given -as argument, the resource is banned from the current location. +[[cmdhelp_resource_operations,Show active resource operations]] +==== `operations` -See `migrate` for details on other arguments. +Show active operations, optionally filtered by resource and node. Usage: -............... -ban <rsc> [<node>] [<lifetime>] [force] -............... - +................ +operations [<rsc>] [<node>] +................ [[cmdhelp_resource_param,manage a parameter of a resource]] ==== `param` @@ -1791,27 +1862,6 @@ # ............... -[[cmdhelp_resource_constraints,Show constraints affecting a resource]] -==== `constraints` - -Display the location and colocation constraints affecting the -resource. - -Usage: -................ -constraints <rsc> -................ - -[[cmdhelp_resource_operations,Show active resource operations]] -==== `operations` - -Show active operations, optionally filtered by resource and node. - -Usage: -................ -operations [<rsc>] [<node>] -................ - [[cmdhelp_resource_scores,Display resource scores]] ==== `scores` @@ -1937,16 +1987,6 @@ unmanage <rsc> ............... -[[cmdhelp_resource_unmigrate,unmigrate a resource to another node]] -==== `unmigrate` (`unmove`) - -Remove the constraint generated by the previous migrate command. - -Usage: -............... -unmigrate <rsc> -............... - [[cmdhelp_resource_untrace,stop RA tracing]] ==== `untrace` @@ -2599,6 +2639,59 @@ acl_target joe resource_admin constraint_editor ................ +[[cmdhelp_configure_alert,Event-driven alerts]] +==== `alert` + +.Version note +**************************** +This feature is only available +in Pacemaker 1.1.15+. +**************************** + +Event-driven alerts enables calling scripts whenever interesting +events occur in the cluster (nodes joining or leaving, resources +starting or stopping, etc.). + +The +path+ is an arbitrary file path to an alert script. Existing +external scripts used with ClusterMon resources can be used as alert +scripts, since the interface is compatible. + +Each alert may have a number of receipients configured. These will be +passed to the script as arguments. The first recipient will also be +passed as the +CRM_alert_recipient+ environment variable, for +compatibility with existing scripts that only support one recipient. + +The available meta attributes are +timeout+ (default 30s) and ++timestamp-format+ (default `"%H:%M:%S.%06N"`). + +Some configurations may require each recipient to be delimited by +brackets, to avoid ambiguity. In the example +alert-2+ below, the meta +attribute for `timeout` is defined after the recipient, so the +brackets are used to ensure that the meta attribute is set for the +alert and not just the recipient. This can be avoided by setting any +alert attributes before defining the recipients. + +Usage: +............... +alert <id> <path> \ + [attributes <nvpair> ...] \ + [meta <nvpair> ...] \ + [to [{] <recipient> + [attributes <nvpair> ...] \ + [meta <nvpair> ...] [}] \ + ...] +............... + +Example: +............... +alert alert-1 /srv/pacemaker/pcmk_alert_sample.sh \ + to /var/log/cluster-alerts.log + +alert alert-2 /srv/pacemaker/example_alert.sh \ + meta timeout=60s \ + to { /var/log/cluster-alerts.log } +............... + [[cmdhelp_configure_cib,CIB shadow management]] ==== `cib` @@ -2882,6 +2975,34 @@ above. ************************** +[[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. + +If no property name is passed to the command, the list of known +cluster properties is printed. + +If the property is set multiple times, for example using multiple +property sets with different rule expressions, the output of this +command is undefined. + +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: +............... +get-property [-t|--true] [<name>] +............... + +Example: +............... +get-property stonith-enabled +get-property -t maintenance-mode +............... + [[cmdhelp_configure_graph,generate a directed graph]] ==== `graph` @@ -3708,34 +3829,6 @@ show related:webapp ............... -[[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. - -If no property name is passed to the command, the list of known -cluster properties is printed. - -If the property is set multiple times, for example using multiple -property sets with different rule expressions, the output of this -command is undefined. - -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: -............... -get-property [-t|--true] [<name>] -............... - -Example: -............... -get-property stonith-enabled -get-property -t maintenance-mode -............... - [[cmdhelp_configure_tag,Define resource tags]] ==== `tag` @@ -3755,7 +3848,6 @@ tag ips server-vip admin-vip ............... - [[cmdhelp_configure_template,edit and import a configuration from a template]] ==== `template` @@ -4263,20 +4355,31 @@ To ensure this, these commands require that maintenance mode is set either for the particular resource, or for the whole cluster. -[[cmdhelp_maintenance_on,Enable maintenance mode]] -==== `on` +[[cmdhelp_maintenance_action,Invoke a resource action]] +==== `action` -Enables maintenances mode, either for the whole cluster -or for the given resource. +Invokes the given action for the resource. This is +done directly via the resource agent, so the command must +be issued while the cluster or the resource is in +maintenance mode. + +Unless the action is `start` or `monitor`, the action must be invoked +on the same node as where the resource is running. If the resource is +running on multiple nodes, the command will fail. + +To use SSH for executing resource actions on multiple nodes, append +`ssh` after the action name. This requires SSH access to be configured +between the nodes and the parallax python package to be installed. Usage: ............... -on -on <rsc> +action <rsc> <action> +action <rsc> <action> ssh ............... Example: ............... -on rsc1 +action webserver reload +action webserver monitor ssh ............... [[cmdhelp_maintenance_off,Disable maintenance mode]] @@ -4295,31 +4398,20 @@ off rsc1 ............... -[[cmdhelp_maintenance_action,Invoke a resource action]] -==== `action` - -Invokes the given action for the resource. This is -done directly via the resource agent, so the command must -be issued while the cluster or the resource is in -maintenance mode. - -Unless the action is `start` or `monitor`, the action must be invoked -on the same node as where the resource is running. If the resource is -running on multiple nodes, the command will fail. +[[cmdhelp_maintenance_on,Enable maintenance mode]] +==== `on` -To use SSH for executing resource actions on multiple nodes, append -`ssh` after the action name. This requires SSH access to be configured -between the nodes and the parallax python package to be installed. +Enables maintenances mode, either for the whole cluster +or for the given resource. Usage: ............... -action <rsc> <action> -action <rsc> <action> ssh +on +on <rsc> ............... Example: ............... -action webserver reload -action webserver monitor ssh +on rsc1 ............... [[cmdhelp_history,Cluster history]] @@ -4417,6 +4509,27 @@ diff pe-input-2080.bz2 live status ............... +[[cmdhelp_history_events,Show events in log]] +==== `events` + +By analysing the log output and looking for particular +patterns, the `events` command helps sifting through +the logs to find when particular events like resources +changing state or node failure may have occurred. + +This can be used to generate a combined list of events +from all nodes. + +Usage: +............... +events +............... + +Example: +............... +events +............... + [[cmdhelp_history_exclude,exclude log messages]] ==== `exclude` @@ -4553,27 +4666,6 @@ log node-a ............... -[[cmdhelp_history_events,Show events in log]] -==== `events` - -By analysing the log output and looking for particular -patterns, the `events` command helps sifting through -the logs to find when particular events like resources -changing state or node failure may have occurred. - -This can be used to generate a combined list of events -from all nodes. - -Usage: -............... -events -............... - -Example: -............... -events -............... - [[cmdhelp_history_node,node events]] ==== `node` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1470743271.64d1a40/doc/website-v1/news/2016-08-12-release-2_3_0.adoc new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/news/2016-08-12-release-2_3_0.adoc --- old/crmsh-2.2.0+git.1470743271.64d1a40/doc/website-v1/news/2016-08-12-release-2_3_0.adoc 1970-01-01 01:00:00.000000000 +0100 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/news/2016-08-12-release-2_3_0.adoc 2016-08-15 08:01:21.000000000 +0200 @@ -0,0 +1,76 @@ +Releasing crmsh version 2.3.0 +============================= +:Author: Kristoffer Gronlund +:Email: kgronl...@suse.com +:Date: 2016-08-12 10:30 + +Hello everyone! + +I am proud to present crmsh version 2.3.0, the latest stable +release. I would recommend all users to upgrade to 2.3.0 if they +can. + +For this release, I would like to begin by highlighting the new +contributors to crmsh since 2.2.0 was released in January: + +* Marc A. Smith added the new subcommand "configure load push", which + removes any configuration lines that aren't included in the cib + provided when pushing. + +* Andrei Maruha added an optional name parameter to the "corosync + add-node" command, and made the add-node command recycle old node + IDs if possible. + +* Kai Kang fixed a build system bug when removing generated docs, + causing issues with parallel make. + +* Daniel Hoffend contributed various fixes improving support for + building crmsh for Debian and Ubuntu. + +* Pedro Salgado fixed a bug in the graph rendering code in crmsh, + added a tox configuration file to make testing with multiple + versions of Python easy, and updated the Travis CI configuration to + use tox. + +* Nate Clark fixed a bug in the parser for fencing hierarchies. + +I would also like to thank all the other contributors, testers and +users who have helped in making this release as stable and reliable as +possible. + +Some of the other major features in 2.3.0 include: + +* Support for the new event-based alerts feature in Pacemaker 1.1.15 + +* Greatly improved timezone handling in crm report and the history + explorer + +* Improvements to the cluster scripts / wizards, as well as new + wizards for LVM on DRBD, and NFS on LVM and DRBD and VMware/vCenter + +* Better support for fencing remote nodes + +The source code can be downloaded from Github: + +* https://github.com/ClusterLabs/crmsh/releases/tag/2.3.0 + +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.3.0.tar.gz +* https://github.com/ClusterLabs/crmsh/archive/2.3.0.zip + +For the full list of changes since version 2.3.0, see the ChangeLog, +available at: + +* https://github.com/ClusterLabs/crmsh/blob/2.3.0/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.1470743271.64d1a40/doc/website-v1/news.adoc new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/news.adoc --- old/crmsh-2.2.0+git.1470743271.64d1a40/doc/website-v1/news.adoc 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/doc/website-v1/news.adoc 2016-08-15 08:01:21.000000000 +0200 @@ -1,14 +1,15 @@ = News -link:/news/2016-04-28-release-2_2_1[2016-04-28 01:00] +link:/news/2016-08-12-release-2_3_0[2016-08-12 10:30] :leveloffset: 1 -include::news/2016-04-28-release-2_2_1.adoc[] +include::news/2016-08-12-release-2_3_0.adoc[] :leveloffset: 0 '''' +* link:/news/2016-04-28-release-2_2_1[2016-04-28 01:00 crmsh 2.2.1 and 2.1.6 are released] * 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] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-2.2.0+git.1470743271.64d1a40/setup.py new/crmsh-2.3.0+git.1470991992.7deaa3a/setup.py --- old/crmsh-2.2.0+git.1470743271.64d1a40/setup.py 2016-08-09 13:54:54.000000000 +0200 +++ new/crmsh-2.3.0+git.1470991992.7deaa3a/setup.py 2016-08-15 08:01:21.000000000 +0200 @@ -4,7 +4,7 @@ from setuptools import setup setup(name='crmsh', - version='2.2.1', + version='2.3.0', description='Command-line interface for High-Availability cluster management', author='Kristoffer Gronlund', author_email='kgronl...@suse.com',