Merge lp:~jtv/maas/1.2-bug-1077075 into lp:maas/1.2

Proposed by Jeroen T. Vermeulen
Status: Merged
Approved by: Jeroen T. Vermeulen
Approved revision: no longer in the source branch.
Merged at revision: 1296
Proposed branch: lp:~jtv/maas/1.2-bug-1077075
Merge into: lp:maas/1.2
Diff against target: 41 lines (+16/-0)
2 files modified
src/maasserver/forms.py (+5/-0)
src/maasserver/tests/test_forms.py (+11/-0)
To merge this branch: bzr merge lp:~jtv/maas/1.2-bug-1077075
Reviewer Review Type Date Requested Status
Jeroen T. Vermeulen (community) Approve
Review via email: mp+133727@code.launchpad.net

Commit message

Backport trunk r1344: Fix oops when renaming accepted nodegroup without interfaces.

Description of the change

Fixes bug 1077075 in Quantal. Backported from trunk without changes.

Jeroen

To post a comment you must log in.
Revision history for this message
Jeroen T. Vermeulen (jtv) wrote :

Already reviewed & landed in trunk. Tests pass. Self-approving.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'src/maasserver/forms.py'
--- src/maasserver/forms.py 2012-11-08 09:14:58 +0000
+++ src/maasserver/forms.py 2012-11-09 18:17:21 +0000
@@ -833,6 +833,11 @@
833 return new_name833 return new_name
834834
835 interface = self.instance.get_managed_interface()835 interface = self.instance.get_managed_interface()
836 if interface is None:
837 # No network interfaces. It's weird, but there certainly
838 # won't be a problem with the name change.
839 return new_name
840
836 if interface.management != NODEGROUPINTERFACE_MANAGEMENT.DHCP_AND_DNS:841 if interface.management != NODEGROUPINTERFACE_MANAGEMENT.DHCP_AND_DNS:
837 # MAAS is not managing DNS on this network, so the user can842 # MAAS is not managing DNS on this network, so the user can
838 # rename the zone at will.843 # rename the zone at will.
839844
=== modified file 'src/maasserver/tests/test_forms.py'
--- src/maasserver/tests/test_forms.py 2012-10-30 15:15:30 +0000
+++ src/maasserver/tests/test_forms.py 2012-11-09 18:17:21 +0000
@@ -57,6 +57,7 @@
57 MACAddress,57 MACAddress,
58 Node,58 Node,
59 NodeGroup,59 NodeGroup,
60 NodeGroupInterface,
60 )61 )
61from maasserver.models.config import DEFAULT_CONFIG62from maasserver.models.config import DEFAULT_CONFIG
62from maasserver.node_action import (63from maasserver.node_action import (
@@ -992,3 +993,13 @@
992 self.assertTrue(form.is_valid())993 self.assertTrue(form.is_valid())
993 form.save()994 form.save()
994 self.assertEqual(data['name'], reload_object(nodegroup).name)995 self.assertEqual(data['name'], reload_object(nodegroup).name)
996
997 def test_accepts_name_change_if_nodegroup_has_no_interface(self):
998 nodegroup, node = make_unrenamable_nodegroup_with_node()
999 NodeGroupInterface.objects.filter(nodegroup=nodegroup).delete()
1000 data = self.make_form_data(nodegroup)
1001 data['name'] = factory.make_name('new-name')
1002 form = NodeGroupEdit(instance=nodegroup, data=data)
1003 self.assertTrue(form.is_valid())
1004 form.save()
1005 self.assertEqual(data['name'], reload_object(nodegroup).name)

Subscribers

People subscribed via source and target branches

to status/vote changes: