Hello community, here is the log from the commit of package crmsh for openSUSE:Factory checked in at 2017-05-06 18:30:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/crmsh (Old) and /work/SRC/openSUSE:Factory/.crmsh.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "crmsh" Sat May 6 18:30:07 2017 rev:121 rq:492677 version:3.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/crmsh/crmsh.changes 2017-04-29 10:53:11.747012485 +0200 +++ /work/SRC/openSUSE:Factory/.crmsh.new/crmsh.changes 2017-05-06 18:30:20.153432682 +0200 @@ -1,0 +2,12 @@ +Wed May 3 14:39:07 UTC 2017 - kgronlund@suse.com + +- doc: geo-join requires --clusters argument (bsc#1037442) + * Add 0012-doc-geo-join-requires-clusters-argument-bsc-1037442.patch +- medium: bootstrap: Check required arguments to geo-join (bsc#1037421) + * Add 0011-medium-bootstrap-Check-required-arguments-to-geo-joi.patch +- medium: bootstrap: Handle failure to fetch config gracefully (bsc#1037423) + * Add 0010-medium-bootstrap-Handle-failure-to-fetch-config-grac.patch +- medium: bootstrap: Enable "help geo-init" etc. (bsc#1037417) + * Add 0009-medium-bootstrap-Enable-help-geo-init-etc.-bsc-10374.patch + +------------------------------------------------------------------- New: ---- 0009-medium-bootstrap-Enable-help-geo-init-etc.-bsc-10374.patch 0010-medium-bootstrap-Handle-failure-to-fetch-config-grac.patch 0011-medium-bootstrap-Check-required-arguments-to-geo-joi.patch 0012-doc-geo-join-requires-clusters-argument-bsc-1037442.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ crmsh.spec ++++++ --- /var/tmp/diff_new_pack.Cmb00H/_old 2017-05-06 18:30:22.013170263 +0200 +++ /var/tmp/diff_new_pack.Cmb00H/_new 2017-05-06 18:30:22.017169699 +0200 @@ -58,6 +58,14 @@ Patch7: 0007-medium-bootstrap-Set-expected_votes-based-on-actual-.patch # PATCH-FIX-UPSTREAM: high: cibconfig: Graph file output option was reversed (bsc#1036595) Patch8: 0008-high-cibconfig-Graph-file-output-option-was-reversed.patch +# PATCH-FIX-UPSTREAM: medium: bootstrap: Enable "help geo-init" etc. (bsc#1037417) +Patch9: 0009-medium-bootstrap-Enable-help-geo-init-etc.-bsc-10374.patch +# PATCH-FIX-UPSTREAM: medium: bootstrap: Handle failure to fetch config gracefully (bsc#1037423) +Patch10: 0010-medium-bootstrap-Handle-failure-to-fetch-config-grac.patch +# PATCH-FIX-UPSTREAM: medium: bootstrap: Check required arguments to geo-join (bsc#1037421) +Patch11: 0011-medium-bootstrap-Check-required-arguments-to-geo-joi.patch +# PATCH-FIX-UPSTREAM: doc: geo-join requires --clusters argument (bsc#1037442) +Patch12: 0012-doc-geo-join-requires-clusters-argument-bsc-1037442.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %if 0%{?suse_version} @@ -168,6 +176,10 @@ %patch6 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 +%patch10 -p1 +%patch11 -p1 +%patch12 -p1 # Force the local time # ++++++ 0009-medium-bootstrap-Enable-help-geo-init-etc.-bsc-10374.patch ++++++
From 978ecd9069dc42bed7db082a18fd0e1f5f1a059d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?=
Date: Wed, 3 May 2017 16:10:54 +0200 Subject: [PATCH 09/12] medium: bootstrap: Enable "help geo-init" etc. (bsc#1037417)
--- crmsh/ui_cluster.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/crmsh/ui_cluster.py b/crmsh/ui_cluster.py index 6b143c35..8f58a97e 100644 --- a/crmsh/ui_cluster.py +++ b/crmsh/ui_cluster.py @@ -311,7 +311,8 @@ If stage is not specified, each stage will be invoked in sequence. except ValueError: return None - @command.name("geo-init") + @command.name("geo_init") + @command.alias("geo-init") @command.skill_level('administrator') def do_geo_init(self, context, *args): ''' @@ -365,7 +366,8 @@ Cluster Description bootstrap.bootstrap_init_geo(options.quiet, options.yes_to_all, options.arbitrator, clustermap, ticketlist) return True - @command.name("geo-join") + @command.name("geo_join") + @command.alias("geo-join") @command.skill_level('administrator') def do_geo_join(self, context, *args): ''' @@ -383,7 +385,8 @@ Cluster Description bootstrap.bootstrap_join_geo(options.quiet, options.yes_to_all, options.node, clustermap) return True - @command.name("geo-init-arbitrator") + @command.name("geo_init_arbitrator") + @command.alias("geo-init-arbitrator") @command.skill_level('administrator') def do_geo_init_arbitrator(self, context, *args): ''' -- 2.12.2 ++++++ 0010-medium-bootstrap-Handle-failure-to-fetch-config-grac.patch ++++++
From 0e3644538d7c3a9ccc77e68ffe3281ac06ba4c24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?=
Date: Wed, 3 May 2017 16:17:32 +0200 Subject: [PATCH 10/12] medium: bootstrap: Handle failure to fetch config gracefully (bsc#1037423)
--- crmsh/bootstrap.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/crmsh/bootstrap.py b/crmsh/bootstrap.py index 8f914aea..16772244 100644 --- a/crmsh/bootstrap.py +++ b/crmsh/bootstrap.py @@ -1694,12 +1694,15 @@ def geo_fetch_config(node): status("Retrieving configuration - This may prompt for root@%s:" % (node)) tmpdir = tmpfiles.create_dir() invoke("scp root@%s:'/etc/booth/*' %s/" % (node, tmpdir)) - if os.path.isfile("%s/authkey" % (tmpdir)): - invoke("mv %s/authkey %s" % (tmpdir, BOOTH_AUTH)) - if os.path.isfile("%s/booth.conf" % (tmpdir)): - invoke("mv %s/booth.conf %s" % (tmpdir, BOOTH_CFG)) - os.chmod(BOOTH_AUTH, 0o600) - os.chmod(BOOTH_CFG, 0o644) + try: + if os.path.isfile("%s/authkey" % (tmpdir)): + invoke("mv %s/authkey %s" % (tmpdir, BOOTH_AUTH)) + os.chmod(BOOTH_AUTH, 0o600) + if os.path.isfile("%s/booth.conf" % (tmpdir)): + invoke("mv %s/booth.conf %s" % (tmpdir, BOOTH_CFG)) + os.chmod(BOOTH_CFG, 0o644) + except OSError as err: + raise ValueError("Problem encountered with booth configuration from {}: {}".format(node, err)) def geo_cib_config(clusters): -- 2.12.2 ++++++ 0011-medium-bootstrap-Check-required-arguments-to-geo-joi.patch ++++++
From b646485281a1d02c64e054723635f85b3d7f02bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?=
Date: Wed, 3 May 2017 16:24:14 +0200 Subject: [PATCH 11/12] medium: bootstrap: Check required arguments to geo-join (bsc#1037421)
--- crmsh/ui_cluster.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/crmsh/ui_cluster.py b/crmsh/ui_cluster.py index 8f58a97e..8730aa41 100644 --- a/crmsh/ui_cluster.py +++ b/crmsh/ui_cluster.py @@ -306,8 +306,17 @@ If stage is not specified, each stage will be invoked in sequence. return True def _parse_clustermap(self, clusters): + ''' + Helper function to parse the cluster map into a dictionary: + + name=ip; name2=ip2 -> { name: ip, name2: ip2 } + ''' + if clusters is None: + return None try: return dict([re.split('[=:]+', o) for o in re.split('[ ,;]+', clusters)]) + except TypeError: + return None except ValueError: return None @@ -379,6 +388,13 @@ Cluster Description parser.add_option("-c", "--cluster-node", help="IP address of an already-configured geo cluster or arbitrator", dest="node", metavar="IP") parser.add_option("--clusters", help="Cluster description (see geo-init for details)", dest="clusters", metavar="DESC") options, args = parser.parse_args(list(args)) + errs = [] + if options.node is None: + errs.append("The --cluster-node argument is required.") + if options.clusters is None: + errs.append("The --clusters argument is required.") + if len(errs) > 0: + parser.error(" ".join(errs)) clustermap = self._parse_clustermap(options.clusters) if clustermap is None: parser.error("Invalid cluster description format") -- 2.12.2 ++++++ 0012-doc-geo-join-requires-clusters-argument-bsc-1037442.patch ++++++
From cdbb6ebd860b9665d39cdc7611857d9253740632 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?=
Date: Wed, 3 May 2017 16:35:43 +0200 Subject: [PATCH 12/12] doc: geo-join requires --clusters argument (bsc#1037442)
--- doc/crm.8.adoc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/crm.8.adoc b/doc/crm.8.adoc index b22950d3..e1218339 100644 --- a/doc/crm.8.adoc +++ b/doc/crm.8.adoc @@ -1063,12 +1063,15 @@ an existing cluster. Options: +*--clusters=DESC*:: + Cluster description (see +geo-init+ for details) + *-c IP, --cluster-node=IP*:: IP address of an already-configured geo cluster or arbitrator Usage: ............... -geo-join [options] +geo-join --cluster-node <node> --clusters <description> ............... -- 2.12.2