Merge ~cgrabowski/maas:remove_new_filter_list_from_controller_and_device into maas:master
- Git
- lp:~cgrabowski/maas
- remove_new_filter_list_from_controller_and_device
- Merge into master
Status: | Merged |
---|---|
Approved by: | Christian Grabowski |
Approved revision: | f2d22a8662281f29812b288f2ba1e26631b47f3a |
Merge reported by: | MAAS Lander |
Merged at revision: | not available |
Proposed branch: | ~cgrabowski/maas:remove_new_filter_list_from_controller_and_device |
Merge into: | maas:master |
Diff against target: |
291 lines (+33/-42) 6 files modified
src/maasserver/websockets/base.py (+2/-2) src/maasserver/websockets/handlers/machine.py (+1/-0) src/maasserver/websockets/handlers/node.py (+1/-1) src/maasserver/websockets/handlers/tests/test_controller.py (+19/-29) src/maasserver/websockets/handlers/tests/test_device.py (+5/-5) src/maasserver/websockets/tests/test_base.py (+5/-5) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
MAAS Lander | Approve | ||
Alexsander de Souza | Approve | ||
Review via email: mp+427513@code.launchpad.net |
Commit message
revert units for device and controller handlers to original list schema
only use paginated list on Machine handler
Description of the change
MAAS Lander (maas-lander) wrote : | # |
UNIT TESTS
-b remove_
STATUS: FAILED
LOG: http://
COMMIT: 8fbba2997a577d5
Alexsander de Souza (alexsander-souza) wrote : | # |
+1
MAAS Lander (maas-lander) wrote : | # |
UNIT TESTS
-b remove_
STATUS: FAILED
LOG: http://
COMMIT: e234c1c92487366
Christian Grabowski (cgrabowski) wrote : | # |
jenkins: !test
MAAS Lander (maas-lander) wrote : | # |
UNIT TESTS
-b remove_
STATUS: SUCCESS
COMMIT: e234c1c92487366
MAAS Lander (maas-lander) wrote : | # |
LANDING
-b remove_
STATUS: FAILED BUILD
LOG: http://
MAAS Lander (maas-lander) wrote : | # |
UNIT TESTS
-b remove_
STATUS: SUCCESS
COMMIT: f2d22a8662281f2
Update scan failed
At least one of the branches involved have failed to scan. You can manually schedule a rescan if required.
Preview Diff
1 | diff --git a/src/maasserver/websockets/base.py b/src/maasserver/websockets/base.py | |||
2 | index e0526ab..2f4d98f 100644 | |||
3 | --- a/src/maasserver/websockets/base.py | |||
4 | +++ b/src/maasserver/websockets/base.py | |||
5 | @@ -116,7 +116,7 @@ class HandlerOptions: | |||
6 | 116 | view_permission = None | 116 | view_permission = None |
7 | 117 | edit_permission = None | 117 | edit_permission = None |
8 | 118 | delete_permission = None | 118 | delete_permission = None |
10 | 119 | use_new_schema = False | 119 | use_paginated_list = False |
11 | 120 | dft_page_size = 100 | 120 | dft_page_size = 100 |
12 | 121 | 121 | ||
13 | 122 | def __new__(cls, meta=None): | 122 | def __new__(cls, meta=None): |
14 | @@ -525,7 +525,7 @@ class Handler(metaclass=HandlerMetaclass): | |||
15 | 525 | if "filter" in params: | 525 | if "filter" in params: |
16 | 526 | qs_filter = self._filter(qs_filter, "list", params["filter"]) | 526 | qs_filter = self._filter(qs_filter, "list", params["filter"]) |
17 | 527 | 527 | ||
19 | 528 | if self._meta.use_new_schema: | 528 | if self._meta.use_paginated_list: |
20 | 529 | return self._build_list_grouping(qs_filter, params) | 529 | return self._build_list_grouping(qs_filter, params) |
21 | 530 | else: | 530 | else: |
22 | 531 | return self._build_list_simple(qs_filter, params) | 531 | return self._build_list_simple(qs_filter, params) |
23 | diff --git a/src/maasserver/websockets/handlers/machine.py b/src/maasserver/websockets/handlers/machine.py | |||
24 | index a64d51d..c7e0915 100644 | |||
25 | --- a/src/maasserver/websockets/handlers/machine.py | |||
26 | +++ b/src/maasserver/websockets/handlers/machine.py | |||
27 | @@ -257,6 +257,7 @@ class MachineHandler(NodeHandler): | |||
28 | 257 | view_permission = NodePermission.view | 257 | view_permission = NodePermission.view |
29 | 258 | edit_permission = NodePermission.admin | 258 | edit_permission = NodePermission.admin |
30 | 259 | delete_permission = NodePermission.admin | 259 | delete_permission = NodePermission.admin |
31 | 260 | use_paginated_list = True | ||
32 | 260 | 261 | ||
33 | 261 | def __init__(self, *args, **kwargs): | 262 | def __init__(self, *args, **kwargs): |
34 | 262 | super().__init__(*args, **kwargs) | 263 | super().__init__(*args, **kwargs) |
35 | diff --git a/src/maasserver/websockets/handlers/node.py b/src/maasserver/websockets/handlers/node.py | |||
36 | index 77b6dfc..b422758 100644 | |||
37 | --- a/src/maasserver/websockets/handlers/node.py | |||
38 | +++ b/src/maasserver/websockets/handlers/node.py | |||
39 | @@ -158,7 +158,7 @@ class NodeHandler(TimestampedModelHandler): | |||
40 | 158 | pk = "system_id" | 158 | pk = "system_id" |
41 | 159 | bulk_pk = "system_ids" | 159 | bulk_pk = "system_ids" |
42 | 160 | pk_type = str | 160 | pk_type = str |
44 | 161 | use_new_schema = True | 161 | use_paginated_list = False |
45 | 162 | 162 | ||
46 | 163 | def __init__(self, user, cache, request): | 163 | def __init__(self, user, cache, request): |
47 | 164 | super().__init__(user, cache, request) | 164 | super().__init__(user, cache, request) |
48 | diff --git a/src/maasserver/websockets/handlers/tests/test_controller.py b/src/maasserver/websockets/handlers/tests/test_controller.py | |||
49 | index f961ede..692f01d 100644 | |||
50 | --- a/src/maasserver/websockets/handlers/tests/test_controller.py | |||
51 | +++ b/src/maasserver/websockets/handlers/tests/test_controller.py | |||
52 | @@ -38,8 +38,7 @@ class TestControllerHandler(MAASServerTestCase): | |||
53 | 38 | 38 | ||
54 | 39 | handler = ControllerHandler(owner, {}, None) | 39 | handler = ControllerHandler(owner, {}, None) |
55 | 40 | list_results = handler.list({}) | 40 | list_results = handler.list({}) |
58 | 41 | list_items = list_results["groups"][0]["items"] | 41 | result = {entry["id"]: entry["vlans_ha"] for entry in list_results} |
57 | 42 | result = {entry["id"]: entry["vlans_ha"] for entry in list_items} | ||
59 | 43 | self.assertEqual( | 42 | self.assertEqual( |
60 | 44 | result, | 43 | result, |
61 | 45 | { | 44 | { |
62 | @@ -53,13 +52,12 @@ class TestControllerHandler(MAASServerTestCase): | |||
63 | 53 | handler = ControllerHandler(owner, {}, None) | 52 | handler = ControllerHandler(owner, {}, None) |
64 | 54 | node = factory.make_RackController(owner=owner) | 53 | node = factory.make_RackController(owner=owner) |
65 | 55 | list_results = handler.list({}) | 54 | list_results = handler.list({}) |
68 | 56 | list_items = list_results["groups"][0]["items"] | 55 | self.assertEqual(1, len(list_results)) |
67 | 57 | self.assertEqual(1, len(list_items)) | ||
69 | 58 | self.assertEqual( | 56 | self.assertEqual( |
71 | 59 | NODE_TYPE.RACK_CONTROLLER, list_items[0].get("node_type") | 57 | NODE_TYPE.RACK_CONTROLLER, list_results[0].get("node_type") |
72 | 60 | ) | 58 | ) |
73 | 61 | self.assertEqual( | 59 | self.assertEqual( |
75 | 62 | list_items[0].get("last_image_sync"), | 60 | list_results[0].get("last_image_sync"), |
76 | 63 | dehydrate_datetime(node.last_image_sync), | 61 | dehydrate_datetime(node.last_image_sync), |
77 | 64 | ) | 62 | ) |
78 | 65 | data = handler.get({"system_id": node.system_id}) | 63 | data = handler.get({"system_id": node.system_id}) |
79 | @@ -73,12 +71,11 @@ class TestControllerHandler(MAASServerTestCase): | |||
80 | 73 | handler = ControllerHandler(owner, {}, None) | 71 | handler = ControllerHandler(owner, {}, None) |
81 | 74 | node = factory.make_RackController(owner=owner, last_image_sync=None) | 72 | node = factory.make_RackController(owner=owner, last_image_sync=None) |
82 | 75 | list_results = handler.list({}) | 73 | list_results = handler.list({}) |
85 | 76 | list_items = list_results["groups"][0]["items"] | 74 | self.assertEqual(1, len(list_results)) |
84 | 77 | self.assertEqual(1, len(list_items)) | ||
86 | 78 | self.assertEqual( | 75 | self.assertEqual( |
88 | 79 | NODE_TYPE.RACK_CONTROLLER, list_items[0].get("node_type") | 76 | NODE_TYPE.RACK_CONTROLLER, list_results[0].get("node_type") |
89 | 80 | ) | 77 | ) |
91 | 81 | self.assertIsNone(list_items[0].get("last_image_sync")) | 78 | self.assertIsNone(list_results[0].get("last_image_sync")) |
92 | 82 | data = handler.get({"system_id": node.system_id}) | 79 | data = handler.get({"system_id": node.system_id}) |
93 | 83 | self.assertIsNone(data.get("last_image_sync")) | 80 | self.assertIsNone(data.get("last_image_sync")) |
94 | 84 | 81 | ||
95 | @@ -94,10 +91,9 @@ class TestControllerHandler(MAASServerTestCase): | |||
96 | 94 | device_with_parent.save() | 91 | device_with_parent.save() |
97 | 95 | node = factory.make_RackController(owner=owner) | 92 | node = factory.make_RackController(owner=owner) |
98 | 96 | list_results = handler.list({}) | 93 | list_results = handler.list({}) |
101 | 97 | list_items = list_results["groups"][0]["items"] | 94 | self.assertEqual(1, len(list_results)) |
100 | 98 | self.assertEqual(1, len(list_items)) | ||
102 | 99 | self.assertEqual( | 95 | self.assertEqual( |
104 | 100 | NODE_TYPE.RACK_CONTROLLER, list_items[0].get("node_type") | 96 | NODE_TYPE.RACK_CONTROLLER, list_results[0].get("node_type") |
105 | 101 | ) | 97 | ) |
106 | 102 | 98 | ||
107 | 103 | def test_list_num_queries_is_the_expected_number(self): | 99 | def test_list_num_queries_is_the_expected_number(self): |
108 | @@ -250,8 +246,7 @@ class TestControllerHandler(MAASServerTestCase): | |||
109 | 250 | handler = ControllerHandler(owner, {}, None) | 246 | handler = ControllerHandler(owner, {}, None) |
110 | 251 | factory.make_RackController() | 247 | factory.make_RackController() |
111 | 252 | list_results = handler.list({}) | 248 | list_results = handler.list({}) |
114 | 253 | list_items = list_results["groups"][0]["items"] | 249 | self.assertEqual(list_results[0]["versions"], {}) |
113 | 254 | self.assertEqual(list_items[0]["versions"], {}) | ||
115 | 255 | 250 | ||
116 | 256 | def test_dehydrate_with_versions_snap(self): | 251 | def test_dehydrate_with_versions_snap(self): |
117 | 257 | owner = factory.make_admin() | 252 | owner = factory.make_admin() |
118 | @@ -271,9 +266,8 @@ class TestControllerHandler(MAASServerTestCase): | |||
119 | 271 | ) | 266 | ) |
120 | 272 | ControllerInfo.objects.set_versions_info(rack, versions) | 267 | ControllerInfo.objects.set_versions_info(rack, versions) |
121 | 273 | list_results = handler.list({}) | 268 | list_results = handler.list({}) |
122 | 274 | list_items = list_results["groups"][0]["items"] | ||
123 | 275 | self.assertEqual( | 269 | self.assertEqual( |
125 | 276 | list_items[0]["versions"], | 270 | list_results[0]["versions"], |
126 | 277 | { | 271 | { |
127 | 278 | "install_type": "snap", | 272 | "install_type": "snap", |
128 | 279 | "current": { | 273 | "current": { |
129 | @@ -307,9 +301,8 @@ class TestControllerHandler(MAASServerTestCase): | |||
130 | 307 | ) | 301 | ) |
131 | 308 | ControllerInfo.objects.set_versions_info(rack, versions) | 302 | ControllerInfo.objects.set_versions_info(rack, versions) |
132 | 309 | list_results = handler.list({}) | 303 | list_results = handler.list({}) |
133 | 310 | list_items = list_results["groups"][0]["items"] | ||
134 | 311 | self.assertEqual( | 304 | self.assertEqual( |
136 | 312 | list_items[0]["versions"], | 305 | list_results[0]["versions"], |
137 | 313 | { | 306 | { |
138 | 314 | "install_type": "deb", | 307 | "install_type": "deb", |
139 | 315 | "current": { | 308 | "current": { |
140 | @@ -337,9 +330,8 @@ class TestControllerHandler(MAASServerTestCase): | |||
141 | 337 | ) | 330 | ) |
142 | 338 | ControllerInfo.objects.set_versions_info(rack, versions) | 331 | ControllerInfo.objects.set_versions_info(rack, versions) |
143 | 339 | list_results = handler.list({}) | 332 | list_results = handler.list({}) |
144 | 340 | list_items = list_results["groups"][0]["items"] | ||
145 | 341 | self.assertEqual( | 333 | self.assertEqual( |
147 | 342 | list_items[0]["versions"], | 334 | list_results[0]["versions"], |
148 | 343 | { | 335 | { |
149 | 344 | "install_type": "snap", | 336 | "install_type": "snap", |
150 | 345 | "current": { | 337 | "current": { |
151 | @@ -376,9 +368,8 @@ class TestControllerHandler(MAASServerTestCase): | |||
152 | 376 | ), | 368 | ), |
153 | 377 | ) | 369 | ) |
154 | 378 | list_results = handler.list({}) | 370 | list_results = handler.list({}) |
155 | 379 | list_items = list_results["groups"][0]["items"] | ||
156 | 380 | self.assertEqual( | 371 | self.assertEqual( |
158 | 381 | list_items[0]["versions"], | 372 | list_results[0]["versions"], |
159 | 382 | { | 373 | { |
160 | 383 | "install_type": "snap", | 374 | "install_type": "snap", |
161 | 384 | "current": { | 375 | "current": { |
162 | @@ -416,8 +407,7 @@ class TestControllerHandler(MAASServerTestCase): | |||
163 | 416 | ), | 407 | ), |
164 | 417 | ) | 408 | ) |
165 | 418 | list_results = handler.list({}) | 409 | list_results = handler.list({}) |
168 | 419 | list_items = list_results["groups"][0]["items"] | 410 | versions = list_results[0]["versions"] |
167 | 420 | versions = list_items[0]["versions"] | ||
169 | 421 | self.assertEqual(versions["issues"], ["different-cohort"]) | 411 | self.assertEqual(versions["issues"], ["different-cohort"]) |
170 | 422 | 412 | ||
171 | 423 | def test_dehydrate_with_versions_empty_origin(self): | 413 | def test_dehydrate_with_versions_empty_origin(self): |
172 | @@ -432,8 +422,7 @@ class TestControllerHandler(MAASServerTestCase): | |||
173 | 432 | ) | 422 | ) |
174 | 433 | ControllerInfo.objects.set_versions_info(rack, versions) | 423 | ControllerInfo.objects.set_versions_info(rack, versions) |
175 | 434 | list_results = handler.list({}) | 424 | list_results = handler.list({}) |
178 | 435 | [list_item] = list_results["groups"][0]["items"] | 425 | self.assertEqual(list_results[0]["versions"]["origin"], "") |
177 | 436 | self.assertEqual(list_item["versions"]["origin"], "") | ||
179 | 437 | 426 | ||
180 | 438 | def test_dehydrate_includes_tags(self): | 427 | def test_dehydrate_includes_tags(self): |
181 | 439 | owner = factory.make_admin() | 428 | owner = factory.make_admin() |
182 | @@ -442,8 +431,9 @@ class TestControllerHandler(MAASServerTestCase): | |||
183 | 442 | tags = [factory.make_Tag(definition="") for _ in range(3)] | 431 | tags = [factory.make_Tag(definition="") for _ in range(3)] |
184 | 443 | region.tags.set(tags) | 432 | region.tags.set(tags) |
185 | 444 | list_results = handler.list({}) | 433 | list_results = handler.list({}) |
188 | 445 | [list_item] = list_results["groups"][0]["items"] | 434 | self.assertCountEqual( |
189 | 446 | self.assertCountEqual(list_item["tags"], [tag.id for tag in tags]) | 435 | list_results[0]["tags"], [tag.id for tag in tags] |
190 | 436 | ) | ||
191 | 447 | 437 | ||
192 | 448 | def test_register_info_non_admin(self): | 438 | def test_register_info_non_admin(self): |
193 | 449 | user = factory.make_User() | 439 | user = factory.make_User() |
194 | diff --git a/src/maasserver/websockets/handlers/tests/test_device.py b/src/maasserver/websockets/handlers/tests/test_device.py | |||
195 | index b7aa50d..e22748b 100644 | |||
196 | --- a/src/maasserver/websockets/handlers/tests/test_device.py | |||
197 | +++ b/src/maasserver/websockets/handlers/tests/test_device.py | |||
198 | @@ -302,7 +302,7 @@ class TestDeviceHandler(MAASTransactionServerTestCase): | |||
199 | 302 | list_results = handler.list({}) | 302 | list_results = handler.list({}) |
200 | 303 | self.assertCountEqual( | 303 | self.assertCountEqual( |
201 | 304 | [self.dehydrate_device(device, owner, for_list=True)], | 304 | [self.dehydrate_device(device, owner, for_list=True)], |
203 | 305 | list_results["groups"][0]["items"], | 305 | list_results, |
204 | 306 | ) | 306 | ) |
205 | 307 | 307 | ||
206 | 308 | @transactional | 308 | @transactional |
207 | @@ -318,7 +318,7 @@ class TestDeviceHandler(MAASTransactionServerTestCase): | |||
208 | 318 | list_results = handler.list({}) | 318 | list_results = handler.list({}) |
209 | 319 | self.assertCountEqual( | 319 | self.assertCountEqual( |
210 | 320 | [self.dehydrate_device(device, owner, for_list=True)], | 320 | [self.dehydrate_device(device, owner, for_list=True)], |
212 | 321 | list_results["groups"][0]["items"], | 321 | list_results, |
213 | 322 | ) | 322 | ) |
214 | 323 | 323 | ||
215 | 324 | @transactional | 324 | @transactional |
216 | @@ -331,7 +331,7 @@ class TestDeviceHandler(MAASTransactionServerTestCase): | |||
217 | 331 | list_results = handler.list({}) | 331 | list_results = handler.list({}) |
218 | 332 | self.assertCountEqual( | 332 | self.assertCountEqual( |
219 | 333 | [self.dehydrate_device(device, owner, for_list=True)], | 333 | [self.dehydrate_device(device, owner, for_list=True)], |
221 | 334 | list_results["groups"][0]["items"], | 334 | list_results, |
222 | 335 | ) | 335 | ) |
223 | 336 | 336 | ||
224 | 337 | @transactional | 337 | @transactional |
225 | @@ -354,7 +354,7 @@ class TestDeviceHandler(MAASTransactionServerTestCase): | |||
226 | 354 | # and slowing down the client waiting for the response. | 354 | # and slowing down the client waiting for the response. |
227 | 355 | self.assertEqual( | 355 | self.assertEqual( |
228 | 356 | query_10_count, | 356 | query_10_count, |
230 | 357 | 13, | 357 | 11, |
231 | 358 | "Number of queries has changed; make sure this is expected.", | 358 | "Number of queries has changed; make sure this is expected.", |
232 | 359 | ) | 359 | ) |
233 | 360 | 360 | ||
234 | @@ -394,7 +394,7 @@ class TestDeviceHandler(MAASTransactionServerTestCase): | |||
235 | 394 | list_results = handler.list({}) | 394 | list_results = handler.list({}) |
236 | 395 | self.assertCountEqual( | 395 | self.assertCountEqual( |
237 | 396 | [self.dehydrate_device(device, user, for_list=True)], | 396 | [self.dehydrate_device(device, user, for_list=True)], |
239 | 397 | list_results["groups"][0]["items"], | 397 | list_results, |
240 | 398 | ) | 398 | ) |
241 | 399 | 399 | ||
242 | 400 | @transactional | 400 | @transactional |
243 | diff --git a/src/maasserver/websockets/tests/test_base.py b/src/maasserver/websockets/tests/test_base.py | |||
244 | index 989c69d..aa3697a 100644 | |||
245 | --- a/src/maasserver/websockets/tests/test_base.py | |||
246 | +++ b/src/maasserver/websockets/tests/test_base.py | |||
247 | @@ -493,7 +493,7 @@ class TestHandler(MAASServerTestCase, FakeNodesHandlerMixin): | |||
248 | 493 | nodes = [factory.make_Node() for _ in range(5)] | 493 | nodes = [factory.make_Node() for _ in range(5)] |
249 | 494 | handler = self.make_nodes_handler( | 494 | handler = self.make_nodes_handler( |
250 | 495 | list_fields=["system_id"], | 495 | list_fields=["system_id"], |
252 | 496 | use_new_schema=True, | 496 | use_paginated_list=True, |
253 | 497 | ) | 497 | ) |
254 | 498 | output = { | 498 | output = { |
255 | 499 | "count": 5, | 499 | "count": 5, |
256 | @@ -522,7 +522,7 @@ class TestHandler(MAASServerTestCase, FakeNodesHandlerMixin): | |||
257 | 522 | nodes = [factory.make_Node() for _ in range(5)] | 522 | nodes = [factory.make_Node() for _ in range(5)] |
258 | 523 | handler = self.make_nodes_handler( | 523 | handler = self.make_nodes_handler( |
259 | 524 | list_fields=["system_id"], | 524 | list_fields=["system_id"], |
261 | 525 | use_new_schema=True, | 525 | use_paginated_list=True, |
262 | 526 | ) | 526 | ) |
263 | 527 | output = { | 527 | output = { |
264 | 528 | "count": 5, | 528 | "count": 5, |
265 | @@ -551,7 +551,7 @@ class TestHandler(MAASServerTestCase, FakeNodesHandlerMixin): | |||
266 | 551 | nodes = [factory.make_Node() for _ in range(5)] | 551 | nodes = [factory.make_Node() for _ in range(5)] |
267 | 552 | handler = self.make_nodes_handler( | 552 | handler = self.make_nodes_handler( |
268 | 553 | list_fields=["system_id"], | 553 | list_fields=["system_id"], |
270 | 554 | use_new_schema=True, | 554 | use_paginated_list=True, |
271 | 555 | ) | 555 | ) |
272 | 556 | output = { | 556 | output = { |
273 | 557 | "count": 5, | 557 | "count": 5, |
274 | @@ -580,7 +580,7 @@ class TestHandler(MAASServerTestCase, FakeNodesHandlerMixin): | |||
275 | 580 | nodes = [factory.make_Node() for _ in range(5)] | 580 | nodes = [factory.make_Node() for _ in range(5)] |
276 | 581 | handler = self.make_nodes_handler( | 581 | handler = self.make_nodes_handler( |
277 | 582 | list_fields=["system_id"], | 582 | list_fields=["system_id"], |
279 | 583 | use_new_schema=True, | 583 | use_paginated_list=True, |
280 | 584 | ) | 584 | ) |
281 | 585 | output = { | 585 | output = { |
282 | 586 | "count": 5, | 586 | "count": 5, |
283 | @@ -1021,7 +1021,7 @@ class TestHandler(MAASServerTestCase, FakeNodesHandlerMixin): | |||
284 | 1021 | 1021 | ||
285 | 1022 | class TestHandlerGrouping(MAASServerTestCase, FakeNodesHandlerMixin): | 1022 | class TestHandlerGrouping(MAASServerTestCase, FakeNodesHandlerMixin): |
286 | 1023 | def make_nodes_handler(self, **kwargs): | 1023 | def make_nodes_handler(self, **kwargs): |
288 | 1024 | return super().make_nodes_handler(use_new_schema=True, **kwargs) | 1024 | return super().make_nodes_handler(use_paginated_list=True, **kwargs) |
289 | 1025 | 1025 | ||
290 | 1026 | def test_group_simple(self): | 1026 | def test_group_simple(self): |
291 | 1027 | nodes_ready = [ | 1027 | nodes_ready = [ |
UNIT TESTS new_filter_ list_from_ controller_ and_device lp:~cgrabowski/maas/+git/maas into -b master lp:~maas-committers/maas
-b remove_
STATUS: FAILED maas-ci. internal: 8080/job/ maas-tester/ 190/consoleText 1d581b87bbbdacb 7f21057d00
LOG: http://
COMMIT: 9e742872cb91592