Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package crmsh for openSUSE:Factory checked in at 2022-06-23 10:24:16 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/crmsh (Old) and /work/SRC/openSUSE:Factory/.crmsh.new.1548 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "crmsh" Thu Jun 23 10:24:16 2022 rev:246 rq:984403 version:4.4.0+20220619.cc0a81a5 Changes: -------- --- /work/SRC/openSUSE:Factory/crmsh/crmsh.changes 2022-06-01 17:35:15.202782726 +0200 +++ /work/SRC/openSUSE:Factory/.crmsh.new.1548/crmsh.changes 2022-06-23 10:24:59.591787114 +0200 @@ -1,0 +2,19 @@ +Sun Jun 19 03:32:41 UTC 2022 - xli...@suse.com + +- Update to version 4.4.0+20220619.cc0a81a5: + * Dev: CI: Run delivery and submit stage only at ClusterLabs/crmsh repo + +------------------------------------------------------------------- +Tue Jun 14 03:32:25 UTC 2022 - xli...@suse.com + +- Update to version 4.4.0+20220614.f76fee26: + * Dev: doc: add help info for related: prefix for 'configure show' command + * Dev: cinconfig: enable "related:" prefix to show the objects by given ra type + +------------------------------------------------------------------- +Fri Jun 10 02:17:56 UTC 2022 - xli...@suse.com + +- Update to version 4.4.0+20220610.16cc8d68: + * Fix: crm report: use sudo when under non root and hacluster user (bsc#1199634) + +------------------------------------------------------------------- Old: ---- crmsh-4.4.0+20220601.b8c2952f.tar.bz2 New: ---- crmsh-4.4.0+20220619.cc0a81a5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ crmsh.spec ++++++ --- /var/tmp/diff_new_pack.shgKSa/_old 2022-06-23 10:25:00.067787631 +0200 +++ /var/tmp/diff_new_pack.shgKSa/_new 2022-06-23 10:25:00.079787644 +0200 @@ -36,7 +36,7 @@ Summary: High Availability cluster command-line interface License: GPL-2.0-or-later Group: %{pkg_group} -Version: 4.4.0+20220601.b8c2952f +Version: 4.4.0+20220619.cc0a81a5 Release: 0 URL: http://crmsh.github.io Source0: %{name}-%{version}.tar.bz2 ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.shgKSa/_old 2022-06-23 10:25:00.123787692 +0200 +++ /var/tmp/diff_new_pack.shgKSa/_new 2022-06-23 10:25:00.127787697 +0200 @@ -9,7 +9,7 @@ </service> <service name="tar_scm"> <param name="url">https://github.com/ClusterLabs/crmsh.git</param> - <param name="changesrevision">b8c2952f150185a722fcbbe3f69a9c917d0ed5f1</param> + <param name="changesrevision">89c52154626a931106a7967865f7d5d9793ea1bf</param> </service> </servicedata> (No newline at EOF) ++++++ crmsh-4.4.0+20220601.b8c2952f.tar.bz2 -> crmsh-4.4.0+20220619.cc0a81a5.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.4.0+20220601.b8c2952f/.github/workflows/crmsh-ci.yml new/crmsh-4.4.0+20220619.cc0a81a5/.github/workflows/crmsh-ci.yml --- old/crmsh-4.4.0+20220601.b8c2952f/.github/workflows/crmsh-ci.yml 2022-06-01 04:19:41.000000000 +0200 +++ new/crmsh-4.4.0+20220619.cc0a81a5/.github/workflows/crmsh-ci.yml 2022-06-19 05:16:07.000000000 +0200 @@ -202,7 +202,7 @@ steps: - uses: actions/checkout@v2 - name: delivery process - if: github.ref == 'refs/heads/master' && github.event_name == 'push' + if: github.repository == 'ClusterLabs/crmsh' && github.ref == 'refs/heads/master' && github.event_name == 'push' run: | docker pull shap/continuous_deliver:latest docker run -t -v "$(pwd):/package" \ @@ -221,7 +221,7 @@ steps: - uses: actions/checkout@v2 - name: submit process - if: github.ref == 'refs/heads/master' && github.event_name == 'push' + if: github.repository == 'ClusterLabs/crmsh' && github.ref == 'refs/heads/master' && github.event_name == 'push' run: | docker pull shap/continuous_deliver:latest docker run -t -v "$(pwd):/package" \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.4.0+20220601.b8c2952f/crmsh/cibconfig.py new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/cibconfig.py --- old/crmsh-4.4.0+20220601.b8c2952f/crmsh/cibconfig.py 2022-06-01 04:19:41.000000000 +0200 +++ new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/cibconfig.py 2022-06-19 05:16:07.000000000 +0200 @@ -3135,6 +3135,31 @@ return [x for x in self.cib_objects if x.updated or x.origin == "user"] + def get_elems_on_ra_type(self, spec): + """ + Get elements by given ra class:provider:type or class:type or only type + return [] if no results + """ + content_list = spec.split(':')[1:] + if len(content_list) > 3: + return [] + if len(content_list) == 3: + cls, provider, tp = content_list + return [x for x in self.cib_objects + if x.node.get("type") == tp + and x.node.get("provider") == provider + and x.node.get("class") == cls] + if len(content_list) == 2: + cls, tp = content_list + return [x for x in self.cib_objects + if x.node.get("type") == tp + and x.node.get("class") == cls] + if len(content_list) == 1: + tp = content_list[0] + if not tp: + return [] + return [x for x in self.cib_objects if x.node.get("type") == tp] + def get_elems_on_type(self, spec): if not spec.startswith("type:"): return [] @@ -3198,6 +3223,7 @@ obj = self.find_object(name) if obj is not None: obj_set |= orderedset.oset(self.related_elements(obj)) + obj_set |= orderedset.oset(self.get_elems_on_ra_type(spec)) else: objs = self.find_objects(spec) or [] for obj in objs: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.4.0+20220601.b8c2952f/crmsh/report/constants.py new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/report/constants.py --- old/crmsh-4.4.0+20220601.b8c2952f/crmsh/report/constants.py 2022-06-01 04:19:41.000000000 +0200 +++ new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/report/constants.py 2022-06-19 05:16:07.000000000 +0200 @@ -4,6 +4,7 @@ import socket from crmsh import config +BIN_CRM = "/usr/sbin/crm" ARGOPTS_VALUE = "f:t:l:u:X:p:L:e:E:n:MSDZVsvhdQ" B_CONF = None CIB_DIR = None diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.4.0+20220601.b8c2952f/crmsh/report/core.py new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/report/core.py --- old/crmsh-4.4.0+20220601.b8c2952f/crmsh/report/core.py 2022-06-01 04:19:41.000000000 +0200 +++ new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/report/core.py 2022-06-19 05:16:07.000000000 +0200 @@ -269,8 +269,8 @@ if constants.SSH_USER: constants.SSH_OPTS += " -o User=%s" % constants.SSH_USER # assume that only root can collect data - if ((not constants.SSH_USER) and (os.getuid() != 0)) or \ - constants.SSH_USER and constants.SSH_USER != "root": + if ((not constants.SSH_USER) and (os.getuid() not in [0, 90])) or \ + constants.SSH_USER and constants.SSH_USER not in ["root", "hacluster"]: logger.debug("ssh user other than root, use sudo") constants.SUDO = "sudo -u root" if os.getuid() != 0: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.4.0+20220601.b8c2952f/crmsh/report/utillib.py new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/report/utillib.py --- old/crmsh-4.4.0+20220601.b8c2952f/crmsh/report/utillib.py 2022-06-01 04:19:41.000000000 +0200 +++ new/crmsh-4.4.0+20220619.cc0a81a5/crmsh/report/utillib.py 2022-06-19 05:16:07.000000000 +0200 @@ -148,6 +148,11 @@ def base_check(): if not which("which"): log_fatal("please install the which(1) program") + if not os.path.exists(constants.BIN_CRM): + if os.path.exists("/usr/bin/crm"): + constants.BIN_CRM = "/usr/bin/crm" + else: + log_fatal("Cannot find crm command!") def booth_info(): @@ -581,12 +586,10 @@ res = get_stamp_syslog(line) if res: func = "syslog" - logger.debug("the log file is in the syslog format") return func res = get_stamp_rfc5424(line) if res: func = "rfc5424" - logger.debug("the log file is in the rfc5424 format") return func res = get_stamp_legacy(line) if res: @@ -1358,13 +1361,13 @@ def start_slave_collector(node, arg_str): + cmd = "{} report __slave".format(constants.BIN_CRM) if node == constants.WE: - cmd = r"crm report __slave".format(os.getcwd()) for item in arg_str.split(): cmd += " {}".format(str(item)) _, out = crmutils.get_stdout(cmd) else: - cmd = r'ssh {} {} "crm report __slave"'.format(constants.SSH_OPTS, node, os.getcwd()) + cmd = r'ssh {} {} "{} {}"'.format(constants.SSH_OPTS, node, constants.SUDO, cmd) for item in arg_str.split(): cmd += " {}".format(str(item)) code, out, err = crmutils.get_stdout_stderr(cmd) @@ -1377,6 +1380,8 @@ if code != 0: logger.warning(err) break + if err: + print(err) compress_data = "" for data in out.split('\n'): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/crmsh-4.4.0+20220601.b8c2952f/doc/crm.8.adoc new/crmsh-4.4.0+20220619.cc0a81a5/doc/crm.8.adoc --- old/crmsh-4.4.0+20220601.b8c2952f/doc/crm.8.adoc 2022-06-01 04:19:41.000000000 +0200 +++ new/crmsh-4.4.0+20220619.cc0a81a5/doc/crm.8.adoc 2022-06-19 05:16:07.000000000 +0200 @@ -3853,7 +3853,8 @@ To show all objects in a tag, use the +tag:+ prefix. -To show all constraints related to a primitive, use the +related:+ prefix. +To show all constraints related to a primitive, or +to show all objects of a certain RA type, use the +related:+ prefix. To show all modified objects, pass the argument +changed+. @@ -3915,6 +3916,8 @@ show type:primitive show xml tag:db tag:fs show related:webapp +show related:IPaddr2 +show related:ocf:heartbeat:Dummy show type:primitive obscure:passwd ...............