Merge lp:~jtv/maas/bug-979397 into lp:~maas-committers/maas/trunk

Proposed by Jeroen T. Vermeulen
Status: Merged
Approved by: Jeroen T. Vermeulen
Approved revision: no longer in the source branch.
Merged at revision: 452
Proposed branch: lp:~jtv/maas/bug-979397
Merge into: lp:~maas-committers/maas/trunk
Diff against target: 233 lines (+71/-31)
6 files modified
src/maasserver/forms.py (+37/-15)
src/maasserver/templates/maasserver/settings.html (+4/-2)
src/maasserver/templates/maasserver/snippets.html (+2/-1)
src/maasserver/tests/test_api.py (+2/-1)
src/maasserver/tests/test_forms.py (+18/-7)
src/maasserver/tests/test_views.py (+8/-5)
To merge this branch: bzr merge lp:~jtv/maas/bug-979397
Reviewer Review Type Date Requested Status
Julian Edwards (community) Approve
Review via email: mp+101680@code.launchpad.net

Commit message

Disable after-commissioning actions for release.

Description of the change

As per the bug, and chat with Julian: in the current state of implementation, after_commissioning_status is not a meaningful choice (only one of the 3 options is valid) so we're hiding it from the UI for now. On the settings form, the Commissioning and Ubuntu sections are hidden entirely.

I filed bug 979539 for undoing this again later. I believe I highlighted all places that need attention with a comment referencing that number.

Note that I leave the after-commissioning-action field in the CommissioningForm; the form is no longer included in the page at all so it shouldn't need commenting out.

Jeroen

To post a comment you must log in.
Revision history for this message
Julian Edwards (julian-edwards) wrote :

