Merge ~ltrager/maas:lp1749210_2.3 into maas:2.3

Proposed by Lee Trager
Status: Merged
Approved by: Lee Trager
Approved revision: 94e9881ae1c6088c8ab68265533cf1d7f4d69407
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~ltrager/maas:lp1749210_2.3
Merge into: maas:2.3
Diff against target: 53 lines (+18/-2)
3 files modified
src/maasserver/node_status.py (+1/-0)
src/maasserver/rpc/boot.py (+3/-2)
src/maasserver/rpc/tests/test_boot.py (+14/-0)
Reviewer Review Type Date Requested Status
Lee Trager (community) Approve
Review via email: mp+345791@code.launchpad.net

Commit message

Backport of 03beeaf LP:1749210 - Boot ephemeral environment when status is RESCUE_MODE

To post a comment you must log in.
Revision history for this message
Lee Trager (ltrager) wrote :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/maasserver/node_status.py b/src/maasserver/node_status.py
2index fd05b12..0c56527 100644
3--- a/src/maasserver/node_status.py
4+++ b/src/maasserver/node_status.py
5@@ -310,6 +310,7 @@ COMMISSIONING_LIKE_STATUSES = [
6 NODE_STATUS.COMMISSIONING,
7 NODE_STATUS.DISK_ERASING,
8 NODE_STATUS.ENTERING_RESCUE_MODE,
9+ NODE_STATUS.RESCUE_MODE,
10 NODE_STATUS.TESTING,
11 ]
12
13diff --git a/src/maasserver/rpc/boot.py b/src/maasserver/rpc/boot.py
14index 56bc51f..3e427f9 100644
15--- a/src/maasserver/rpc/boot.py
16+++ b/src/maasserver/rpc/boot.py
17@@ -243,8 +243,9 @@ def get_config(
18 purpose = machine.get_boot_purpose()
19
20 # Log the request into the event log for that machine.
21- if (machine.status == NODE_STATUS.ENTERING_RESCUE_MODE and
22- purpose == 'commissioning'):
23+ if (machine.status in [
24+ NODE_STATUS.ENTERING_RESCUE_MODE,
25+ NODE_STATUS.RESCUE_MODE] and purpose == 'commissioning'):
26 event_log_pxe_request(machine, 'rescue')
27 else:
28 event_log_pxe_request(machine, purpose)
29diff --git a/src/maasserver/rpc/tests/test_boot.py b/src/maasserver/rpc/tests/test_boot.py
30index 17898db..3bcc343 100644
31--- a/src/maasserver/rpc/tests/test_boot.py
32+++ b/src/maasserver/rpc/tests/test_boot.py
33@@ -429,6 +429,20 @@ class TestGetConfig(MAASServerTestCase):
34 self.assertThat(
35 event_log_pxe_request, MockCalledOnceWith(node, 'rescue'))
36
37+ def test__uses_rescue_mode_reboot_purpose(self):
38+ # Regression test for LP:1749210
39+ rack_controller = factory.make_RackController()
40+ local_ip = factory.make_ip_address()
41+ remote_ip = factory.make_ip_address()
42+ node = self.make_node(status=NODE_STATUS.RESCUE_MODE)
43+ mac = node.get_boot_interface().mac_address
44+ event_log_pxe_request = self.patch_autospec(
45+ boot_module, 'event_log_pxe_request')
46+ get_config(
47+ rack_controller.system_id, local_ip, remote_ip, mac=mac)
48+ self.assertThat(
49+ event_log_pxe_request, MockCalledOnceWith(node, 'rescue'))
50+
51 def test__calls_event_log_pxe_request(self):
52 rack_controller = factory.make_RackController()
53 local_ip = factory.make_ip_address()

Subscribers

People subscribed via source and target branches