Hide Forgot
Description of problem: Flag --clone in command "pcs resource create" does not act consistently in more ways. > 1) Flag --clone steals options of the "meta" keyword when "--clone" precedes "meta". How reproducible: always Steps to Reproduce: [vm-rhel72-1 ~] $ pcs resource create R ocf:heartbeat:Dummy --clone c=d meta a=b [vm-rhel72-1 ~] $ pcs cluster cib Actual results: ... <clone id="R-clone"> <primitive class="ocf" id="R" provider="heartbeat" type="Dummy"> <instance_attributes id="R-instance_attributes"/> <operations> <op id="R-start-interval-0s" interval="0s" name="start" timeout="20"/> <op id="R-stop-interval-0s" interval="0s" name="stop" timeout="20"/> <op id="R-monitor-interval-10" interval="10" name="monitor" timeout="20"/> </operations> </primitive> <meta_attributes id="R-clone-meta_attributes"> <nvpair id="R-clone-meta_attributes-a" name="a" value="b"/> <nvpair id="R-clone-meta_attributes-c" name="c" value="d"/> </meta_attributes> </clone> ... Note attribute named "a" is in clone. Expected results: ... <clone id="R-clone"> <primitive class="ocf" id="R" provider="heartbeat" type="Dummy"> <instance_attributes id="R-instance_attributes"/> <meta_attributes id="R-meta_attributes"> <nvpair id="R-meta_attributes-a" name="a" value="b"/> </meta_attributes> <operations> <op id="R-start-interval-0s" interval="0s" name="start" timeout="20"/> <op id="R-stop-interval-0s" interval="0s" name="stop" timeout="20"/> <op id="R-monitor-interval-10" interval="10" name="monitor" timeout="20"/> </operations> </primitive> <meta_attributes id="R-clone-meta_attributes"> <nvpair id="R-clone-meta_attributes-c" name="c" value="d"/> </meta_attributes> </clone> ... Note attribute named "a" is in primitive. > 2) Flag --clone steals options of the "op" keyword when "--clone" precedes "op". How reproducible: always Steps to Reproduce: [vm-rhel72-1 ~] $ pcs resource create R ocf:heartbeat:Dummy --clone c=d op monitor interval=10 Actual results: Error: When using 'op' you must specify an operation name and at least one option Expected results: Create resource with operation monitor.
Created attachment 1246713 [details] proposed fix Tests are in the patch.
After Fix: [vm-rhel72-1 ~] $ rpm -q pcs pcs-0.9.156-1.el7.x86_64 > 1) Flag --clone does not steal options of the "meta" keyword when "--clone" precedes "meta". [vm-rhel72-1 ~] $ pcs resource create R ocf:heartbeat:Dummy --clone c=d meta a=b [vm-rhel72-1 ~] $ pcs cluster cib|grep '\(id="R-meta_attributes"\|id="R-clone-meta_attributes"\)' -A 2 <meta_attributes id="R-meta_attributes"> <nvpair id="R-meta_attributes-a" name="a" value="b"/> </meta_attributes> -- <meta_attributes id="R-clone-meta_attributes"> <nvpair id="R-clone-meta_attributes-c" name="c" value="d"/> </meta_attributes> > 2) Flag --clone does not steal options of the "op" keyword when "--clone" precedes "op". [vm-rhel72-1 ~] $ pcs resource create R ocf:heartbeat:Dummy --clone c=d op monitor interval=10 [vm-rhel72-1 ~] $ pcs cluster cib|grep R-monitor-interval-10 <op id="R-monitor-interval-10" interval="10" name="monitor"/>
*** Bug 1449360 has been marked as a duplicate of this bug. ***
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2017:1958