XXX missing in line 150 of the diff, otherwise good to go, thanks!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/maasserver/forms.py'
2--- src/maasserver/forms.py 2012-04-10 08:20:43 +0000
3+++ src/maasserver/forms.py 2012-04-12 04:34:18 +0000
4@@ -50,7 +50,6 @@
5 Config,
6 MACAddress,
7 Node,
8- NODE_AFTER_COMMISSIONING_ACTION,
9 NODE_AFTER_COMMISSIONING_ACTION_CHOICES,
10 NODE_PERMISSION,
11 NODE_STATUS,
12@@ -83,10 +82,14 @@
13 system_id = forms.CharField(
14 widget=forms.TextInput(attrs={'readonly': 'readonly'}),
15 required=False)
16- after_commissioning_action = forms.TypedChoiceField(
17- label="After commissioning",
18- choices=NODE_AFTER_COMMISSIONING_ACTION_CHOICES, required=False,
19- empty_value=NODE_AFTER_COMMISSIONING_ACTION.DEFAULT)
20+
21+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
22+
23+ #after_commissioning_action = forms.TypedChoiceField(
24+ # label="After commissioning",
25+ # choices=NODE_AFTER_COMMISSIONING_ACTION_CHOICES, required=False,
26+ # empty_value=NODE_AFTER_COMMISSIONING_ACTION.DEFAULT)
27+
28 architecture = forms.ChoiceField(
29 choices=ARCHITECTURE_CHOICES, required=True,
30 initial=ARCHITECTURE.i386,
31@@ -95,29 +98,48 @@
32 class Meta:
33 model = Node
34 fields = (
35- 'hostname', 'system_id', 'after_commissioning_action',
36- 'architecture', 'power_type')
37+ 'hostname',
38+ 'system_id',
39+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
40+ #'after_commissioning_action',
41+ 'architecture',
42+ 'power_type',
43+ )
44
45
46 class UINodeEditForm(ModelForm):
47- after_commissioning_action = forms.ChoiceField(
48- label="After commissioning",
49- choices=NODE_AFTER_COMMISSIONING_ACTION_CHOICES)
50+
51+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
52+
53+ #after_commissioning_action = forms.ChoiceField(
54+ # label="After commissioning",
55+ # choices=NODE_AFTER_COMMISSIONING_ACTION_CHOICES)
56
57 class Meta:
58 model = Node
59- fields = ('hostname', 'after_commissioning_action')
60+ fields = (
61+ 'hostname',
62+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
63+ #'after_commissioning_action',
64+ )
65
66
67 class UIAdminNodeEditForm(ModelForm):
68- after_commissioning_action = forms.ChoiceField(
69- label="After commissioning",
70- choices=NODE_AFTER_COMMISSIONING_ACTION_CHOICES)
71+
72+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
73+
74+ #after_commissioning_action = forms.ChoiceField(
75+ # label="After commissioning",
76+ # choices=NODE_AFTER_COMMISSIONING_ACTION_CHOICES)
77
78 class Meta:
79 model = Node
80 fields = (
81- 'hostname', 'after_commissioning_action', 'power_type')
82+ 'hostname',
83+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
84+ #'after_commissioning_action',
85+ 'power_type',
86+ )
87
88
89 class MACAddressForm(ModelForm):
90
91=== modified file 'src/maasserver/templates/maasserver/settings.html'
92--- src/maasserver/templates/maasserver/settings.html 2012-03-22 06:38:06 +0000
93+++ src/maasserver/templates/maasserver/settings.html 2012-04-12 04:34:18 +0000
94@@ -67,7 +67,8 @@
95 </a>
96 <div class="clear"></div>
97 </div>
98- <div id="commissioning" class="block size7 first">
99+<!-- XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable. -->
100+ <div id="commissioning" class="hidden block size7 first">
101 <h2>Commissioning</h2>
102 <form action="{% url "settings" %}" method="post">
103 <ul>
104@@ -79,7 +80,8 @@
105 <input type="submit" class="button right" value="Save" />
106 </form>
107 </div>
108- <div id="ubuntu" class="block size7 first">
109+<!-- XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable. -->
110+ <div id="ubuntu" class="hidden block size7 first">
111 <h2>Ubuntu</h2>
112 <form action="{% url "settings" %}" method="post">
113 <ul>
114
115=== modified file 'src/maasserver/templates/maasserver/snippets.html'
116--- src/maasserver/templates/maasserver/snippets.html 2012-04-09 04:52:52 +0000
117+++ src/maasserver/templates/maasserver/snippets.html 2012-04-12 04:34:18 +0000
118@@ -21,7 +21,8 @@
119 <div class="field-help">Default is MAC-based, e.g. "node-aabbccddeeff"
120 </div>
121 </p>
122- <p>
123+<!-- XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable. -->
124+ <p class="hidden">
125 <label for="id_after_commissioning_action">After commissioning</label>
126 {{ node_form.after_commissioning_action }}
127 </p>
128
129=== modified file 'src/maasserver/tests/test_api.py'
130--- src/maasserver/tests/test_api.py 2012-04-10 13:44:16 +0000
131+++ src/maasserver/tests/test_api.py 2012-04-12 04:34:18 +0000
132@@ -120,7 +120,8 @@
133 self.assertEqual('diane', parsed_result['hostname'])
134 self.assertNotEqual(0, len(parsed_result.get('system_id')))
135 [diane] = Node.objects.filter(hostname='diane')
136- self.assertEqual(2, diane.after_commissioning_action)
137+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
138+ #self.assertEqual(2, diane.after_commissioning_action)
139 self.assertEqual(architecture, diane.architecture)
140
141 def test_POST_new_power_type_defaults_to_asking_config(self):
142
143=== modified file 'src/maasserver/tests/test_forms.py'
144--- src/maasserver/tests/test_forms.py 2012-04-05 07:34:05 +0000
145+++ src/maasserver/tests/test_forms.py 2012-04-12 04:34:18 +0000
146@@ -184,7 +184,11 @@
147 form = UINodeEditForm()
148
149 self.assertEqual(
150- ['hostname', 'after_commissioning_action'], list(form.fields))
151+ [
152+ 'hostname',
153+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
154+ #'after_commissioning_action',
155+ ], list(form.fields))
156
157 def test_UINodeEditForm_changes_node(self):
158 node = factory.make_node()
159@@ -201,14 +205,20 @@
160 form.save()
161
162 self.assertEqual(hostname, node.hostname)
163- self.assertEqual(
164- after_commissioning_action, node.after_commissioning_action)
165+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
166+ #self.assertEqual(
167+ # after_commissioning_action, node.after_commissioning_action)
168
169 def test_UIAdminNodeEditForm_contains_limited_set_of_fields(self):
170 form = UIAdminNodeEditForm()
171
172- self.assertSequenceEqual(
173- ['hostname', 'after_commissioning_action', 'power_type'],
174+ self.assertEqual(
175+ [
176+ 'hostname',
177+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
178+ #'after_commissioning_action',
179+ 'power_type',
180+ ],
181 list(form.fields))
182
183 def test_UIAdminNodeEditForm_changes_node(self):
184@@ -227,8 +237,9 @@
185 form.save()
186
187 self.assertEqual(hostname, node.hostname)
188- self.assertEqual(
189- after_commissioning_action, node.after_commissioning_action)
190+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
191+ #self.assertEqual(
192+ # after_commissioning_action, node.after_commissioning_action)
193 self.assertEqual(power_type, node.power_type)
194
195
196
197=== modified file 'src/maasserver/tests/test_views.py'
198--- src/maasserver/tests/test_views.py 2012-04-12 02:20:42 +0000
199+++ src/maasserver/tests/test_views.py 2012-04-12 04:34:18 +0000
200@@ -158,7 +158,8 @@
201 self.assertTemplateExistsAndContains(
202 response.content, '#add-node', 'input#id_hostname')
203
204- def test_after_commissioning_action_snippet(self):
205+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
206+ def t_e_s_t_after_commissioning_action_snippet(self):
207 response = self.client.get('/')
208 self.assertTemplateExistsAndContains(
209 response.content, '#add-node',
210@@ -650,8 +651,9 @@
211 node_edit_link = reverse('node-edit', args=[node.system_id])
212 params = {
213 'hostname': factory.getRandomString(),
214- 'after_commissioning_action': factory.getRandomEnum(
215- NODE_AFTER_COMMISSIONING_ACTION),
216+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
217+ #'after_commissioning_action': factory.getRandomEnum(
218+ # NODE_AFTER_COMMISSIONING_ACTION),
219 }
220 response = self.client.post(node_edit_link, params)
221
222@@ -780,8 +782,9 @@
223 node_edit_link = reverse('node-edit', args=[node.system_id])
224 params = {
225 'hostname': factory.getRandomString(),
226- 'after_commissioning_action': factory.getRandomEnum(
227- NODE_AFTER_COMMISSIONING_ACTION),
228+ # XXX JeroenVermeulen 2012-04-12, bug=979539: re-enable.
229+ #'after_commissioning_action': factory.getRandomEnum(
230+ # NODE_AFTER_COMMISSIONING_ACTION),
231 'power_type': factory.getRandomChoice(POWER_TYPE_CHOICES),
232 }
233 response = self.client.post(node_edit_link, params)