Merge ~seyeongkim/maas:lp1999827_3.1 into maas:3.1

Proposed by Seyeong Kim
Status: Merged
Approved by: Alberto Donato
Approved revision: 1db89db186136160aba825ea9ca36c1fd8be2620
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~seyeongkim/maas:lp1999827_3.1
Merge into: maas:3.1
Diff against target: 54 lines (+31/-1)
2 files modified
src/maasserver/models/staticipaddress.py (+2/-1)
src/maasserver/models/tests/test_staticipaddress.py (+29/-0)
Reviewer Review Type Date Requested Status
MAAS Lander Approve
MAAS Maintainers Pending
Review via email: mp+450087@code.launchpad.net

Commit message

Fix reverse order ip address

When controller's nic has several ip and virtual ip,
SQL collect them reverse order. this fixes it.

(cherry picked from commit cfe8cf628f7189a84a98d74b3c079d744f1c1b5f)

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

UNIT TESTS
-b lp1999827_3.1 lp:~seyeongkim/maas/+git/maas into -b 3.1 lp:~maas-committers/maas

STATUS: FAILED
LOG: http://maas-ci.internal:8080/job/maas-tester/3393/console
COMMIT: 4371db5a5440df64c14dd53d31517ce8a3323599

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

UNIT TESTS
-b lp1999827_3.1 lp:~seyeongkim/maas/+git/maas into -b 3.1 lp:~maas-committers/maas

STATUS: FAILED
LOG: http://maas-ci.internal:8080/job/maas-tester/3396/console
COMMIT: 3632f459c5112f12e52144eb059b922eff540497

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

UNIT TESTS
-b lp1999827_3.1 lp:~seyeongkim/maas/+git/maas into -b 3.1 lp:~maas-committers/maas

STATUS: FAILED
LOG: http://maas-ci.internal:8080/job/maas-tester/3412/console
COMMIT: 07a0b45d7f92358f0d8bec8b4ca42506e27c7138

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

UNIT TESTS
-b lp1999827_3.1 lp:~seyeongkim/maas/+git/maas into -b 3.1 lp:~maas-committers/maas

STATUS: SUCCESS
COMMIT: 1db89db186136160aba825ea9ca36c1fd8be2620

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

UNIT TESTS
-b lp1999827_3.1 lp:~seyeongkim/maas/+git/maas into -b 3.1 lp:~maas-committers/maas

STATUS: SUCCESS
COMMIT: 1db89db186136160aba825ea9ca36c1fd8be2620

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

UNABLE TO START LANDING

STATUS: MISSING COMMIT MESSAGE

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/maasserver/models/staticipaddress.py b/src/maasserver/models/staticipaddress.py
2index 49723d8..74c736f 100644
3--- a/src/maasserver/models/staticipaddress.py
4+++ b/src/maasserver/models/staticipaddress.py
5@@ -654,7 +654,8 @@ class StaticIPAddressManager(Manager):
6 ELSE staticip.alloc_type
7 END,
8 interface.id,
9- inet 'fc00::/7' >> ip /* ULA after non-ULA */
10+ inet 'fc00::/7' >> ip /* ULA after non-ULA */,
11+ staticip.id
12 """
13 iface_sql_query = (
14 """
15diff --git a/src/maasserver/models/tests/test_staticipaddress.py b/src/maasserver/models/tests/test_staticipaddress.py
16index 8e7e8ec..9755da9 100644
17--- a/src/maasserver/models/tests/test_staticipaddress.py
18+++ b/src/maasserver/models/tests/test_staticipaddress.py
19@@ -461,6 +461,35 @@ class TestStaticIPAddressManagerMapping(MAASServerTestCase):
20 )
21 self.assertEqual(expected_mapping, mapping)
22
23+ def test_get_hostname_ip_mapping_ip_order(self):
24+ domain = Domain.objects.get_default_domain()
25+ node = factory.make_Node()
26+ interface1 = factory.make_Interface(INTERFACE_TYPE.PHYSICAL, node=node)
27+ subnet = factory.make_Subnet()
28+ staticip1 = factory.make_StaticIPAddress(
29+ alloc_type=IPADDRESS_TYPE.STICKY,
30+ ip=factory.pick_ip_in_Subnet(subnet),
31+ subnet=subnet,
32+ interface=interface1,
33+ )
34+ staticip2 = factory.make_StaticIPAddress(
35+ alloc_type=IPADDRESS_TYPE.STICKY,
36+ ip=factory.pick_ip_in_Subnet(subnet),
37+ subnet=subnet,
38+ interface=interface1,
39+ )
40+ self.assertEqual(
41+ dict(StaticIPAddress.objects.get_hostname_ip_mapping(subnet)),
42+ {
43+ f"{node.hostname}.{domain.name}": HostnameIPMapping(
44+ node.system_id, 30, {staticip1.ip}, node.node_type
45+ ),
46+ f"{interface1.name}.{node.hostname}.{domain.name}": HostnameIPMapping(
47+ node.system_id, 30, {staticip2.ip}, node.node_type
48+ ),
49+ },
50+ )
51+
52 def test_get_hostname_ip_mapping_returns_fqdn_and_other(self):
53 hostname = factory.make_name("hostname")
54 domainname = factory.make_name("domain")

Subscribers

People subscribed via source and target branches