コード例 #1
0
    def database_disk_resize_view(self, request, database_id):
        try:
            database = check_is_database_enabled(database_id, 'disk resize')
            offerings = DiskOffering.objects.all().exclude(
                id=database.databaseinfra.disk_offering.id)
            check_resize_options(database_id, offerings)
        except (DisabledDatabase, NoResizeOption) as err:
            self.message_user(request, err.message, messages.ERROR)
            return HttpResponseRedirect(err.url)

        form = None
        if request.method == 'POST':
            form = DiskResizeDatabaseForm(database=database, data=request.POST)
            if form.is_valid():
                Database.disk_resize(
                    database=database,
                    new_disk_offering=request.POST.get('target_offer'),
                    user=request.user)

                url = reverse('admin:notification_taskhistory_changelist')
                return HttpResponseRedirect("{}?user={}".format(
                    url, request.user.username))
        else:
            form = DiskResizeDatabaseForm(database=database)

        return render_to_response("logical/database/disk_resize.html",
                                  locals(),
                                  context_instance=RequestContext(request))
コード例 #2
0
def _disk_resize(request, database):
    try:
        check_is_database_enabled(database.id, 'disk resize')
    except DisabledDatabase as err:
        messages.add_message(request, messages.ERROR, err.message)
        return

    disk_offering = DiskOffering.objects.get(
        id=request.POST.get('disk_offering')
    )

    current_used = round(database.used_size_in_gb, 2)
    offering_size = round(disk_offering.size_gb(), 2)
    if current_used >= offering_size:
        messages.add_message(
            request, messages.ERROR,
            'Your database has {} GB, please choose a bigger disk'.format(
                current_used
            )
        )
        return

    Database.disk_resize(
        database=database,
        new_disk_offering=disk_offering.id,
        user=request.user
    )
コード例 #3
0
def _disk_resize(request, database):
    try:
        check_is_database_enabled(database.id, 'disk resize')
    except DisabledDatabase as err:
        messages.add_message(request, messages.ERROR, err.message)
        return

    disk_offering = DiskOffering.objects.get(
        id=request.POST.get('disk_offering')
    )

    current_used = round(database.used_size_in_gb, 2)
    offering_size = round(disk_offering.size_gb(), 2)
    if current_used >= offering_size:
        messages.add_message(
            request, messages.ERROR,
            'Your database has {} GB, please choose a bigger disk'.format(
                current_used
            )
        )
        return

    Database.disk_resize(
        database=database,
        new_disk_offering=disk_offering.id,
        user=request.user
    )