summaryrefslogtreecommitdiffstats
path: root/cts/cli
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--cts/cli/crm_verify_invalid_bz.xml72
-rw-r--r--cts/cli/crm_verify_invalid_no_stonith.xml12
-rw-r--r--cts/cli/regression.daemons.exp10
-rw-r--r--cts/cli/regression.error_codes.exp12
-rw-r--r--cts/cli/regression.rules.exp12
-rw-r--r--cts/cli/regression.tools.exp348
6 files changed, 338 insertions, 128 deletions
diff --git a/cts/cli/crm_verify_invalid_bz.xml b/cts/cli/crm_verify_invalid_bz.xml
new file mode 100644
index 0000000..b92e563
--- /dev/null
+++ b/cts/cli/crm_verify_invalid_bz.xml
@@ -0,0 +1,72 @@
+<cib crm_feature_set="3.17.4" validate-with="pacemaker-3.9" epoch="8" num_updates="0" admin_epoch="0" cib-last-written="Wed Sep 13 09:55:12 2023" update-origin="pcmk-2" update-client="cibadmin" update-user="root" have-quorum="1" dc-uuid="1">
+ <configuration>
+ <crm_config>
+ <cluster_property_set id="cib-bootstrap-options">
+ <nvpair id="cib-bootstrap-options-have-watchdog" name="have-watchdog" value="false"/>
+ <nvpair id="cib-bootstrap-options-dc-version" name="dc-version" value="2.1.6-2.el8-6fdc9deea29"/>
+ <nvpair id="cib-bootstrap-options-cluster-infrastructure" name="cluster-infrastructure" value="corosync"/>
+ <nvpair id="cib-bootstrap-options-cluster-name" name="cluster-name" value="mycluster"/>
+ <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="false"/>
+ </cluster_property_set>
+ </crm_config>
+ <nodes>
+ <node id="1" uname="pcmk-1"/>
+ <node id="2" uname="pcmk-2"/>
+ </nodes>
+ <resources>
+ <primitive class="systemd" id="test1" type="chronyd">
+ <operations>
+ <op id="test1-monitor-interval-60" interval="60" name="monitor" timeout="100"/>
+ <op id="test1-start-interval-0s" interval="0s" name="start" timeout="100"/>
+ <op id="test1-stop-interval-0s" interval="0s" name="stop" timeout="100"/>
+ </operations>
+ </primitive>
+ <clone id="test2-clone">
+ <primitive class="systemd" id="test2" type="chronyd">
+ <operations>
+ <op id="test2-monitor-interval-60" interval="60" name="monitor" timeout="100"/>
+ <op id="test2-start-interval-0s" interval="0s" name="start" timeout="100"/>
+ <op id="test2-stop-interval-0s" interval="0s" name="stop" timeout="100"/>
+ </operations>
+ </primitive>
+ <meta_attributes id="test2-clone-meta_attributes">
+ <nvpair id="test2-clone-meta_attributes-promotable" name="promotable" value="true"/>
+ </meta_attributes>
+ </clone>
+ </resources>
+ <constraints/>
+ </configuration>
+ <status>
+ <node_state id="2" uname="pcmk-2" in_ccm="true" crmd="online" crm-debug-origin="controld_update_resource_history" join="member" expected="member">
+ <transient_attributes id="2">
+ <instance_attributes id="status-2">
+ <nvpair id="status-2-.feature-set" name="#feature-set" value="3.17.4"/>
+ </instance_attributes>
+ </transient_attributes>
+ <lrm id="2">
+ <lrm_resources>
+ <lrm_resource id="test1" class="systemd" type="chronyd">
+ <lrm_rsc_op id="test1_last_0" operation_key="test1_start_0" operation="start" crm-debug-origin="controld_update_resource_history" crm_feature_set="3.17.4" transition-key="4:113:0:63958060-000d-4101-9f9f-104f70588675" transition-magic="0:0;4:113:0:63958060-000d-4101-9f9f-104f70588675" exit-reason="" on_node="pcmk-2" call-id="9" rc-code="0" op-status="0" interval="0" last-rc-change="1694613091" exec-time="2115" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
+ <lrm_rsc_op id="test1_last_failure_0" operation_key="test1_monitor_0" operation="monitor" crm-debug-origin="controld_update_resource_history" crm_feature_set="3.17.4" transition-key="2:4:7:63958060-000d-4101-9f9f-104f70588675" transition-magic="0:0;2:4:7:63958060-000d-4101-9f9f-104f70588675" exit-reason="" on_node="pcmk-2" call-id="5" rc-code="0" op-status="0" interval="0" last-rc-change="1694009809" exec-time="3" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
+ <lrm_rsc_op id="test1_monitor_60000" operation_key="test1_monitor_60000" operation="monitor" crm-debug-origin="controld_update_resource_history" crm_feature_set="3.17.4" transition-key="1:113:0:63958060-000d-4101-9f9f-104f70588675" transition-magic="0:0;1:113:0:63958060-000d-4101-9f9f-104f70588675" exit-reason="" on_node="pcmk-2" call-id="10" rc-code="0" op-status="0" interval="60000" last-rc-change="1694613091" exec-time="1" queue-time="0" op-digest="2d296eeac3e5f7d1cfdb1557b8eb3457"/>
+ </lrm_resource>
+ </lrm_resources>
+ </lrm>
+ </node_state>
+ <node_state id="1" uname="pcmk-1" in_ccm="true" crmd="online" crm-debug-origin="controld_update_resource_history" join="member" expected="member">
+ <lrm id="1">
+ <lrm_resources>
+ <lrm_resource id="test1" class="systemd" type="chronyd">
+ <lrm_rsc_op id="test1_last_0" operation_key="test1_stop_0" operation="stop" crm-debug-origin="controld_update_resource_history" crm_feature_set="3.17.4" transition-key="3:113:0:63958060-000d-4101-9f9f-104f70588675" transition-magic="0:0;3:113:0:63958060-000d-4101-9f9f-104f70588675" exit-reason="" on_node="pcmk-1" call-id="6" rc-code="0" op-status="0" interval="0" last-rc-change="1694613089" exec-time="2007" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
+ <lrm_rsc_op id="test1_last_failure_0" operation_key="test1_monitor_0" operation="monitor" crm-debug-origin="controld_update_resource_history" crm_feature_set="3.17.4" transition-key="1:4:7:63958060-000d-4101-9f9f-104f70588675" transition-magic="0:0;1:4:7:63958060-000d-4101-9f9f-104f70588675" exit-reason="" on_node="pcmk-1" call-id="5" rc-code="0" op-status="0" interval="0" last-rc-change="1694009809" exec-time="3" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
+ </lrm_resource>
+ </lrm_resources>
+ </lrm>
+ <transient_attributes id="1">
+ <instance_attributes id="status-1">
+ <nvpair id="status-1-.feature-set" name="#feature-set" value="3.17.4"/>
+ </instance_attributes>
+ </transient_attributes>
+ </node_state>
+ </status>
+</cib> \ No newline at end of file
diff --git a/cts/cli/crm_verify_invalid_no_stonith.xml b/cts/cli/crm_verify_invalid_no_stonith.xml
new file mode 100644
index 0000000..ce1b3a5
--- /dev/null
+++ b/cts/cli/crm_verify_invalid_no_stonith.xml
@@ -0,0 +1,12 @@
+<cib crm_feature_set="3.17.4" validate-with="pacemaker-3.9" epoch="1" num_updates="0" admin_epoch="0" cib-last-written="Wed Sep 6 09:27:13 2023" update-origin="pcmk-2" update-client="crmd" update-user="hacluster">
+ <configuration>
+ <crm_config/>
+ <nodes>
+ <node id="1" uname="pcmk-1"/>
+ <node id="2" uname="pcmk-2"/>
+ </nodes>
+ <resources/>
+ <constraints/>
+ </configuration>
+ <status/>
+</cib> \ No newline at end of file
diff --git a/cts/cli/regression.daemons.exp b/cts/cli/regression.daemons.exp
index 66bd7b3..b34fba8 100644
--- a/cts/cli/regression.daemons.exp
+++ b/cts/cli/regression.daemons.exp
@@ -122,6 +122,11 @@
<shortdesc lang="en">Do not lock resources to a cleanly shut down node longer than this</shortdesc>
<content type="time" default=""/>
</parameter>
+ <parameter name="node-pending-timeout">
+ <longdesc lang="en">Fence nodes that do not join the controller process group within this much time after joining the cluster, to allow the cluster to continue managing resources. A value of 0 means never fence pending nodes. Setting the value to 2h means fence nodes after 2 hours.</longdesc>
+ <shortdesc lang="en">How long to wait for a node that has joined the cluster to join the controller process group</shortdesc>
+ <content type="time" default=""/>
+ </parameter>
</parameters>
</resource-agent>
=#=#=#= End test: Get controller metadata - OK (0) =#=#=#=
@@ -349,6 +354,11 @@
<shortdesc lang="en">Apply fencing delay targeting the lost nodes with the highest total resource priority</shortdesc>
<content type="time" default=""/>
</parameter>
+ <parameter name="node-pending-timeout">
+ <longdesc lang="en">Fence nodes that do not join the controller process group within this much time after joining the cluster, to allow the cluster to continue managing resources. A value of 0 means never fence pending nodes. Setting the value to 2h means fence nodes after 2 hours.</longdesc>
+ <shortdesc lang="en">How long to wait for a node that has joined the cluster to join the controller process group</shortdesc>
+ <content type="time" default=""/>
+ </parameter>
<parameter name="cluster-delay">
<longdesc lang="en">The node elected Designated Controller (DC) will consider an action failed if it does not get a response from the node executing the action within this time (after considering the action&apos;s own timeout). The &quot;correct&quot; value will depend on the speed and load of your network and cluster nodes.</longdesc>
<shortdesc lang="en">Maximum time for node-to-node communication</shortdesc>
diff --git a/cts/cli/regression.error_codes.exp b/cts/cli/regression.error_codes.exp
index 6c6f4e1..7d705e2 100644
--- a/cts/cli/regression.error_codes.exp
+++ b/cts/cli/regression.error_codes.exp
@@ -145,6 +145,9 @@ pcmk_rc_node_unknown - Node not found
=#=#=#= End test: Get negative Pacemaker return code (with name) (XML) - OK (0) =#=#=#=
* Passed: crm_error - Get negative Pacemaker return code (with name) (XML)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) =#=#=#=
+-1039: Compression/decompression error
+-1038: Nameserver resolution error
+-1037: No active transaction found
-1036: Bad XML patch format
-1035: Bad input value provided
-1034: Disabled
@@ -186,6 +189,9 @@ pcmk_rc_node_unknown - Node not found
* Passed: crm_error - List Pacemaker return codes (non-positive)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) (XML) =#=#=#=
<pacemaker-result api-version="X" request="crm_error -l -r --output-as=xml">
+ <result-code code="-1039" description="Compression/decompression error"/>
+ <result-code code="-1038" description="Nameserver resolution error"/>
+ <result-code code="-1037" description="No active transaction found"/>
<result-code code="-1036" description="Bad XML patch format"/>
<result-code code="-1035" description="Bad input value provided"/>
<result-code code="-1034" description="Disabled"/>
@@ -227,6 +233,9 @@ pcmk_rc_node_unknown - Node not found
=#=#=#= End test: List Pacemaker return codes (non-positive) (XML) - OK (0) =#=#=#=
* Passed: crm_error - List Pacemaker return codes (non-positive) (XML)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) (with names) =#=#=#=
+-1039: pcmk_rc_compression Compression/decompression error
+-1038: pcmk_rc_ns_resolution Nameserver resolution error
+-1037: pcmk_rc_no_transaction No active transaction found
-1036: pcmk_rc_bad_xml_patch Bad XML patch format
-1035: pcmk_rc_bad_input Bad input value provided
-1034: pcmk_rc_disabled Disabled
@@ -268,6 +277,9 @@ pcmk_rc_node_unknown - Node not found
* Passed: crm_error - List Pacemaker return codes (non-positive) (with names)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) (with names) (XML) =#=#=#=
<pacemaker-result api-version="X" request="crm_error -n -l -r --output-as=xml">
+ <result-code code="-1039" name="pcmk_rc_compression" description="Compression/decompression error"/>
+ <result-code code="-1038" name="pcmk_rc_ns_resolution" description="Nameserver resolution error"/>
+ <result-code code="-1037" name="pcmk_rc_no_transaction" description="No active transaction found"/>
<result-code code="-1036" name="pcmk_rc_bad_xml_patch" description="Bad XML patch format"/>
<result-code code="-1035" name="pcmk_rc_bad_input" description="Bad input value provided"/>
<result-code code="-1034" name="pcmk_rc_disabled" description="Disabled"/>
diff --git a/cts/cli/regression.rules.exp b/cts/cli/regression.rules.exp
index c3dccd7..cdfb5d1 100644
--- a/cts/cli/regression.rules.exp
+++ b/cts/cli/regression.rules.exp
@@ -33,6 +33,9 @@ crm_rule: --check requires use of --rule=
log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
log_xmllib_err error: XML Error: invalidxml
log_xmllib_err error: XML Error: ^
+log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
+log_xmllib_err error: XML Error: invalidxml
+log_xmllib_err error: XML Error: ^
crm_rule: Couldn't parse input string: invalidxml
=#=#=#= End test: crm_rule given invalid input XML - Invalid data given (65) =#=#=#=
@@ -41,6 +44,9 @@ crm_rule: Couldn't parse input string: invalidxml
log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
log_xmllib_err error: XML Error: invalidxml
log_xmllib_err error: XML Error: ^
+log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
+log_xmllib_err error: XML Error: invalidxml
+log_xmllib_err error: XML Error: ^
<pacemaker-result api-version="X" request="crm_rule -c -r blahblah -X invalidxml --output-as=xml">
<status code="65" message="Invalid data given">
<errors>
@@ -55,6 +61,9 @@ log_xmllib_err error: XML Error: ^
log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
log_xmllib_err error: XML Error: invalidxml
log_xmllib_err error: XML Error: ^
+log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
+log_xmllib_err error: XML Error: invalidxml
+log_xmllib_err error: XML Error: ^
crm_rule: Couldn't parse input from STDIN
=#=#=#= End test: crm_rule given invalid input XML on stdin - Invalid data given (65) =#=#=#=
@@ -63,6 +72,9 @@ crm_rule: Couldn't parse input from STDIN
log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
log_xmllib_err error: XML Error: invalidxml
log_xmllib_err error: XML Error: ^
+log_xmllib_err error: XML Error: Entity: line 1: parser error : Start tag expected, '<' not found
+log_xmllib_err error: XML Error: invalidxml
+log_xmllib_err error: XML Error: ^
<pacemaker-result api-version="X" request="crm_rule -c -r blahblah -X - --output-as=xml">
<status code="65" message="Invalid data given">
<errors>
diff --git a/cts/cli/regression.tools.exp b/cts/cli/regression.tools.exp
index a8e2236..accf781 100644
--- a/cts/cli/regression.tools.exp
+++ b/cts/cli/regression.tools.exp
@@ -4706,7 +4706,7 @@ Resources prim2 is colocated with:
<pacemaker-result api-version="X" request="crm_resource -a -r prim2 --output-as=xml">
<constraints>
<rsc_location node="cluster01" rsc="prim2" id="prim2-on-cluster1" score="INFINITY"/>
- <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4716,10 +4716,10 @@ Resources prim2 is colocated with:
<pacemaker-result api-version="X" request="crm_resource -A -r prim2 --output-as=xml">
<constraints>
<rsc_location node="cluster01" rsc="prim2" id="prim2-on-cluster1" score="INFINITY"/>
- <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY"/>
- <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4752,9 +4752,9 @@ Resources prim3 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim3 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim3 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster01" rsc="prim2" id="prim2-on-cluster1" score="INFINITY"/>
- <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
</constraints>
<status code="0" message="OK"/>
@@ -4764,11 +4764,11 @@ Resources prim3 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim3 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim3 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster01" rsc="prim2" id="prim2-on-cluster1" score="INFINITY"/>
- <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4802,9 +4802,9 @@ Resources prim4 is colocated with:
<pacemaker-result api-version="X" request="crm_resource -a -r prim4 --output-as=xml">
<constraints>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
- <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY"/>
- <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY"/>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4814,11 +4814,11 @@ Resources prim4 is colocated with:
<pacemaker-result api-version="X" request="crm_resource -A -r prim4 --output-as=xml">
<constraints>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
- <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY"/>
- <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY"/>
- <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster01" rsc="prim2" id="prim2-on-cluster1" score="INFINITY"/>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4848,7 +4848,7 @@ Resources colocated with prim5:
=#=#=#= Begin test: Check locations and constraints for prim5 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim5 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
</constraints>
<status code="0" message="OK"/>
@@ -4858,11 +4858,11 @@ Resources colocated with prim5:
=#=#=#= Begin test: Recursively check locations and constraints for prim5 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim5 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
- <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY"/>
- <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY"/>
- <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim3-prim4-INFINITY" rsc="prim3" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim2-prim3-INFINITY" rsc="prim2" with-rsc="prim3" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster01" rsc="prim2" id="prim2-on-cluster1" score="INFINITY"/>
</constraints>
<status code="0" message="OK"/>
@@ -4910,7 +4910,7 @@ Resources prim7 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim7 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim7 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4919,7 +4919,7 @@ Resources prim7 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim7 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim7 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4938,7 +4938,7 @@ Resources prim8 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim8 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim8 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim8-gr2-INFINITY" rsc="prim8" with-rsc="gr2" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim8-gr2-INFINITY" rsc="prim8" with-rsc="gr2" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4947,7 +4947,7 @@ Resources prim8 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim8 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim8 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim8-gr2-INFINITY" rsc="prim8" with-rsc="gr2" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim8-gr2-INFINITY" rsc="prim8" with-rsc="gr2" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4966,7 +4966,7 @@ Resources prim9 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim9 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim9 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -4975,7 +4975,7 @@ Resources prim9 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim9 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim9 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5000,7 +5000,7 @@ Resources prim10 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim10 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim10 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
</constraints>
<status code="0" message="OK"/>
@@ -5010,9 +5010,9 @@ Resources prim10 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim10 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim10 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim10-prim4-INFINITY" rsc="prim10" with-rsc="prim4" score="INFINITY" node-attribute="#uname"/>
<rsc_location node="cluster02" rsc="prim4" id="prim4-on-cluster2" score="INFINITY"/>
- <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim4-prim5-INFINITY" rsc="prim4" with-rsc="prim5" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5043,8 +5043,8 @@ Resources prim11 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim11 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim11 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5053,12 +5053,12 @@ Resources prim11 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim11 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim11 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5089,8 +5089,8 @@ Resources prim12 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim12 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim12 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5099,12 +5099,12 @@ Resources prim12 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim12 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim12 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5135,8 +5135,8 @@ Resources prim13 is colocated with:
=#=#=#= Begin test: Check locations and constraints for prim13 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r prim13 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5145,12 +5145,12 @@ Resources prim13 is colocated with:
=#=#=#= Begin test: Recursively check locations and constraints for prim13 in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r prim13 --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
- <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY"/>
- <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY"/>
- <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim13-prim11-INFINITY" rsc="prim13" with-rsc="prim11" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim11-prim12-INFINITY" rsc="prim11" with-rsc="prim12" score="INFINITY" node-attribute="#uname"/>
+ <rsc_colocation id="colocation-prim12-prim13-INFINITY" rsc="prim12" with-rsc="prim13" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5169,7 +5169,7 @@ Resources colocated with group:
=#=#=#= Begin test: Check locations and constraints for group in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r group --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5178,7 +5178,7 @@ Resources colocated with group:
=#=#=#= Begin test: Recursively check locations and constraints for group in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r group --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim7-group-INFINITY" rsc="prim7" with-rsc="group" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5197,7 +5197,7 @@ Resources colocated with clone:
=#=#=#= Begin test: Check locations and constraints for clone in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -a -r clone --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5206,7 +5206,7 @@ Resources colocated with clone:
=#=#=#= Begin test: Recursively check locations and constraints for clone in XML =#=#=#=
<pacemaker-result api-version="X" request="crm_resource -A -r clone --output-as=xml">
<constraints>
- <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY"/>
+ <rsc_colocation id="colocation-prim9-clone-INFINITY" rsc="prim9" with-rsc="clone" score="INFINITY" node-attribute="#uname"/>
</constraints>
<status code="0" message="OK"/>
</pacemaker-result>
@@ -5529,34 +5529,34 @@ export overcloud-rabbit-2=overcloud-rabbit-2
<node_weight function="pcmk__primitive_assign" node="httpd-bundle-0" score="-INFINITY" id="inactive-dummy-2"/>
<node_weight function="pcmk__primitive_assign" node="httpd-bundle-1" score="-INFINITY" id="inactive-dummy-2"/>
<node_weight function="pcmk__primitive_assign" node="httpd-bundle-2" score="-INFINITY" id="inactive-dummy-2"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-docker-0"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-docker-0"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-ip-192.168.122.131"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-ip-192.168.122.131"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-0"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-0"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-docker-1"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-docker-1"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-ip-192.168.122.132"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-ip-192.168.122.132"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-1"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-1"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-docker-2"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-docker-2"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-ip-192.168.122.133"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-ip-192.168.122.133"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-2"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-2"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster01" score="0" id="httpd-bundle-clone"/>
- <node_weight function="pcmk__bundle_allocate" node="cluster02" score="0" id="httpd-bundle-clone"/>
- <node_weight function="pcmk__bundle_allocate" node="httpd-bundle-0" score="-INFINITY" id="httpd-bundle-clone"/>
- <node_weight function="pcmk__bundle_allocate" node="httpd-bundle-1" score="-INFINITY" id="httpd-bundle-clone"/>
- <node_weight function="pcmk__bundle_allocate" node="httpd-bundle-2" score="-INFINITY" id="httpd-bundle-clone"/>
- <node_weight function="pcmk__bundle_allocate" node="httpd-bundle-0" score="501" id="httpd:0"/>
- <node_weight function="pcmk__bundle_allocate" node="httpd-bundle-1" score="501" id="httpd:1"/>
- <node_weight function="pcmk__bundle_allocate" node="httpd-bundle-2" score="500" id="httpd:2"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-docker-0"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-docker-0"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-ip-192.168.122.131"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-ip-192.168.122.131"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-0"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-0"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-docker-1"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-docker-1"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-ip-192.168.122.132"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-ip-192.168.122.132"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-1"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-1"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-docker-2"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-docker-2"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-ip-192.168.122.133"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-ip-192.168.122.133"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-2"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-2"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster01" score="0" id="httpd-bundle-clone"/>
+ <node_weight function="pcmk__bundle_assign" node="cluster02" score="0" id="httpd-bundle-clone"/>
+ <node_weight function="pcmk__bundle_assign" node="httpd-bundle-0" score="-INFINITY" id="httpd-bundle-clone"/>
+ <node_weight function="pcmk__bundle_assign" node="httpd-bundle-1" score="-INFINITY" id="httpd-bundle-clone"/>
+ <node_weight function="pcmk__bundle_assign" node="httpd-bundle-2" score="-INFINITY" id="httpd-bundle-clone"/>
+ <node_weight function="pcmk__bundle_assign" node="httpd-bundle-0" score="501" id="httpd:0"/>
+ <node_weight function="pcmk__bundle_assign" node="httpd-bundle-1" score="501" id="httpd:1"/>
+ <node_weight function="pcmk__bundle_assign" node="httpd-bundle-2" score="500" id="httpd:2"/>
<node_weight function="pcmk__primitive_assign" node="cluster01" score="0" id="httpd-bundle-docker-0"/>
<node_weight function="pcmk__primitive_assign" node="cluster02" score="0" id="httpd-bundle-docker-0"/>
<node_weight function="pcmk__primitive_assign" node="cluster01" score="-INFINITY" id="httpd-bundle-docker-1"/>
@@ -5711,26 +5711,26 @@ Original: cluster02 capacity:
Original: httpd-bundle-0 capacity:
Original: httpd-bundle-1 capacity:
Original: httpd-bundle-2 capacity:
-pcmk__finalize_assignment: ping:0 utilization on cluster02:
-pcmk__finalize_assignment: ping:1 utilization on cluster01:
-pcmk__finalize_assignment: Fencing utilization on cluster01:
-pcmk__finalize_assignment: dummy utilization on cluster02:
-pcmk__finalize_assignment: httpd-bundle-docker-0 utilization on cluster01:
-pcmk__finalize_assignment: httpd-bundle-docker-1 utilization on cluster02:
-pcmk__finalize_assignment: httpd-bundle-ip-192.168.122.131 utilization on cluster01:
-pcmk__finalize_assignment: httpd-bundle-0 utilization on cluster01:
-pcmk__finalize_assignment: httpd:0 utilization on httpd-bundle-0:
-pcmk__finalize_assignment: httpd-bundle-ip-192.168.122.132 utilization on cluster02:
-pcmk__finalize_assignment: httpd-bundle-1 utilization on cluster02:
-pcmk__finalize_assignment: httpd:1 utilization on httpd-bundle-1:
-pcmk__finalize_assignment: httpd-bundle-2 utilization on cluster01:
-pcmk__finalize_assignment: httpd:2 utilization on httpd-bundle-2:
-pcmk__finalize_assignment: Public-IP utilization on cluster02:
-pcmk__finalize_assignment: Email utilization on cluster02:
-pcmk__finalize_assignment: mysql-proxy:0 utilization on cluster02:
-pcmk__finalize_assignment: mysql-proxy:1 utilization on cluster01:
-pcmk__finalize_assignment: promotable-rsc:0 utilization on cluster02:
-pcmk__finalize_assignment: promotable-rsc:1 utilization on cluster01:
+pcmk__assign_resource: ping:0 utilization on cluster02:
+pcmk__assign_resource: ping:1 utilization on cluster01:
+pcmk__assign_resource: Fencing utilization on cluster01:
+pcmk__assign_resource: dummy utilization on cluster02:
+pcmk__assign_resource: httpd-bundle-docker-0 utilization on cluster01:
+pcmk__assign_resource: httpd-bundle-docker-1 utilization on cluster02:
+pcmk__assign_resource: httpd-bundle-ip-192.168.122.131 utilization on cluster01:
+pcmk__assign_resource: httpd-bundle-0 utilization on cluster01:
+pcmk__assign_resource: httpd:0 utilization on httpd-bundle-0:
+pcmk__assign_resource: httpd-bundle-ip-192.168.122.132 utilization on cluster02:
+pcmk__assign_resource: httpd-bundle-1 utilization on cluster02:
+pcmk__assign_resource: httpd:1 utilization on httpd-bundle-1:
+pcmk__assign_resource: httpd-bundle-2 utilization on cluster01:
+pcmk__assign_resource: httpd:2 utilization on httpd-bundle-2:
+pcmk__assign_resource: Public-IP utilization on cluster02:
+pcmk__assign_resource: Email utilization on cluster02:
+pcmk__assign_resource: mysql-proxy:0 utilization on cluster02:
+pcmk__assign_resource: mysql-proxy:1 utilization on cluster01:
+pcmk__assign_resource: promotable-rsc:0 utilization on cluster02:
+pcmk__assign_resource: promotable-rsc:1 utilization on cluster01:
Remaining: cluster01 capacity:
Remaining: cluster02 capacity:
Remaining: httpd-bundle-0 capacity:
@@ -5961,7 +5961,7 @@ Transition Summary:
* Move Public-IP ( cluster02 -> cluster01 )
* Move Email ( cluster02 -> cluster01 )
* Stop mysql-proxy:0 ( cluster02 ) due to node availability
- * Stop promotable-rsc:0 ( Promoted cluster02 ) due to node availability
+ * Stop promotable-rsc:0 ( Promoted cluster02 ) due to node availability
Executing Cluster Transition:
* Pseudo action: httpd-bundle-1_stop_0
@@ -7048,7 +7048,7 @@ Diff: +++ 1.4.1 (null)
<cib epoch="4" num_updates="1" admin_epoch="1"/>
</change-result>
</change>
- <change operation="modify" path="/cib/configuration/resources/primitive[@id='dummy']">
+ <change operation="modify" path="/cib/configuration/resources/primitive[@id=&apos;dummy&apos;]">
<change-list>
<change-attr name="description" operation="set" value="desc"/>
</change-list>
@@ -7667,7 +7667,7 @@ Diff: +++ 0.1.0 (null)
-- /cib/status/node_state[@id='1']
-- /cib/status/node_state[@id='httpd-bundle-0']
-- /cib/status/node_state[@id='httpd-bundle-1']
-+ /cib: @crm_feature_set=3.17.4, @num_updates=0, @admin_epoch=0
++ /cib: @crm_feature_set=3.19.0, @num_updates=0, @admin_epoch=0
-- /cib: @cib-last-written, @update-origin, @update-client, @update-user, @have-quorum, @dc-uuid
=#=#=#= End test: Get active shadow instance's diff (empty CIB) - Error occurred (1) =#=#=#=
* Passed: crm_shadow - Get active shadow instance's diff (empty CIB)
@@ -7679,29 +7679,29 @@ Diff: +++ 0.1.0 (null)
<source admin_epoch="1" epoch="1" num_updates="173"/>
<target admin_epoch="0" epoch="1" num_updates="0"/>
</version>
- <change operation="delete" path="/cib/configuration/crm_config/cluster_property_set[@id='cib-bootstrap-options']"/>
- <change operation="delete" path="/cib/configuration/nodes/node[@id='1']"/>
- <change operation="delete" path="/cib/configuration/nodes/node[@id='2']"/>
- <change operation="delete" path="/cib/configuration/resources/clone[@id='ping-clone']"/>
- <change operation="delete" path="/cib/configuration/resources/primitive[@id='Fencing']"/>
- <change operation="delete" path="/cib/configuration/resources/primitive[@id='dummy']"/>
- <change operation="delete" path="/cib/configuration/resources/clone[@id='inactive-clone']"/>
- <change operation="delete" path="/cib/configuration/resources/group[@id='inactive-group']"/>
- <change operation="delete" path="/cib/configuration/resources/bundle[@id='httpd-bundle']"/>
- <change operation="delete" path="/cib/configuration/resources/group[@id='exim-group']"/>
- <change operation="delete" path="/cib/configuration/resources/clone[@id='mysql-clone-group']"/>
- <change operation="delete" path="/cib/configuration/resources/clone[@id='promotable-clone']"/>
- <change operation="delete" path="/cib/configuration/constraints/rsc_location[@id='not-on-cluster1']"/>
- <change operation="delete" path="/cib/configuration/constraints/rsc_location[@id='loc-promotable-clone']"/>
+ <change operation="delete" path="/cib/configuration/crm_config/cluster_property_set[@id=&apos;cib-bootstrap-options&apos;]"/>
+ <change operation="delete" path="/cib/configuration/nodes/node[@id=&apos;1&apos;]"/>
+ <change operation="delete" path="/cib/configuration/nodes/node[@id=&apos;2&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/clone[@id=&apos;ping-clone&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/primitive[@id=&apos;Fencing&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/primitive[@id=&apos;dummy&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/clone[@id=&apos;inactive-clone&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/group[@id=&apos;inactive-group&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/bundle[@id=&apos;httpd-bundle&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/group[@id=&apos;exim-group&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/clone[@id=&apos;mysql-clone-group&apos;]"/>
+ <change operation="delete" path="/cib/configuration/resources/clone[@id=&apos;promotable-clone&apos;]"/>
+ <change operation="delete" path="/cib/configuration/constraints/rsc_location[@id=&apos;not-on-cluster1&apos;]"/>
+ <change operation="delete" path="/cib/configuration/constraints/rsc_location[@id=&apos;loc-promotable-clone&apos;]"/>
<change operation="delete" path="/cib/configuration/tags"/>
<change operation="delete" path="/cib/configuration/op_defaults"/>
- <change operation="delete" path="/cib/status/node_state[@id='2']"/>
- <change operation="delete" path="/cib/status/node_state[@id='1']"/>
- <change operation="delete" path="/cib/status/node_state[@id='httpd-bundle-0']"/>
- <change operation="delete" path="/cib/status/node_state[@id='httpd-bundle-1']"/>
+ <change operation="delete" path="/cib/status/node_state[@id=&apos;2&apos;]"/>
+ <change operation="delete" path="/cib/status/node_state[@id=&apos;1&apos;]"/>
+ <change operation="delete" path="/cib/status/node_state[@id=&apos;httpd-bundle-0&apos;]"/>
+ <change operation="delete" path="/cib/status/node_state[@id=&apos;httpd-bundle-1&apos;]"/>
<change operation="modify" path="/cib">
<change-list>
- <change-attr name="crm_feature_set" operation="set" value="3.17.4"/>
+ <change-attr name="crm_feature_set" operation="set" value="3.19.0"/>
<change-attr name="num_updates" operation="set" value="0"/>
<change-attr name="admin_epoch" operation="set" value="0"/>
<change-attr name="cib-last-written" operation="unset"/>
@@ -7898,3 +7898,95 @@ crm_shadow: Could not access shadow instance 'cts-cli': No such file or director
</pacemaker-result>
=#=#=#= End test: Switch to nonexistent shadow instance (force) (XML) - No such object (105) =#=#=#=
* Passed: crm_shadow - Switch to nonexistent shadow instance (force) (XML)
+=#=#=#= Begin test: Verify a file-specified invalid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_verify_invalid_bz.xml --output-as=xml">
+ <status code="78" message="Invalid configuration">
+ <errors>
+ <error>Resource test2:0 is of type systemd and therefore cannot be used as a promotable clone resource</error>
+ <error>Ignoring &lt;clone&gt; resource 'test2-clone' because configuration is invalid</error>
+ <error>crm_verify: Errors found during check: config not valid</error>
+ </errors>
+ </status>
+</pacemaker-result>
+=#=#=#= End test: Verify a file-specified invalid configuration, outputting as xml - Invalid configuration (78) =#=#=#=
+* Passed: crm_verify - Verify a file-specified invalid configuration, outputting as xml
+=#=#=#= Begin test: Verify another file-specified invalid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_verify_invalid_no_stonith.xml --output-as=xml">
+ <status code="78" message="Invalid configuration">
+ <errors>
+ <error>Resource start-up disabled since no STONITH resources have been defined</error>
+ <error>Either configure some or disable STONITH with the stonith-enabled option</error>
+ <error>NOTE: Clusters with shared data need STONITH to ensure data integrity</error>
+ <error>Node pcmk-1 is unclean but cannot be fenced</error>
+ <error>Node pcmk-2 is unclean but cannot be fenced</error>
+ <error>crm_verify: Errors found during check: config not valid</error>
+ </errors>
+ </status>
+</pacemaker-result>
+=#=#=#= End test: Verify another file-specified invalid configuration, outputting as xml - Invalid configuration (78) =#=#=#=
+* Passed: crm_verify - Verify another file-specified invalid configuration, outputting as xml
+=#=#=#= Begin test: Verbosely verify a file-specified invalid configuration, outputting as xml =#=#=#=
+unpack_config warning: Blind faith: not fencing unseen nodes
+<pacemaker-result api-version="X" request="crm_verify_invalid_bz.xml --output-as=xml --verbose">
+ <status code="78" message="Invalid configuration">
+ <errors>
+ <error>Resource test2:0 is of type systemd and therefore cannot be used as a promotable clone resource</error>
+ <error>Ignoring &lt;clone&gt; resource 'test2-clone' because configuration is invalid</error>
+ <error>crm_verify: Errors found during check: config not valid</error>
+ </errors>
+ </status>
+</pacemaker-result>
+=#=#=#= End test: Verbosely verify a file-specified invalid configuration, outputting as xml - Invalid configuration (78) =#=#=#=
+* Passed: crm_verify - Verbosely verify a file-specified invalid configuration, outputting as xml
+=#=#=#= Begin test: Verbosely verify another file-specified invalid configuration, outputting as xml =#=#=#=
+(cluster_status@status.c:113) warning: Fencing and resource management disabled due to lack of quorum
+<pacemaker-result api-version="X" request="crm_verify_invalid_no_stonith.xml --output-as=xml --verbose">
+ <status code="78" message="Invalid configuration">
+ <errors>
+ <error>Resource start-up disabled since no STONITH resources have been defined</error>
+ <error>Either configure some or disable STONITH with the stonith-enabled option</error>
+ <error>NOTE: Clusters with shared data need STONITH to ensure data integrity</error>
+ <error>Node pcmk-1 is unclean but cannot be fenced</error>
+ <error>Node pcmk-2 is unclean but cannot be fenced</error>
+ <error>crm_verify: Errors found during check: config not valid</error>
+ </errors>
+ </status>
+</pacemaker-result>
+=#=#=#= End test: Verbosely verify another file-specified invalid configuration, outputting as xml - Invalid configuration (78) =#=#=#=
+* Passed: crm_verify - Verbosely verify another file-specified invalid configuration, outputting as xml
+=#=#=#= Begin test: Verify a file-specified valid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_mon.xml --output-as=xml">
+ <status code="0" message="OK"/>
+</pacemaker-result>
+=#=#=#= End test: Verify a file-specified valid configuration, outputting as xml - OK (0) =#=#=#=
+* Passed: crm_verify - Verify a file-specified valid configuration, outputting as xml
+=#=#=#= Begin test: Verify a piped-in valid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_verify -p --output-as=xml">
+ <status code="0" message="OK"/>
+</pacemaker-result>
+=#=#=#= End test: Verify a piped-in valid configuration, outputting as xml - OK (0) =#=#=#=
+* Passed: cat - Verify a piped-in valid configuration, outputting as xml
+=#=#=#= Begin test: Verbosely verify a file-specified valid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_mon.xml --output-as=xml --verbose">
+ <status code="0" message="OK"/>
+</pacemaker-result>
+=#=#=#= End test: Verbosely verify a file-specified valid configuration, outputting as xml - OK (0) =#=#=#=
+* Passed: crm_verify - Verbosely verify a file-specified valid configuration, outputting as xml
+=#=#=#= Begin test: Verbosely verify a piped-in valid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_verify -p --output-as=xml --verbose">
+ <status code="0" message="OK"/>
+</pacemaker-result>
+=#=#=#= End test: Verbosely verify a piped-in valid configuration, outputting as xml - OK (0) =#=#=#=
+* Passed: cat - Verbosely verify a piped-in valid configuration, outputting as xml
+=#=#=#= Begin test: Verify a string-supplied valid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_feature_set=&quot;3.7.1&quot; transition-key=&quot;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&quot; transition-magic=&quot;0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&quot; exit-reason=&quot;&quot; call-id=&quot;1&quot; rc-code=&quot;0&quot; op-status=&quot;0&quot; interval=&quot;0&quot; last-rc-change=&quot;1613491700&quot; exec-time=&quot;0&quot; queue-time=&quot;0&quot; op-digest=&quot;f2317cad3d54cec5d7d7aa7d0bf35cf8&quot;/&gt; &lt;/lrm_resource&gt; &lt;/lrm_resources&gt; &lt;/lrm&gt; &lt;/node_state&gt; &lt;/status&gt; &lt;/cib&gt;' --output-as=xml">
+ <status code="0" message="OK"/>
+</pacemaker-result>
+=#=#=#= End test: Verify a string-supplied valid configuration, outputting as xml - OK (0) =#=#=#=
+* Passed: crm_verify - Verify a string-supplied valid configuration, outputting as xml
+=#=#=#= Begin test: Verbosely verify a string-supplied valid configuration, outputting as xml =#=#=#=
+<pacemaker-result api-version="X" request="crm_feature_set=&quot;3.7.1&quot; transition-key=&quot;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&quot; transition-magic=&quot;0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&quot; exit-reason=&quot;&quot; call-id=&quot;1&quot; rc-code=&quot;0&quot; op-status=&quot;0&quot; interval=&quot;0&quot; last-rc-change=&quot;1613491700&quot; exec-time=&quot;0&quot; queue-time=&quot;0&quot; op-digest=&quot;f2317cad3d54cec5d7d7aa7d0bf35cf8&quot;/&gt; &lt;/lrm_resource&gt; &lt;/lrm_resources&gt; &lt;/lrm&gt; &lt;/node_state&gt; &lt;/status&gt; &lt;/cib&gt;' --output-as=xml --verbose">
+ <status code="0" message="OK"/>
+</pacemaker-result>
+=#=#=#= End test: Verbosely verify a string-supplied valid configuration, outputting as xml - OK (0) =#=#=#=
+* Passed: crm_verify - Verbosely verify a string-supplied valid configuration, outputting as xml