diff options
Diffstat (limited to '')
-rw-r--r-- | cts/cli/crm_verify_invalid_bz.xml | 72 | ||||
-rw-r--r-- | cts/cli/crm_verify_invalid_no_stonith.xml | 12 | ||||
-rw-r--r-- | cts/cli/regression.daemons.exp | 10 | ||||
-rw-r--r-- | cts/cli/regression.error_codes.exp | 12 | ||||
-rw-r--r-- | cts/cli/regression.rules.exp | 12 | ||||
-rw-r--r-- | cts/cli/regression.tools.exp | 348 |
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's own timeout). The "correct" 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='dummy']"> <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='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/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='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="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 <clone> 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 <clone> 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="3.7.1" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" exit-reason="" call-id="1" rc-code="0" op-status="0" interval="0" last-rc-change="1613491700" exec-time="0" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> </lrm_resource> </lrm_resources> </lrm> </node_state> </status> </cib>' --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="3.7.1" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" exit-reason="" call-id="1" rc-code="0" op-status="0" interval="0" last-rc-change="1613491700" exec-time="0" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> </lrm_resource> </lrm_resources> </lrm> </node_state> </status> </cib>' --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 |