https://bugzilla.redhat.com/show_bug.cgi?id=1343661 --- Comment #15 from Jan Pokorný <jpokorny@xxxxxxxxxx> --- More pleasant to read, bugzilla friendly version (s/rhbz#\([0-9]*\)/[bug \1]/g): Bug fixes ========= ! ccs2pcs* conversion now properly propagates or adds monitor action [resolves: [bug 1272570]] . ccs2pcs* conversion now (suitably) aborts when it reaches exclusive resource group [related: [bug 1206640] ([bug 1272191])] . ccs2pcs* conversion now does not take undeployed (contained in <resources> and not referenced elsewhere) into account and is more careful about carrying about parent service group auxiliary reference for further processing [related/resolves: [bug 1272592]] ! pcs2pcscmd{,-needle} now propagates cluster name correctly, previously it was mistakenly dropped resulting in confusing first cluster node for that (e.g., pcs cluster setup --start --name node1 node2 node3) . ccs2pcs* conversion now propagates two_node (and internally also expected_votes) properties of cman as defined in cluster.conf correctly . help screens/manual pages for *2pcs* commands now documents "cib" arguments correctly . pcs2pcscmd* conversion now correctly includes cmd-wrap filter resulting in the output line-wrapped per expectation . "assisted recovery" now works on systems without /dev/tty as well as on systems for which open-modify[open+close] (final close yet to come) of particular file won't reliably discover mtime change; now strict open-close-modify is used instead (and mtime check in a was-file-changed test is preceded with a file size comparison for good measure), making intermittent failures in test runs disappear . clufter is now capable of handling command options as unicode (relates to the usage as a library, original discovery thanks to pcs) and "the magic interpolation" of the command inputs now works at places where it was supposed to but unfortunately did not ! ccs2pcs* commands no longer generate accidentally broken values of attributes marked as having an ID type in the schema [resolves: [bug 1300050]] . ccs2pcs* commands now translate notion of recovery/relocate recover policy of the resource group as supported by RGManager into the parallel expression in Pacemaker universe; the same applies to __independent_subtree=2 at the resource level and empty restricted failover domain (that is referred to from existing resource group) . ccs2pcs* commands now propagate stop timeout of the vm original resource agent . *2pcscmd* commands now support group meta attributes properly . *2pcscmd* commands no longer emit bogus properties of the operations (id, name, interval) as these are position-fixed values in the respective pcs syntax, hence not requiring explicit key=value treatment E with {cib,pcs}2pcscmd* commands, clufter no longer chokes on validation failures (unless --nocheck provided) due to source CIB file using newer "validate-with" validation version specification than the only supported so far (pacemaker-1.2.rng) or possibly using a syntax not compatible with that; now also 2.0, 2.3, 2.4, and 2.5 versions are supported [resolves: [bug 1300014]] . with {cib,pcs}2pcscmd* commands, clufter no longer chokes on validation failures (unless --nocheck provided) due to source CIB not containing "status" section (which is normally the case with implicit input located in /var/lib/pacemaker/cib/cib.xml); now the bundled, compacted schemas mark this section optional and also the recipe to distill such format from pacemaker native schemas ensures the same assumption holds even if not pre-existed [resolves: [bug 1269964], comment 9] [see also: https://github.com/ClusterLabs/pacemaker/pull/957] . internal representations of command + options/arguments was fixed in several ways so as to provide correct outcomes in both general (previously, some options could be duplicated while overwriting other options/arguments, and standalone negative numbers were considered options) and pcs (--wait=X cannot be decoupled the same way option parsers can usually cope with, as pcs built-in parser treats this specifically) cases ! with *2pcscmd* commands, clufter no longer suggests "pcs cluster cib <file> --config" that doesn't currently work for subsequent local-modification pcs commands (which is the purpose together with sequence-crowning cib-push in this context), so rather use mere "pcs cluster cib <file>" [resolves: [bug 1328078]] . with [cp]cs2pcscmd commands, clufter no longer suggests "pcs cluster start --all --wait=-1" as part of the emitted command sequence (last option decides, through a failure, whether pcs accepts a numeric argument there, which would then make the rest of sequence use this recent, more elegant provision of pcs instead of "sleep") without suppressing both standard and error outputs so as to prevent unnecessary clutter with newer, compatible versions of pcs . with *2pcscmd* commands, clufter would previously emit doubled "pcs" at the beginning for the command defining simple order constraint . with *2pcscmd* commands, clufter would previously omit and/or logic operators between each pair of atomic expressions forming a rule for location constraint . with *2pcscmd* commands, clufter would previously disregard master/slave roles correctly encoded with a capitalized first letter in CIB for colocation and location constraints . {ccs,pcs}2pcscmd* would previously exceed a recursion limit due to not catching the bottom of the recursion properly . {ccs,pcs}2pcscmd* commands would previously emit an incorrectly quoted command (in the self-check the following sequence of commands is indeed being run on the to-be-clustered machine) unless -g or --noguidance option was used; in turn the respective internals received a considerable overhaul to be able to cope with nested commands (command/process substitution) better; for users of previous releases, the remedy is to use this -g switch or to pass --noop=cmd-wrap to suppress the faulty filter from the pipeline (at the expense of not-so-easy-to-consume output) New features ============ . [cp]cs2pcscmd* commands now supports "--wait" parameter to pcs command for starting the cluster and prefers it to static "sleep" when possible (pcs version recent enough) [see also: [bug 1229822]] . ccs2pcs* conversion is now more careful when translating corosync logging subsystems (e.g., CONFDB -> CMAP) . *2pcscmd* conversion now handles clone/master resources; likewise, node properties, utilization (per node or resource) and {op,rsc}_defaults are now covered when converting CIB content into sequence of pcs commands [resolves/related: [bug 1270740]] . with *2pcscmd* commands, clufter now supports resource sets for colocation and order constraints . with *2pcscmd* commands, clufter now supports ticket contraints . pcs2pcscmd* commands are now aware of quorum device configured in corosync.conf and are able to emit respective configuration commands using pcs tool . {cib,pcs}2pcscmd* commands are now aware of configured alert handlers in CIB and able to emit respective configuration commands using pcs tool New behavior ============ . as pcs currently does not support templates [[bug 1281359]], a new filter, cib-meld, is included in *2pcscmd conversion and its purpose is to mimic Pacemaker internal desugaring where suitable . cmd-wrap and (new) cib-revitalize (translating deprecated cluster properties into preferred notation for now) filters are directly exposed as commands with an assumption they are useful on their own E clufter now relies on the specified distribution target (which basically boils down to snapshot of the supported features, as opposed to passing zillion extra parameters expressing the same) stronger than ever; this has several implications: do not expect that one sequence of pcs commands at the clufter's output is portable to completely different environment, and your distribution/setup may not be supported E there is now --list-dists option to clufter that is intended mainly to suggest as to which --dist option values (note this has an increased importance as mentioned) are supported . *2pcscmd commands now first emit a comment block containing key pieces of information about the run, such as a current date, library version, the overall command that was executed, and importantly (more and more), the target system specification (this utilizes a new, dedicated cmd-annotate filter) User friendliness ================= . (suppresible) progress info/notes/warnings output was further unified and color is used more widely to distinguish semantic meaning if possible . user-assisted validation failure recovery was made preoccupied users friendly (bail out when the launched editor is closed without a change two times in row) as opposed to neverending loop preventing possibly baffled user to leave gracefully; also one more hint is given in the help section of the edited document facilitating the recovery . help screens and man pages for *2pcscmd* commands now warn againts using --tmp-cib '' (empty string) as it means resorting to shot-by-shot semantics, as opposed to accumulate-and-push (desirable), and this can lead to unexpected inconsistencies . *2pcscmd commands will now colorize the output (very plain support, more to be expected) if either a terminal is used as a sink (and colors not explicitly forbidden) or if this is enforced; so far only shell comments and some parts of pcs syntax are supported, but even in this form, it should help users to wrap their heads (eyes) around what can be considered quite a complex output from the first sight E when *2pcscmd or cmd-wrap commands colorize the output, "meta" words for the shell are distinguished as well -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ package-review mailing list package-review@xxxxxxxxxxxxxxxxxxxxxxx https://lists.fedoraproject.org/admin/lists/package-review@xxxxxxxxxxxxxxxxxxxxxxx