Merge ~wyattrees/maas:refactor-heartbeat-interval into maas:master

Proposed by Wyatt Rees
Status: Merged
Approved by: Wyatt Rees
Approved revision: c48cfd125b669fd43d4be9cafd7ce2195cba368a
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~wyattrees/maas:refactor-heartbeat-interval
Merge into: maas:master
Diff against target: 47 lines (+8/-4)
2 files modified
src/maastemporalworker/workflow/msm.py (+3/-2)
src/tests/maastemporalworker/workflow/test_msm.py (+5/-2)
Reviewer Review Type Date Requested Status
Alexsander de Souza Approve
MAAS Lander Approve
Review via email: mp+466339@code.launchpad.net

Commit message

refactor: take site manager heartbeat interval from response header

To post a comment you must log in.
Revision history for this message
MAAS Lander (maas-lander) wrote :

UNIT TESTS
-b refactor-heartbeat-interval lp:~wyattrees/maas/+git/maas into -b master lp:~maas-committers/maas

STATUS: FAILED
LOG: http://maas-ci.internal:8080/job/maas-tester/5621/console
COMMIT: 078519d46300279075be8514a96d2d7784fbb6e1

review: Needs Fixing
c48cfd1... by Wyatt Rees

fix test

Revision history for this message
MAAS Lander (maas-lander) wrote :

UNIT TESTS
-b refactor-heartbeat-interval lp:~wyattrees/maas/+git/maas into -b master lp:~maas-committers/maas

STATUS: SUCCESS
COMMIT: c48cfd125b669fd43d4be9cafd7ce2195cba368a

review: Approve
Revision history for this message
Alexsander de Souza (alexsander-souza) wrote :

+1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/maastemporalworker/workflow/msm.py b/src/maastemporalworker/workflow/msm.py
2index 23dd0e0..a6b1ebb 100644
3--- a/src/maastemporalworker/workflow/msm.py
4+++ b/src/maastemporalworker/workflow/msm.py
5@@ -227,8 +227,9 @@ class MSMConnectorActivity(ActivityBase):
6 ) as response:
7 match response.status:
8 case 200:
9- data = await response.json()
10- return int(data["heartbeat_interval_seconds"])
11+ return int(
12+ response.headers["MSM-Heartbeat-Interval-Seconds"]
13+ )
14 case 401 | 404:
15 activity.logger.error(
16 "Enrolment cancelled by MSM, aborting"
17diff --git a/src/tests/maastemporalworker/workflow/test_msm.py b/src/tests/maastemporalworker/workflow/test_msm.py
18index 3f9abc9..a61f446 100644
19--- a/src/tests/maastemporalworker/workflow/test_msm.py
20+++ b/src/tests/maastemporalworker/workflow/test_msm.py
21@@ -91,6 +91,7 @@ class TestMSMActivities:
22 status: int,
23 reason: str,
24 body: dict[str, Any] | None = None,
25+ headers: dict[str, Any] | None = None,
26 ) -> Mock:
27 mock_response = mocker.create_autospec(ClientResponse)
28 type(mock_response).ok = PropertyMock(return_value=ok)
29@@ -98,6 +99,8 @@ class TestMSMActivities:
30 type(mock_response).reason = PropertyMock(return_value=reason)
31 if body:
32 mock_response.json.return_value = body
33+ if headers:
34+ type(mock_response).headers = PropertyMock(return_value=headers)
35 mocked_session.post.return_value.__aenter__.return_value = (
36 mock_response
37 )
38@@ -238,8 +241,8 @@ class TestMSMActivities:
39 True,
40 200,
41 "",
42- body={
43- "heartbeat_interval_seconds": 300,
44+ headers={
45+ "MSM-Heartbeat-Interval-Seconds": 300,
46 },
47 )
48

Subscribers

People subscribed via source and target branches