|
|
715401 |
From e2420c1912b126e2be1818cf6fa52af595ad553b Mon Sep 17 00:00:00 2001
|
|
|
715401 |
From: Tomas Jelinek <tojeline@redhat.com>
|
|
|
715401 |
Date: Fri, 17 Apr 2020 13:27:46 +0200
|
|
|
715401 |
Subject: [PATCH 1/6] Keep autogenerated IDs of set constraints short
|
|
|
715401 |
|
|
|
715401 |
---
|
|
|
715401 |
pcs/lib/cib/constraint/colocation.py | 2 +-
|
|
|
715401 |
pcs/lib/cib/constraint/constraint.py | 18 +-
|
|
|
715401 |
pcs/lib/cib/constraint/order.py | 2 +-
|
|
|
715401 |
pcs/lib/cib/constraint/resource_set.py | 5 +-
|
|
|
715401 |
pcs/lib/cib/constraint/ticket.py | 2 +-
|
|
|
715401 |
pcs/lib/cib/test/test_constraint.py | 14 +-
|
|
|
715401 |
.../cib/test/test_constraint_colocation.py | 2 +-
|
|
|
715401 |
pcs/lib/cib/test/test_constraint_order.py | 2 +-
|
|
|
715401 |
pcs/lib/cib/test/test_constraint_ticket.py | 2 +-
|
|
|
715401 |
pcs/lib/cib/test/test_resource_set.py | 12 +-
|
|
|
715401 |
.../commands/test/test_constraint_common.py | 20 +-
|
|
|
715401 |
pcs/test/test_constraints.py | 202 +++++++++---------
|
|
|
715401 |
12 files changed, 141 insertions(+), 142 deletions(-)
|
|
|
715401 |
|
|
|
715401 |
diff --git a/pcs/lib/cib/constraint/colocation.py b/pcs/lib/cib/constraint/colocation.py
|
|
|
715401 |
index 8006a36f..d19522ab 100644
|
|
|
715401 |
--- a/pcs/lib/cib/constraint/colocation.py
|
|
|
715401 |
+++ b/pcs/lib/cib/constraint/colocation.py
|
|
|
715401 |
@@ -20,7 +20,7 @@ def prepare_options_with_set(cib, options, resource_set_list):
|
|
|
715401 |
options = constraint.prepare_options(
|
|
|
715401 |
tuple(SCORE_NAMES),
|
|
|
715401 |
options,
|
|
|
715401 |
- partial(constraint.create_id, cib, TAG_NAME, resource_set_list),
|
|
|
715401 |
+ partial(constraint.create_id, cib, "colocation", resource_set_list),
|
|
|
715401 |
partial(check_new_id_applicable, cib, DESCRIPTION),
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
diff --git a/pcs/lib/cib/constraint/constraint.py b/pcs/lib/cib/constraint/constraint.py
|
|
|
715401 |
index 02af9d02..936918c2 100644
|
|
|
715401 |
--- a/pcs/lib/cib/constraint/constraint.py
|
|
|
715401 |
+++ b/pcs/lib/cib/constraint/constraint.py
|
|
|
715401 |
@@ -98,11 +98,19 @@ def export_plain(element):
|
|
|
715401 |
return {"options": export_attributes(element)}
|
|
|
715401 |
|
|
|
715401 |
def create_id(cib, type_prefix, resource_set_list):
|
|
|
715401 |
- id = "pcs_" +type_prefix +"".join([
|
|
|
715401 |
- "_set_"+"_".join(id_set)
|
|
|
715401 |
- for id_set in resource_set.extract_id_set_list(resource_set_list)
|
|
|
715401 |
- ])
|
|
|
715401 |
- return find_unique_id(cib, id)
|
|
|
715401 |
+ # Create a semi-random id. We need it to be predictable (for testing), short
|
|
|
715401 |
+ # and somehow different than other ids so that we don't spend much time in
|
|
|
715401 |
+ # find_unique_id.
|
|
|
715401 |
+ # Avoid using actual resource names. It makes the id very long (consider 10
|
|
|
715401 |
+ # or more resources in a set constraint). Also, if a resource is deleted
|
|
|
715401 |
+ # and therefore removed from the constraint, the id no longer matches the
|
|
|
715401 |
+ # constraint.
|
|
|
715401 |
+ resource_ids = []
|
|
|
715401 |
+ for _set in resource_set_list:
|
|
|
715401 |
+ resource_ids.extend(_set["ids"])
|
|
|
715401 |
+ id_part = "".join([_id[0] + _id[-1] for _id in resource_ids][:3])
|
|
|
715401 |
+ return find_unique_id(cib, "{0}_set_{1}".format(type_prefix, id_part)
|
|
|
715401 |
+ )
|
|
|
715401 |
|
|
|
715401 |
def have_duplicate_resource_sets(element, other_element):
|
|
|
715401 |
get_id_set_list = lambda element: [
|
|
|
715401 |
diff --git a/pcs/lib/cib/constraint/order.py b/pcs/lib/cib/constraint/order.py
|
|
|
715401 |
index 4c520ae7..6085f0db 100644
|
|
|
715401 |
--- a/pcs/lib/cib/constraint/order.py
|
|
|
715401 |
+++ b/pcs/lib/cib/constraint/order.py
|
|
|
715401 |
@@ -24,7 +24,7 @@ def prepare_options_with_set(cib, options, resource_set_list):
|
|
|
715401 |
tuple(ATTRIB.keys()),
|
|
|
715401 |
options,
|
|
|
715401 |
create_id=partial(
|
|
|
715401 |
- constraint.create_id, cib, TAG_NAME, resource_set_list
|
|
|
715401 |
+ constraint.create_id, cib, "order", resource_set_list
|
|
|
715401 |
),
|
|
|
715401 |
validate_id=partial(check_new_id_applicable, cib, DESCRIPTION),
|
|
|
715401 |
)
|
|
|
715401 |
diff --git a/pcs/lib/cib/constraint/resource_set.py b/pcs/lib/cib/constraint/resource_set.py
|
|
|
715401 |
index 6ec18205..e9833ff7 100644
|
|
|
715401 |
--- a/pcs/lib/cib/constraint/resource_set.py
|
|
|
715401 |
+++ b/pcs/lib/cib/constraint/resource_set.py
|
|
|
715401 |
@@ -39,9 +39,6 @@ def validate_options(options):
|
|
|
715401 |
reports.invalid_option_value(name, value, ATTRIB[name])
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
-def extract_id_set_list(resource_set_list):
|
|
|
715401 |
- return [resource_set["ids"] for resource_set in resource_set_list]
|
|
|
715401 |
-
|
|
|
715401 |
def create(parent, resource_set):
|
|
|
715401 |
"""
|
|
|
715401 |
parent - lxml element for append new resource_set
|
|
|
715401 |
@@ -50,7 +47,7 @@ def create(parent, resource_set):
|
|
|
715401 |
element.attrib.update(resource_set["options"])
|
|
|
715401 |
element.attrib["id"] = find_unique_id(
|
|
|
715401 |
parent.getroottree(),
|
|
|
715401 |
- "pcs_rsc_set_{0}".format("_".join(resource_set["ids"]))
|
|
|
715401 |
+ "{0}_set".format(parent.attrib.get("id", "constraint_set"))
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
for id in resource_set["ids"]:
|
|
|
715401 |
diff --git a/pcs/lib/cib/constraint/ticket.py b/pcs/lib/cib/constraint/ticket.py
|
|
|
715401 |
index a2dbd5fe..cc1413ea 100644
|
|
|
715401 |
--- a/pcs/lib/cib/constraint/ticket.py
|
|
|
715401 |
+++ b/pcs/lib/cib/constraint/ticket.py
|
|
|
715401 |
@@ -48,7 +48,7 @@ def prepare_options_with_set(cib, options, resource_set_list):
|
|
|
715401 |
tuple(ATTRIB.keys()),
|
|
|
715401 |
options,
|
|
|
715401 |
create_id=partial(
|
|
|
715401 |
- constraint.create_id, cib, TAG_NAME, resource_set_list
|
|
|
715401 |
+ constraint.create_id, cib, "ticket", resource_set_list
|
|
|
715401 |
),
|
|
|
715401 |
validate_id=partial(tools.check_new_id_applicable, cib, DESCRIPTION),
|
|
|
715401 |
)
|
|
|
715401 |
diff --git a/pcs/lib/cib/test/test_constraint.py b/pcs/lib/cib/test/test_constraint.py
|
|
|
715401 |
index aa0f21cd..2712a81f 100644
|
|
|
715401 |
--- a/pcs/lib/cib/test/test_constraint.py
|
|
|
715401 |
+++ b/pcs/lib/cib/test/test_constraint.py
|
|
|
715401 |
@@ -263,19 +263,15 @@ class PrepareOptionsTest(TestCase):
|
|
|
715401 |
mock_validate_id.assert_called_once_with("invalid")
|
|
|
715401 |
|
|
|
715401 |
class CreateIdTest(TestCase):
|
|
|
715401 |
- @mock.patch(
|
|
|
715401 |
- "pcs.lib.cib.constraint.constraint.resource_set.extract_id_set_list"
|
|
|
715401 |
- )
|
|
|
715401 |
@mock.patch("pcs.lib.cib.constraint.constraint.find_unique_id")
|
|
|
715401 |
- def test_create_id_from_resource_set_list(self, mock_find_id, mock_extract):
|
|
|
715401 |
- mock_extract.return_value = [["A", "B"], ["C"]]
|
|
|
715401 |
+ def test_create_id_from_resource_set_list(self, mock_find_id):
|
|
|
715401 |
+ resource_set_list = [{"ids": ["A", "B"]}, {"ids": ["C"]}]
|
|
|
715401 |
mock_find_id.return_value = "some_id"
|
|
|
715401 |
self.assertEqual(
|
|
|
715401 |
"some_id",
|
|
|
715401 |
- constraint.create_id("cib", "PREFIX", "resource_set_list")
|
|
|
715401 |
+ constraint.create_id("cib", "PREFIX", resource_set_list)
|
|
|
715401 |
)
|
|
|
715401 |
- mock_extract.assert_called_once_with("resource_set_list")
|
|
|
715401 |
- mock_find_id.assert_called_once_with("cib", "pcs_PREFIX_set_A_B_set_C")
|
|
|
715401 |
+ mock_find_id.assert_called_once_with("cib", "PREFIX_set_AABBCC")
|
|
|
715401 |
|
|
|
715401 |
def fixture_constraint_section(return_value):
|
|
|
715401 |
constraint_section = mock.MagicMock()
|
|
|
715401 |
@@ -359,7 +355,7 @@ class CreateWithSetTest(TestCase):
|
|
|
715401 |
assert_xml_equal(etree.tostring(constraint_section).decode(), """
|
|
|
715401 |
<constraints>
|
|
|
715401 |
<ticket a="b">
|
|
|
715401 |
- <resource_set c="d" id="pcs_rsc_set_A_B">
|
|
|
715401 |
+ <resource_set c="d" id="constraint_set_set">
|
|
|
715401 |
<resource_ref id="A"/>
|
|
|
715401 |
<resource_ref id="B"/>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
diff --git a/pcs/lib/cib/test/test_constraint_colocation.py b/pcs/lib/cib/test/test_constraint_colocation.py
|
|
|
715401 |
index 25923bb3..75f7924c 100644
|
|
|
715401 |
--- a/pcs/lib/cib/test/test_constraint_colocation.py
|
|
|
715401 |
+++ b/pcs/lib/cib/test/test_constraint_colocation.py
|
|
|
715401 |
@@ -36,7 +36,7 @@ class PrepareOptionsWithSetTest(TestCase):
|
|
|
715401 |
self.assertEqual(expected_options, self.prepare(options))
|
|
|
715401 |
mock_create_id.assert_called_once_with(
|
|
|
715401 |
self.cib,
|
|
|
715401 |
- colocation.TAG_NAME,
|
|
|
715401 |
+ "colocation",
|
|
|
715401 |
self.resource_set_list
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
diff --git a/pcs/lib/cib/test/test_constraint_order.py b/pcs/lib/cib/test/test_constraint_order.py
|
|
|
715401 |
index c43fa2c4..4f5719d3 100644
|
|
|
715401 |
--- a/pcs/lib/cib/test/test_constraint_order.py
|
|
|
715401 |
+++ b/pcs/lib/cib/test/test_constraint_order.py
|
|
|
715401 |
@@ -36,7 +36,7 @@ class PrepareOptionsWithSetTest(TestCase):
|
|
|
715401 |
self.assertEqual(expected_options, self.prepare(options))
|
|
|
715401 |
mock_create_id.assert_called_once_with(
|
|
|
715401 |
self.cib,
|
|
|
715401 |
- order.TAG_NAME,
|
|
|
715401 |
+ "order",
|
|
|
715401 |
self.resource_set_list
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
diff --git a/pcs/lib/cib/test/test_constraint_ticket.py b/pcs/lib/cib/test/test_constraint_ticket.py
|
|
|
715401 |
index ff91f255..111c88e8 100644
|
|
|
715401 |
--- a/pcs/lib/cib/test/test_constraint_ticket.py
|
|
|
715401 |
+++ b/pcs/lib/cib/test/test_constraint_ticket.py
|
|
|
715401 |
@@ -183,7 +183,7 @@ class PrepareOptionsWithSetTest(TestCase):
|
|
|
715401 |
self.assertEqual(expected_options, self.prepare(options))
|
|
|
715401 |
mock_create_id.assert_called_once_with(
|
|
|
715401 |
self.cib,
|
|
|
715401 |
- ticket.TAG_NAME,
|
|
|
715401 |
+ "ticket",
|
|
|
715401 |
self.resource_set_list
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
diff --git a/pcs/lib/cib/test/test_resource_set.py b/pcs/lib/cib/test/test_resource_set.py
|
|
|
715401 |
index 5e0d75c2..fda2723e 100644
|
|
|
715401 |
--- a/pcs/lib/cib/test/test_resource_set.py
|
|
|
715401 |
+++ b/pcs/lib/cib/test/test_resource_set.py
|
|
|
715401 |
@@ -60,16 +60,6 @@ class PrepareSetTest(TestCase):
|
|
|
715401 |
}),
|
|
|
715401 |
)
|
|
|
715401 |
|
|
|
715401 |
-class ExtractIdListTest(TestCase):
|
|
|
715401 |
- def test_return_id_list_from_resource_set_list(self):
|
|
|
715401 |
- self.assertEqual(
|
|
|
715401 |
- [["A", "B"], ["C", "D"]],
|
|
|
715401 |
- resource_set.extract_id_set_list([
|
|
|
715401 |
- {"ids": ["A", "B"], "options": {}},
|
|
|
715401 |
- {"ids": ["C", "D"], "options": {}},
|
|
|
715401 |
- ])
|
|
|
715401 |
- )
|
|
|
715401 |
-
|
|
|
715401 |
class CreateTest(TestCase):
|
|
|
715401 |
def test_resource_set_to_parent(self):
|
|
|
715401 |
constraint_element = etree.Element("constraint")
|
|
|
715401 |
@@ -79,7 +69,7 @@ class CreateTest(TestCase):
|
|
|
715401 |
)
|
|
|
715401 |
assert_xml_equal(etree.tostring(constraint_element).decode(), """
|
|
|
715401 |
<constraint>
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_A_B" sequential="true">
|
|
|
715401 |
+ <resource_set id="constraint_set_set" sequential="true">
|
|
|
715401 |
<resource_ref id="A"></resource_ref>
|
|
|
715401 |
<resource_ref id="B"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
diff --git a/pcs/lib/commands/test/test_constraint_common.py b/pcs/lib/commands/test/test_constraint_common.py
|
|
|
715401 |
index bf359380..ddbcbe8e 100644
|
|
|
715401 |
--- a/pcs/lib/commands/test/test_constraint_common.py
|
|
|
715401 |
+++ b/pcs/lib/commands/test/test_constraint_common.py
|
|
|
715401 |
@@ -62,11 +62,11 @@ class CreateWithSetTest(TestCase):
|
|
|
715401 |
self.env.push_cib.assert_called_once_with()
|
|
|
715401 |
self.independent_cib.find(".//constraints").append(etree.XML("""
|
|
|
715401 |
<rsc_some id="some_id" symmetrical="true">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_A_B" role="Master">
|
|
|
715401 |
+ <resource_set id="some_id_set" role="Master">
|
|
|
715401 |
<resource_ref id="A"></resource_ref>
|
|
|
715401 |
<resource_ref id="B"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
- <resource_set action="start" id="pcs_rsc_set_E_F">
|
|
|
715401 |
+ <resource_set action="start" id="some_id_set-1">
|
|
|
715401 |
<resource_ref id="E"></resource_ref>
|
|
|
715401 |
<resource_ref id="F"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -90,11 +90,11 @@ class CreateWithSetTest(TestCase):
|
|
|
715401 |
'resource_sets': [
|
|
|
715401 |
{
|
|
|
715401 |
'ids': ['A', 'B'],
|
|
|
715401 |
- 'options':{'role':'Master', 'id':'pcs_rsc_set_A_B'}
|
|
|
715401 |
+ 'options':{'role':'Master', 'id':'some_id_set'}
|
|
|
715401 |
},
|
|
|
715401 |
{
|
|
|
715401 |
'ids': ['E', 'F'],
|
|
|
715401 |
- 'options':{'action':'start', 'id':'pcs_rsc_set_E_F'}
|
|
|
715401 |
+ 'options':{'action':'start', 'id':'some_id_set-1'}
|
|
|
715401 |
}
|
|
|
715401 |
],
|
|
|
715401 |
}]
|
|
|
715401 |
@@ -115,11 +115,11 @@ class CreateWithSetTest(TestCase):
|
|
|
715401 |
constraint_section = self.independent_cib.find(".//constraints")
|
|
|
715401 |
constraint_section.append(etree.XML("""
|
|
|
715401 |
<rsc_some id="some_id" symmetrical="true">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_A_B" role="Master">
|
|
|
715401 |
+ <resource_set id="some_id_set" role="Master">
|
|
|
715401 |
<resource_ref id="A"></resource_ref>
|
|
|
715401 |
<resource_ref id="B"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
- <resource_set action="start" id="pcs_rsc_set_E_F">
|
|
|
715401 |
+ <resource_set action="start" id="some_id_set-1">
|
|
|
715401 |
<resource_ref id="E"></resource_ref>
|
|
|
715401 |
<resource_ref id="F"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -127,11 +127,11 @@ class CreateWithSetTest(TestCase):
|
|
|
715401 |
"""))
|
|
|
715401 |
constraint_section.append(etree.XML("""
|
|
|
715401 |
<rsc_some id="some_id" symmetrical="true">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_A_B-1" role="Master">
|
|
|
715401 |
+ <resource_set id="some_id_set-2" role="Master">
|
|
|
715401 |
<resource_ref id="A"></resource_ref>
|
|
|
715401 |
<resource_ref id="B"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
- <resource_set action="start" id="pcs_rsc_set_E_F-1">
|
|
|
715401 |
+ <resource_set action="start" id="some_id_set-3">
|
|
|
715401 |
<resource_ref id="E"></resource_ref>
|
|
|
715401 |
<resource_ref id="F"></resource_ref>
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -177,7 +177,7 @@ class ShowTest(TestCase):
|
|
|
715401 |
{
|
|
|
715401 |
'resource_sets': [{
|
|
|
715401 |
'ids': ['A', 'B'],
|
|
|
715401 |
- 'options': {'role': 'Master', 'id': 'pcs_rsc_set_A_B'},
|
|
|
715401 |
+ 'options': {'role': 'Master', 'id': 'some_id_set'},
|
|
|
715401 |
}],
|
|
|
715401 |
'options': {'symmetrical': 'true', 'id': 'some_id'}
|
|
|
715401 |
},
|
|
|
715401 |
@@ -185,7 +185,7 @@ class ShowTest(TestCase):
|
|
|
715401 |
'options': {'symmetrical': 'true', 'id': 'some_id'},
|
|
|
715401 |
'resource_sets': [{
|
|
|
715401 |
'ids': ['E', 'F'],
|
|
|
715401 |
- 'options': {'action': 'start', 'id': 'pcs_rsc_set_E_F'}
|
|
|
715401 |
+ 'options': {'action': 'start', 'id': 'some_id_set-1'}
|
|
|
715401 |
}]
|
|
|
715401 |
}
|
|
|
715401 |
]
|
|
|
715401 |
diff --git a/pcs/test/test_constraints.py b/pcs/test/test_constraints.py
|
|
|
715401 |
index 3feaa053..df8594a5 100644
|
|
|
715401 |
--- a/pcs/test/test_constraints.py
|
|
|
715401 |
+++ b/pcs/test/test_constraints.py
|
|
|
715401 |
@@ -581,13 +581,13 @@ Ticket Constraints:
|
|
|
715401 |
ac(o, """\
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D5 D6 D7 require-all=true sequential=false (id:pcs_rsc_set_D5_D6_D7) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:pcs_rsc_set_D8_D9) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D5_D6_D7_set_D8_D9)
|
|
|
715401 |
- set D5 D6 (id:pcs_rsc_set_D5_D6) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D5_D6)
|
|
|
715401 |
- set D5 D6 action=stop role=Started (id:pcs_rsc_set_D5_D6-1) set D7 D8 action=promote role=Slave (id:pcs_rsc_set_D7_D8) set D8 D9 action=demote role=Master (id:pcs_rsc_set_D8_D9-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D5_D6_set_D7_D8_set_D8_D9)
|
|
|
715401 |
+ set D5 D6 D7 require-all=true sequential=false (id:colocation_set_D5D6D7_set) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:colocation_set_D5D6D7_set-1) setoptions score=INFINITY (id:colocation_set_D5D6D7)
|
|
|
715401 |
+ set D5 D6 (id:colocation_set_D5D6_set) setoptions score=INFINITY (id:colocation_set_D5D6)
|
|
|
715401 |
+ set D5 D6 action=stop role=Started (id:colocation_set_D5D6D7-1_set) set D7 D8 action=promote role=Slave (id:colocation_set_D5D6D7-1_set-1) set D8 D9 action=demote role=Master (id:colocation_set_D5D6D7-1_set-2) setoptions score=INFINITY (id:colocation_set_D5D6D7-1)
|
|
|
715401 |
""")
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
|
|
|
715401 |
- o, r = pcs(temp_cib, "constraint remove pcs_rsc_colocation_set_D5_D6")
|
|
|
715401 |
+ o, r = pcs(temp_cib, "constraint remove colocation_set_D5D6")
|
|
|
715401 |
ac(o,"")
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
|
|
|
715401 |
@@ -595,16 +595,16 @@ Colocation Constraints:
|
|
|
715401 |
ac(o, """\
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D5 D6 D7 require-all=true sequential=false (id:pcs_rsc_set_D5_D6_D7) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:pcs_rsc_set_D8_D9) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D5_D6_D7_set_D8_D9)
|
|
|
715401 |
- set D5 D6 action=stop role=Started (id:pcs_rsc_set_D5_D6-1) set D7 D8 action=promote role=Slave (id:pcs_rsc_set_D7_D8) set D8 D9 action=demote role=Master (id:pcs_rsc_set_D8_D9-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D5_D6_set_D7_D8_set_D8_D9)
|
|
|
715401 |
+ set D5 D6 D7 require-all=true sequential=false (id:colocation_set_D5D6D7_set) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:colocation_set_D5D6D7_set-1) setoptions score=INFINITY (id:colocation_set_D5D6D7)
|
|
|
715401 |
+ set D5 D6 action=stop role=Started (id:colocation_set_D5D6D7-1_set) set D7 D8 action=promote role=Slave (id:colocation_set_D5D6D7-1_set-1) set D8 D9 action=demote role=Master (id:colocation_set_D5D6D7-1_set-2) setoptions score=INFINITY (id:colocation_set_D5D6D7-1)
|
|
|
715401 |
""")
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
|
|
|
715401 |
o, r = pcs(temp_cib, "resource delete D5")
|
|
|
715401 |
ac(o, outdent(
|
|
|
715401 |
"""\
|
|
|
715401 |
- Removing D5 from set pcs_rsc_set_D5_D6_D7
|
|
|
715401 |
- Removing D5 from set pcs_rsc_set_D5_D6-1
|
|
|
715401 |
+ Removing D5 from set colocation_set_D5D6D7_set
|
|
|
715401 |
+ Removing D5 from set colocation_set_D5D6D7-1_set
|
|
|
715401 |
Deleting Resource - D5
|
|
|
715401 |
"""
|
|
|
715401 |
))
|
|
|
715401 |
@@ -613,20 +613,32 @@ Colocation Constraints:
|
|
|
715401 |
o, r = pcs(temp_cib, "resource delete D6")
|
|
|
715401 |
ac(o, outdent(
|
|
|
715401 |
"""\
|
|
|
715401 |
- Removing D6 from set pcs_rsc_set_D5_D6_D7
|
|
|
715401 |
- Removing D6 from set pcs_rsc_set_D5_D6-1
|
|
|
715401 |
- Removing set pcs_rsc_set_D5_D6-1
|
|
|
715401 |
+ Removing D6 from set colocation_set_D5D6D7_set
|
|
|
715401 |
+ Removing D6 from set colocation_set_D5D6D7-1_set
|
|
|
715401 |
+ Removing set colocation_set_D5D6D7-1_set
|
|
|
715401 |
Deleting Resource - D6
|
|
|
715401 |
"""
|
|
|
715401 |
))
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
|
|
|
715401 |
o, r = pcs(temp_cib, "constraint ref D7")
|
|
|
715401 |
- ac(o,"Resource: D7\n pcs_rsc_colocation_set_D5_D6_D7_set_D8_D9\n pcs_rsc_colocation_set_D5_D6_set_D7_D8_set_D8_D9\n")
|
|
|
715401 |
+ ac(o, outdent(
|
|
|
715401 |
+ """\
|
|
|
715401 |
+ Resource: D7
|
|
|
715401 |
+ colocation_set_D5D6D7
|
|
|
715401 |
+ colocation_set_D5D6D7-1
|
|
|
715401 |
+ """
|
|
|
715401 |
+ ))
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
|
|
|
715401 |
o, r = pcs(temp_cib, "constraint ref D8")
|
|
|
715401 |
- ac(o,"Resource: D8\n pcs_rsc_colocation_set_D5_D6_D7_set_D8_D9\n pcs_rsc_colocation_set_D5_D6_set_D7_D8_set_D8_D9\n")
|
|
|
715401 |
+ ac(o, outdent(
|
|
|
715401 |
+ """\
|
|
|
715401 |
+ Resource: D8
|
|
|
715401 |
+ colocation_set_D5D6D7
|
|
|
715401 |
+ colocation_set_D5D6D7-1
|
|
|
715401 |
+ """
|
|
|
715401 |
+ ))
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
|
|
|
715401 |
output, retValue = pcs(temp_cib, "constraint colocation set D1 D2 sequential=foo")
|
|
|
715401 |
@@ -852,12 +864,12 @@ Colocation Constraints:
|
|
|
715401 |
ac(o,"""\
|
|
|
715401 |
Ordering Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D5 D6 D7 require-all=true sequential=false (id:pcs_rsc_set_D5_D6_D7) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:pcs_rsc_set_D8_D9) (id:pcs_rsc_order_set_D5_D6_D7_set_D8_D9)
|
|
|
715401 |
- set D5 D6 (id:pcs_rsc_set_D5_D6) (id:pcs_rsc_order_set_D5_D6)
|
|
|
715401 |
- set D5 D6 action=stop role=Started (id:pcs_rsc_set_D5_D6-1) set D7 D8 action=promote role=Slave (id:pcs_rsc_set_D7_D8) set D8 D9 action=demote role=Master (id:pcs_rsc_set_D8_D9-1) (id:pcs_rsc_order_set_D5_D6_set_D7_D8_set_D8_D9)
|
|
|
715401 |
+ set D5 D6 D7 require-all=true sequential=false (id:order_set_D5D6D7_set) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:order_set_D5D6D7_set-1) (id:order_set_D5D6D7)
|
|
|
715401 |
+ set D5 D6 (id:order_set_D5D6_set) (id:order_set_D5D6)
|
|
|
715401 |
+ set D5 D6 action=stop role=Started (id:order_set_D5D6D7-1_set) set D7 D8 action=promote role=Slave (id:order_set_D5D6D7-1_set-1) set D8 D9 action=demote role=Master (id:order_set_D5D6D7-1_set-2) (id:order_set_D5D6D7-1)
|
|
|
715401 |
""")
|
|
|
715401 |
|
|
|
715401 |
- o, r = pcs(temp_cib, "constraint remove pcs_rsc_order_set_D5_D6")
|
|
|
715401 |
+ o, r = pcs(temp_cib, "constraint remove order_set_D5D6")
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
ac(o,"")
|
|
|
715401 |
|
|
|
715401 |
@@ -866,15 +878,15 @@ Ordering Constraints:
|
|
|
715401 |
ac(o,"""\
|
|
|
715401 |
Ordering Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D5 D6 D7 require-all=true sequential=false (id:pcs_rsc_set_D5_D6_D7) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:pcs_rsc_set_D8_D9) (id:pcs_rsc_order_set_D5_D6_D7_set_D8_D9)
|
|
|
715401 |
- set D5 D6 action=stop role=Started (id:pcs_rsc_set_D5_D6-1) set D7 D8 action=promote role=Slave (id:pcs_rsc_set_D7_D8) set D8 D9 action=demote role=Master (id:pcs_rsc_set_D8_D9-1) (id:pcs_rsc_order_set_D5_D6_set_D7_D8_set_D8_D9)
|
|
|
715401 |
+ set D5 D6 D7 require-all=true sequential=false (id:order_set_D5D6D7_set) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:order_set_D5D6D7_set-1) (id:order_set_D5D6D7)
|
|
|
715401 |
+ set D5 D6 action=stop role=Started (id:order_set_D5D6D7-1_set) set D7 D8 action=promote role=Slave (id:order_set_D5D6D7-1_set-1) set D8 D9 action=demote role=Master (id:order_set_D5D6D7-1_set-2) (id:order_set_D5D6D7-1)
|
|
|
715401 |
""")
|
|
|
715401 |
|
|
|
715401 |
o, r = pcs(temp_cib, "resource delete D5")
|
|
|
715401 |
ac(o, outdent(
|
|
|
715401 |
"""\
|
|
|
715401 |
- Removing D5 from set pcs_rsc_set_D5_D6_D7
|
|
|
715401 |
- Removing D5 from set pcs_rsc_set_D5_D6-1
|
|
|
715401 |
+ Removing D5 from set order_set_D5D6D7_set
|
|
|
715401 |
+ Removing D5 from set order_set_D5D6D7-1_set
|
|
|
715401 |
Deleting Resource - D5
|
|
|
715401 |
"""
|
|
|
715401 |
))
|
|
|
715401 |
@@ -883,9 +895,9 @@ Ordering Constraints:
|
|
|
715401 |
o, r = pcs(temp_cib, "resource delete D6")
|
|
|
715401 |
ac(o, outdent(
|
|
|
715401 |
"""\
|
|
|
715401 |
- Removing D6 from set pcs_rsc_set_D5_D6_D7
|
|
|
715401 |
- Removing D6 from set pcs_rsc_set_D5_D6-1
|
|
|
715401 |
- Removing set pcs_rsc_set_D5_D6-1
|
|
|
715401 |
+ Removing D6 from set order_set_D5D6D7_set
|
|
|
715401 |
+ Removing D6 from set order_set_D5D6D7-1_set
|
|
|
715401 |
+ Removing set order_set_D5D6D7-1_set
|
|
|
715401 |
Deleting Resource - D6
|
|
|
715401 |
"""
|
|
|
715401 |
))
|
|
|
715401 |
@@ -946,9 +958,9 @@ Error: invalid option 'foo', allowed options are: id, kind, symmetrical
|
|
|
715401 |
Location Constraints:
|
|
|
715401 |
Ordering Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D7 require-all=true sequential=false (id:pcs_rsc_set_D5_D6_D7) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:pcs_rsc_set_D8_D9) (id:pcs_rsc_order_set_D5_D6_D7_set_D8_D9)
|
|
|
715401 |
- set D7 D8 action=promote role=Slave (id:pcs_rsc_set_D7_D8) set D8 D9 action=demote role=Master (id:pcs_rsc_set_D8_D9-1) (id:pcs_rsc_order_set_D5_D6_set_D7_D8_set_D8_D9)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2) setoptions kind=Mandatory symmetrical=false (id:pcs_rsc_order_set_D1_D2)
|
|
|
715401 |
+ set D7 require-all=true sequential=false (id:order_set_D5D6D7_set) set D8 D9 action=start require-all=false role=Stopped sequential=true (id:order_set_D5D6D7_set-1) (id:order_set_D5D6D7)
|
|
|
715401 |
+ set D7 D8 action=promote role=Slave (id:order_set_D5D6D7-1_set-1) set D8 D9 action=demote role=Master (id:order_set_D5D6D7-1_set-2) (id:order_set_D5D6D7-1)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2_set) setoptions kind=Mandatory symmetrical=false (id:order_set_D1D2)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
@@ -1220,11 +1232,11 @@ Location Constraints:
|
|
|
715401 |
Ordering Constraints:
|
|
|
715401 |
start stateful1 then start dummy1 (kind:Mandatory) (id:order-stateful1-dummy1-mandatory)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set stateful1 dummy1 (id:pcs_rsc_set_stateful1_dummy1) (id:pcs_rsc_order_set_stateful1_dummy1)
|
|
|
715401 |
+ set stateful1 dummy1 (id:order_set_s1d1_set) (id:order_set_s1d1)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
stateful1 with dummy1 (score:INFINITY) (id:colocation-stateful1-dummy1-INFINITY)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set stateful1 dummy1 (id:pcs_rsc_set_stateful1_dummy1-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_stateful1_dummy1)
|
|
|
715401 |
+ set stateful1 dummy1 (id:colocation_set_s1d1_set) setoptions score=INFINITY (id:colocation_set_s1d1)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
@@ -1347,14 +1359,14 @@ Ordering Constraints:
|
|
|
715401 |
start stateful1-master then start dummy1 (kind:Mandatory) (id:order-stateful1-master-dummy1-mandatory)
|
|
|
715401 |
start dummy1 then start statefulG-master (kind:Mandatory) (id:order-dummy1-statefulG-master-mandatory)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set stateful1-master dummy1 (id:pcs_rsc_set_stateful1-master_dummy1) (id:pcs_rsc_order_set_stateful1_dummy1)
|
|
|
715401 |
- set dummy1 statefulG-master (id:pcs_rsc_set_dummy1_statefulG-master) (id:pcs_rsc_order_set_dummy1_statefulG)
|
|
|
715401 |
+ set stateful1-master dummy1 (id:order_set_s1d1_set) (id:order_set_s1d1)
|
|
|
715401 |
+ set dummy1 statefulG-master (id:order_set_d1sG_set) (id:order_set_d1sG)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
stateful1-master with dummy1 (score:INFINITY) (id:colocation-stateful1-master-dummy1-INFINITY)
|
|
|
715401 |
dummy1 with statefulG-master (score:INFINITY) (id:colocation-dummy1-statefulG-master-INFINITY)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 stateful1-master (id:pcs_rsc_set_dummy1_stateful1-master) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_stateful1)
|
|
|
715401 |
- set statefulG-master dummy1 (id:pcs_rsc_set_statefulG-master_dummy1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_statefulG_dummy1)
|
|
|
715401 |
+ set dummy1 stateful1-master (id:colocation_set_d1s1_set) setoptions score=INFINITY (id:colocation_set_d1s1)
|
|
|
715401 |
+ set statefulG-master dummy1 (id:colocation_set_sGd1_set) setoptions score=INFINITY (id:colocation_set_sGd1)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
@@ -1398,7 +1410,7 @@ Adding stateful1-master dummy1 (kind: Mandatory) (Options: first-action=start th
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set stateful1-master dummy1 (id:pcs_rsc_set_stateful1-master_dummy1) (id:pcs_rsc_order_set_stateful1_dummy1)
|
|
|
715401 |
+ set stateful1-master dummy1 (id:order_set_s1d1_set) (id:order_set_s1d1)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1407,7 +1419,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set stateful1-master dummy1 (id:pcs_rsc_set_stateful1-master_dummy1) (id:pcs_rsc_order_set_stateful1_dummy1)",
|
|
|
715401 |
+ " set stateful1-master dummy1 (id:order_set_s1d1_set) (id:order_set_s1d1)",
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1431,7 +1443,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set dummy1 stateful1-master (id:pcs_rsc_set_dummy1_stateful1-master) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_stateful1)
|
|
|
715401 |
+ set dummy1 stateful1-master (id:colocation_set_d1s1_set) setoptions score=INFINITY (id:colocation_set_d1s1)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1440,7 +1452,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set dummy1 stateful1-master (id:pcs_rsc_set_dummy1_stateful1-master) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_stateful1)",
|
|
|
715401 |
+ " set dummy1 stateful1-master (id:colocation_set_d1s1_set) setoptions score=INFINITY (id:colocation_set_d1s1)",
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1465,17 +1477,17 @@ Ordering Constraints:
|
|
|
715401 |
start dummy1 then start statefulG-master (kind:Mandatory) (id:order-dummy1-statefulG-master-mandatory)
|
|
|
715401 |
start stateful1-master then start dummy1 (kind:Mandatory) (id:order-stateful1-master-dummy1-mandatory-1)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set stateful1-master dummy1 (id:pcs_rsc_set_stateful1-master_dummy1) (id:pcs_rsc_order_set_stateful1_dummy1)
|
|
|
715401 |
- set dummy1 statefulG-master (id:pcs_rsc_set_dummy1_statefulG-master) (id:pcs_rsc_order_set_dummy1_statefulG)
|
|
|
715401 |
- set stateful1-master dummy1 (id:pcs_rsc_set_stateful1-master_dummy1-1) (id:pcs_rsc_order_set_stateful1_dummy1-1)
|
|
|
715401 |
+ set stateful1-master dummy1 (id:order_set_s1d1_set) (id:order_set_s1d1)
|
|
|
715401 |
+ set dummy1 statefulG-master (id:order_set_d1sG_set) (id:order_set_d1sG)
|
|
|
715401 |
+ set stateful1-master dummy1 (id:order_set_s1d1-1_set) (id:order_set_s1d1-1)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
stateful1-master with dummy1 (score:INFINITY) (id:colocation-stateful1-master-dummy1-INFINITY)
|
|
|
715401 |
dummy1 with statefulG-master (score:INFINITY) (id:colocation-dummy1-statefulG-master-INFINITY)
|
|
|
715401 |
stateful1-master with dummy1 (score:INFINITY) (id:colocation-stateful1-master-dummy1-INFINITY-1)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 stateful1-master (id:pcs_rsc_set_dummy1_stateful1-master) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_stateful1)
|
|
|
715401 |
- set statefulG-master dummy1 (id:pcs_rsc_set_statefulG-master_dummy1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_statefulG_dummy1)
|
|
|
715401 |
- set dummy1 stateful1-master (id:pcs_rsc_set_dummy1_stateful1-master-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_stateful1-1)
|
|
|
715401 |
+ set dummy1 stateful1-master (id:colocation_set_d1s1_set) setoptions score=INFINITY (id:colocation_set_d1s1)
|
|
|
715401 |
+ set statefulG-master dummy1 (id:colocation_set_sGd1_set) setoptions score=INFINITY (id:colocation_set_sGd1)
|
|
|
715401 |
+ set dummy1 stateful1-master (id:colocation_set_d1s1-1_set) setoptions score=INFINITY (id:colocation_set_d1s1-1)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
@@ -1587,11 +1599,11 @@ Location Constraints:
|
|
|
715401 |
Ordering Constraints:
|
|
|
715401 |
start dummy then start dummy1 (kind:Mandatory) (id:order-dummy-dummy1-mandatory)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 dummy (id:pcs_rsc_set_dummy1_dummy) (id:pcs_rsc_order_set_dummy1_dummy)
|
|
|
715401 |
+ set dummy1 dummy (id:order_set_d1dy_set) (id:order_set_d1dy)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
dummy with dummy1 (score:INFINITY) (id:colocation-dummy-dummy1-INFINITY)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 dummy (id:pcs_rsc_set_dummy1_dummy-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummy)
|
|
|
715401 |
+ set dummy1 dummy (id:colocation_set_d1dy_set) setoptions score=INFINITY (id:colocation_set_d1dy)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
assert r == 0
|
|
|
715401 |
@@ -1710,14 +1722,14 @@ Ordering Constraints:
|
|
|
715401 |
start dummy-clone then start dummy1 (kind:Mandatory) (id:order-dummy-clone-dummy1-mandatory)
|
|
|
715401 |
start dummy1 then start dummyG-clone (kind:Mandatory) (id:order-dummy1-dummyG-clone-mandatory)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone) (id:pcs_rsc_order_set_dummy1_dummy)
|
|
|
715401 |
- set dummyG-clone dummy1 (id:pcs_rsc_set_dummyG-clone_dummy1) (id:pcs_rsc_order_set_dummyG_dummy1)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:order_set_d1dy_set) (id:order_set_d1dy)
|
|
|
715401 |
+ set dummyG-clone dummy1 (id:order_set_dGd1_set) (id:order_set_dGd1)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
dummy-clone with dummy1 (score:INFINITY) (id:colocation-dummy-clone-dummy1-INFINITY)
|
|
|
715401 |
dummy1 with dummyG-clone (score:INFINITY) (id:colocation-dummy1-dummyG-clone-INFINITY)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummy)
|
|
|
715401 |
- set dummy1 dummyG-clone (id:pcs_rsc_set_dummy1_dummyG-clone) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummyG)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:colocation_set_d1dy_set) setoptions score=INFINITY (id:colocation_set_d1dy)
|
|
|
715401 |
+ set dummy1 dummyG-clone (id:colocation_set_d1dG_set) setoptions score=INFINITY (id:colocation_set_d1dG)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
@@ -1761,7 +1773,7 @@ Adding dummy-clone dummy1 (kind: Mandatory) (Options: first-action=start then-ac
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone) (id:pcs_rsc_order_set_dummy1_dummy)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:order_set_d1dy_set) (id:order_set_d1dy)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1770,7 +1782,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone) (id:pcs_rsc_order_set_dummy1_dummy)",
|
|
|
715401 |
+ " set dummy1 dummy-clone (id:order_set_d1dy_set) (id:order_set_d1dy)",
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1794,7 +1806,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummy)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:colocation_set_d1dy_set) setoptions score=INFINITY (id:colocation_set_d1dy)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1803,7 +1815,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummy)",
|
|
|
715401 |
+ " set dummy1 dummy-clone (id:colocation_set_d1dy_set) setoptions score=INFINITY (id:colocation_set_d1dy)",
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -1828,17 +1840,17 @@ Ordering Constraints:
|
|
|
715401 |
start dummy1 then start dummyG-clone (kind:Mandatory) (id:order-dummy1-dummyG-clone-mandatory)
|
|
|
715401 |
start dummy-clone then start dummy1 (kind:Mandatory) (id:order-dummy-clone-dummy1-mandatory-1)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone) (id:pcs_rsc_order_set_dummy1_dummy)
|
|
|
715401 |
- set dummyG-clone dummy1 (id:pcs_rsc_set_dummyG-clone_dummy1) (id:pcs_rsc_order_set_dummyG_dummy1)
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone-2) (id:pcs_rsc_order_set_dummy1_dummy-1)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:order_set_d1dy_set) (id:order_set_d1dy)
|
|
|
715401 |
+ set dummyG-clone dummy1 (id:order_set_dGd1_set) (id:order_set_dGd1)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:order_set_d1dy-1_set) (id:order_set_d1dy-1)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
dummy-clone with dummy1 (score:INFINITY) (id:colocation-dummy-clone-dummy1-INFINITY)
|
|
|
715401 |
dummy1 with dummyG-clone (score:INFINITY) (id:colocation-dummy1-dummyG-clone-INFINITY)
|
|
|
715401 |
dummy-clone with dummy1 (score:INFINITY) (id:colocation-dummy-clone-dummy1-INFINITY-1)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone-1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummy)
|
|
|
715401 |
- set dummy1 dummyG-clone (id:pcs_rsc_set_dummy1_dummyG-clone) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummyG)
|
|
|
715401 |
- set dummy1 dummy-clone (id:pcs_rsc_set_dummy1_dummy-clone-3) setoptions score=INFINITY (id:pcs_rsc_colocation_set_dummy1_dummy-1)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:colocation_set_d1dy_set) setoptions score=INFINITY (id:colocation_set_d1dy)
|
|
|
715401 |
+ set dummy1 dummyG-clone (id:colocation_set_d1dG_set) setoptions score=INFINITY (id:colocation_set_d1dG)
|
|
|
715401 |
+ set dummy1 dummy-clone (id:colocation_set_d1dy-1_set) setoptions score=INFINITY (id:colocation_set_d1dy-1)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
@@ -2420,14 +2432,14 @@ Ticket Constraints:
|
|
|
715401 |
output, returnVal = pcs("constraint order set D1 D2")
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2) (id:pcs_rsc_order_set_D1_D2)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2_set) (id:order_set_D1D2)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
output, returnVal = pcs("constraint order set D1 D2 --force")
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set D1 D2 (id:pcs_rsc_set_D1_D2) (id:pcs_rsc_order_set_D1_D2)",
|
|
|
715401 |
+ " set D1 D2 (id:order_set_D1D2_set) (id:order_set_D1D2)",
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -2438,14 +2450,14 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
output, returnVal = pcs("constraint order set D1 D2 set D5 D6")
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-2) set D5 D6 (id:pcs_rsc_set_D5_D6) (id:pcs_rsc_order_set_D1_D2_set_D5_D6)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2D5_set) set D5 D6 (id:order_set_D1D2D5_set-1) (id:order_set_D1D2D5)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
output, returnVal = pcs("constraint order set D1 D2 set D5 D6 --force")
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set D1 D2 (id:pcs_rsc_set_D1_D2-2) set D5 D6 (id:pcs_rsc_set_D5_D6) (id:pcs_rsc_order_set_D1_D2_set_D5_D6)",
|
|
|
715401 |
+ " set D1 D2 (id:order_set_D1D2D5_set) set D5 D6 (id:order_set_D1D2D5_set-1) (id:order_set_D1D2D5)",
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -2457,14 +2469,14 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
output, returnVal = pcs("constraint colocation set D1 D2")
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-4) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2)
|
|
|
715401 |
+ set D1 D2 (id:colocation_set_D1D2_set) setoptions score=INFINITY (id:colocation_set_D1D2)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
output, returnVal = pcs("constraint colocation set D1 D2 --force")
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set D1 D2 (id:pcs_rsc_set_D1_D2-4) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2)"
|
|
|
715401 |
+ " set D1 D2 (id:colocation_set_D1D2_set) setoptions score=INFINITY (id:colocation_set_D1D2)"
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -2475,7 +2487,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
output, returnVal = pcs("constraint colocation set D1 D2 set D5 D6")
|
|
|
715401 |
ac(output, """\
|
|
|
715401 |
Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-6) set D5 D6 (id:pcs_rsc_set_D5_D6-2) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2_set_D5_D6)
|
|
|
715401 |
+ set D1 D2 (id:colocation_set_D1D2D5_set) set D5 D6 (id:colocation_set_D1D2D5_set-1) setoptions score=INFINITY (id:colocation_set_D1D2D5)
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(1, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -2484,7 +2496,7 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
)
|
|
|
715401 |
ac(output, console_report(
|
|
|
715401 |
"Warning: duplicate constraint already exists",
|
|
|
715401 |
- " set D1 D2 (id:pcs_rsc_set_D1_D2-6) set D5 D6 (id:pcs_rsc_set_D5_D6-2) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2_set_D5_D6)"
|
|
|
715401 |
+ " set D1 D2 (id:colocation_set_D1D2D5_set) set D5 D6 (id:colocation_set_D1D2D5_set-1) setoptions score=INFINITY (id:colocation_set_D1D2D5)"
|
|
|
715401 |
))
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
|
|
|
715401 |
@@ -2503,18 +2515,18 @@ Error: duplicate constraint already exists, use --force to override
|
|
|
715401 |
Location Constraints:
|
|
|
715401 |
Ordering Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2) (id:pcs_rsc_order_set_D1_D2)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-1) (id:pcs_rsc_order_set_D1_D2-1)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-2) set D5 D6 (id:pcs_rsc_set_D5_D6) (id:pcs_rsc_order_set_D1_D2_set_D5_D6)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-3) set D5 D6 (id:pcs_rsc_set_D5_D6-1) (id:pcs_rsc_order_set_D1_D2_set_D5_D6-1)
|
|
|
715401 |
- set D6 D1 (id:pcs_rsc_set_D6_D1-1) (id:pcs_rsc_order_set_D6_D1)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2_set) (id:order_set_D1D2)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2-1_set) (id:order_set_D1D2-1)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2D5_set) set D5 D6 (id:order_set_D1D2D5_set-1) (id:order_set_D1D2D5)
|
|
|
715401 |
+ set D1 D2 (id:order_set_D1D2D5-1_set) set D5 D6 (id:order_set_D1D2D5-1_set-1) (id:order_set_D1D2D5-1)
|
|
|
715401 |
+ set D6 D1 (id:order_set_D6D1_set) (id:order_set_D6D1)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-4) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-5) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2-1)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-6) set D5 D6 (id:pcs_rsc_set_D5_D6-2) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2_set_D5_D6)
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-7) set D5 D6 (id:pcs_rsc_set_D5_D6-3) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D1_D2_set_D5_D6-1)
|
|
|
715401 |
- set D6 D1 (id:pcs_rsc_set_D6_D1) setoptions score=INFINITY (id:pcs_rsc_colocation_set_D6_D1)
|
|
|
715401 |
+ set D1 D2 (id:colocation_set_D1D2_set) setoptions score=INFINITY (id:colocation_set_D1D2)
|
|
|
715401 |
+ set D1 D2 (id:colocation_set_D1D2-1_set) setoptions score=INFINITY (id:colocation_set_D1D2-1)
|
|
|
715401 |
+ set D1 D2 (id:colocation_set_D1D2D5_set) set D5 D6 (id:colocation_set_D1D2D5_set-1) setoptions score=INFINITY (id:colocation_set_D1D2D5)
|
|
|
715401 |
+ set D1 D2 (id:colocation_set_D1D2D5-1_set) set D5 D6 (id:colocation_set_D1D2D5-1_set-1) setoptions score=INFINITY (id:colocation_set_D1D2D5-1)
|
|
|
715401 |
+ set D6 D1 (id:colocation_set_D6D1_set) setoptions score=INFINITY (id:colocation_set_D6D1)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
|
|
|
715401 |
@@ -2782,14 +2794,14 @@ Ordering Constraints:
|
|
|
715401 |
start D1 then start D2 (kind:Mandatory) (id:id7)
|
|
|
715401 |
start D2 then start D1 (kind:Optional) (id:id8)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2-1) (id:id5)
|
|
|
715401 |
- set D2 D1 (id:pcs_rsc_set_D2_D1-1) setoptions kind=Mandatory (id:id6)
|
|
|
715401 |
+ set D1 D2 (id:id5_set) (id:id5)
|
|
|
715401 |
+ set D2 D1 (id:id6_set) setoptions kind=Mandatory (id:id6)
|
|
|
715401 |
Colocation Constraints:
|
|
|
715401 |
D1 with D2 (score:INFINITY) (id:id1)
|
|
|
715401 |
D2 with D1 (score:100) (id:id2)
|
|
|
715401 |
Resource Sets:
|
|
|
715401 |
- set D1 D2 (id:pcs_rsc_set_D1_D2) setoptions score=INFINITY (id:id3)
|
|
|
715401 |
- set D2 D1 (id:pcs_rsc_set_D2_D1) setoptions score=100 (id:id4)
|
|
|
715401 |
+ set D1 D2 (id:id3_set) setoptions score=INFINITY (id:id3)
|
|
|
715401 |
+ set D2 D1 (id:id4_set) setoptions score=100 (id:id4)
|
|
|
715401 |
Ticket Constraints:
|
|
|
715401 |
""")
|
|
|
715401 |
self.assertEqual(0, returnVal)
|
|
|
715401 |
@@ -3527,10 +3539,8 @@ class BundleColocation(Bundle):
|
|
|
715401 |
"constraint colocation set B X",
|
|
|
715401 |
"""
|
|
|
715401 |
<constraints>
|
|
|
715401 |
-
|
|
|
715401 |
- score="INFINITY"
|
|
|
715401 |
- >
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_B_X">
|
|
|
715401 |
+ <rsc_colocation id="colocation_set_BBXX" score="INFINITY">
|
|
|
715401 |
+ <resource_set id="colocation_set_BBXX_set">
|
|
|
715401 |
<resource_ref id="B" />
|
|
|
715401 |
<resource_ref id="X" />
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -3553,10 +3563,8 @@ class BundleColocation(Bundle):
|
|
|
715401 |
"constraint colocation set R X --force",
|
|
|
715401 |
"""
|
|
|
715401 |
<constraints>
|
|
|
715401 |
-
|
|
|
715401 |
- score="INFINITY"
|
|
|
715401 |
- >
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_R_X">
|
|
|
715401 |
+ <rsc_colocation id="colocation_set_RRXX" score="INFINITY">
|
|
|
715401 |
+ <resource_set id="colocation_set_RRXX_set">
|
|
|
715401 |
<resource_ref id="R" />
|
|
|
715401 |
<resource_ref id="X" />
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -3615,8 +3623,8 @@ class BundleOrder(Bundle):
|
|
|
715401 |
"constraint order set B X",
|
|
|
715401 |
"""
|
|
|
715401 |
<constraints>
|
|
|
715401 |
- <rsc_order id="pcs_rsc_order_set_B_X">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_B_X">
|
|
|
715401 |
+ <rsc_order id="order_set_BBXX">
|
|
|
715401 |
+ <resource_set id="order_set_BBXX_set">
|
|
|
715401 |
<resource_ref id="B" />
|
|
|
715401 |
<resource_ref id="X" />
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -3639,8 +3647,8 @@ class BundleOrder(Bundle):
|
|
|
715401 |
"constraint order set R X --force",
|
|
|
715401 |
"""
|
|
|
715401 |
<constraints>
|
|
|
715401 |
- <rsc_order id="pcs_rsc_order_set_R_X">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_R_X">
|
|
|
715401 |
+ <rsc_order id="order_set_RRXX">
|
|
|
715401 |
+ <resource_set id="order_set_RRXX_set">
|
|
|
715401 |
<resource_ref id="R" />
|
|
|
715401 |
<resource_ref id="X" />
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
@@ -3693,8 +3701,8 @@ class BundleTicket(Bundle):
|
|
|
715401 |
"constraint ticket set B setoptions ticket=T",
|
|
|
715401 |
"""
|
|
|
715401 |
<constraints>
|
|
|
715401 |
- <rsc_ticket id="pcs_rsc_ticket_set_B" ticket="T">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_B">
|
|
|
715401 |
+ <rsc_ticket id="ticket_set_BB" ticket="T">
|
|
|
715401 |
+ <resource_set id="ticket_set_BB_set">
|
|
|
715401 |
<resource_ref id="B" />
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
</rsc_ticket>
|
|
|
715401 |
@@ -3716,8 +3724,8 @@ class BundleTicket(Bundle):
|
|
|
715401 |
"constraint ticket set R setoptions ticket=T --force",
|
|
|
715401 |
"""
|
|
|
715401 |
<constraints>
|
|
|
715401 |
- <rsc_ticket id="pcs_rsc_ticket_set_R" ticket="T">
|
|
|
715401 |
- <resource_set id="pcs_rsc_set_R">
|
|
|
715401 |
+ <rsc_ticket id="ticket_set_RR" ticket="T">
|
|
|
715401 |
+ <resource_set id="ticket_set_RR_set">
|
|
|
715401 |
<resource_ref id="R" />
|
|
|
715401 |
</resource_set>
|
|
|
715401 |
</rsc_ticket>
|
|
|
715401 |
--
|
|
|
715401 |
2.21.0
|
|
|
715401 |
|