~lutostag/ubuntu/trusty/maas/1.5.4+keystone

« back to all changes in this revision

Viewing changes to src/maasserver/views/settings.py

  • Committer: Package Import Robot
  • Author(s): Andres Rodriguez
  • Date: 2013-03-04 11:49:44 UTC
  • mto: This revision was merged to the branch mainline in revision 25.
  • Revision ID: package-import@ubuntu.com-20130304114944-azcvu9anlf8mizpa
Tags: upstream-1.3+bzr1452+dfsg
ImportĀ upstreamĀ versionĀ 1.3+bzr1452+dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
    "AccountsEdit",
17
17
    "AccountsView",
18
18
    "settings",
19
 
    "settings_add_archive",
20
19
    ]
21
20
 
22
21
from django.contrib import messages
40
39
from maasserver.enum import NODEGROUP_STATUS
41
40
from maasserver.exceptions import CannotDeleteUserException
42
41
from maasserver.forms import (
43
 
    AddArchiveForm,
44
42
    CommissioningForm,
45
43
    EditUserForm,
 
44
    GlobalKernelOptsForm,
46
45
    MAASAndNetworkForm,
47
46
    NewUserCreationForm,
48
47
    UbuntuForm,
52
51
    UserProfile,
53
52
    )
54
53
from maasserver.views import process_form
 
54
from metadataserver.models import CommissioningScript
55
55
 
56
56
 
57
57
class AccountsView(DetailView):
177
177
    if response is not None:
178
178
        return response
179
179
 
 
180
    # Process the Global Kernel Opts form.
 
181
    kernelopts_form, response = process_form(
 
182
        request, GlobalKernelOptsForm, reverse('settings'), 'kernelopts',
 
183
        "Configuration updated.")
 
184
    if response is not None:
 
185
        return response
 
186
 
180
187
    # Process accept clusters en masse.
181
188
    if 'mass_accept_submit' in request.POST:
182
189
        number = NodeGroup.objects.accept_all_pending()
189
196
        messages.info(request, "Rejected %d cluster(s)." % number)
190
197
        return HttpResponseRedirect(reverse('settings'))
191
198
 
192
 
    # Cluster listings:
 
199
    # Import PXE files for all the accepted clusters.
 
200
    if 'import_all_boot_images' in request.POST:
 
201
        NodeGroup.objects.import_boot_images_accepted_clusters()
 
202
        message = (
 
203
            "Import of boot images started on all cluster controllers.  "
 
204
            "Importing the boot images can take a long time depending on "
 
205
            "the available bandwidth.")
 
206
        messages.info(request, message)
 
207
        return HttpResponseRedirect(reverse('settings'))
 
208
 
 
209
    # Cluster listings.
193
210
    accepted_clusters = NodeGroup.objects.filter(
194
211
        status=NODEGROUP_STATUS.ACCEPTED).order_by('cluster_name')
195
212
    pending_clusters = NodeGroup.objects.filter(
197
214
    rejected_clusters = NodeGroup.objects.filter(
198
215
        status=NODEGROUP_STATUS.REJECTED).order_by('cluster_name')
199
216
 
 
217
    # Commissioning scripts.
 
218
    commissioning_scripts = CommissioningScript.objects.all()
 
219
 
200
220
    return render_to_response(
201
221
        'maasserver/settings.html',
202
222
        {
203
223
            'user_list': user_list,
 
224
            'commissioning_scripts': commissioning_scripts,
204
225
            'accepted_clusters': accepted_clusters,
205
226
            'pending_clusters': pending_clusters,
206
227
            'rejected_clusters': rejected_clusters,
207
228
            'maas_and_network_form': maas_and_network_form,
208
229
            'commissioning_form': commissioning_form,
209
230
            'ubuntu_form': ubuntu_form,
 
231
            'kernelopts_form': kernelopts_form,
210
232
        },
211
233
        context_instance=RequestContext(request))
212
 
 
213
 
 
214
 
def settings_add_archive(request):
215
 
    if request.method == 'POST':
216
 
        form = AddArchiveForm(request.POST)
217
 
        if form.is_valid():
218
 
            form.save()
219
 
            messages.info(request, "Archive added.")
220
 
            return HttpResponseRedirect(reverse('settings'))
221
 
    else:
222
 
        form = AddArchiveForm()
223
 
 
224
 
    return render_to_response(
225
 
        'maasserver/settings_add_archive.html',
226
 
        {'form': form},
227
 
        context_instance=RequestContext(request))