Пример #1
0
def get_compute_disk_buses(request, compute_id, arch, machine, disk):
    """
    :param request:
    :param compute_id:
    :param arch:
    :param machine:
    :param disk:
    :return:
    """
    data = dict()
    compute = get_object_or_404(Compute, pk=compute_id)
    try:
        conn = wvmConnect(
            compute.hostname,
            compute.login,
            compute.password,
            compute.type,
        )

        disk_device_types = conn.get_disk_device_types(arch, machine)

        if disk in disk_device_types:
            if disk == 'disk':
                data['bus'] = sorted(disk_device_types)
            elif disk == 'cdrom':
                data['bus'] = ['ide', 'sata', 'scsi']
            elif disk == 'floppy':
                data['bus'] = ['fdc']
            elif disk == 'lun':
                data['bus'] = ['scsi']
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))
Пример #2
0
def get_compute_disk_buses(request, compute_id, disk):
    data = {}
    compute = get_object_or_404(Compute, pk=compute_id)
    try:
        conn = wvmConnect(compute.hostname, compute.login, compute.password,
                          compute.type)

        disk_device_types = conn.get_disk_device_types()
        disk_bus_types = conn.get_disk_bus_types()

        if disk in disk_device_types:
            if disk == 'disk':
                data['bus'] = sorted(disk_device_types)
            elif disk == 'cdrom':
                data['bus'] = [
                    'ide',
                    'sata',
                    'scsi',
                ]
            elif disk == 'floppy':
                data['bus'] = [
                    'fdc',
                ]
            elif disk == 'lun':
                data['bus'] = [
                    'scsi',
                ]
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))
Пример #3
0
def get_compute_disk_buses(request, compute_id, disk):
    data = {}
    compute = get_object_or_404(Compute, pk=compute_id)
    try:
        conn = wvmConnect(compute.hostname,
                          compute.login,
                          compute.password,
                          compute.type)

        disk_device_types = conn.get_disk_device_types()
        disk_bus_types = conn.get_disk_bus_types()

        if disk in disk_device_types:
            if disk == 'disk':
                data['bus'] = sorted(disk_device_types)
            elif disk == 'cdrom':
                data['bus'] = ['ide', 'sata', 'scsi',]
            elif disk == 'floppy':
                data['bus'] = ['fdc',]
            elif disk == 'lun':
                data['bus'] = ['scsi',]
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))
Пример #4
0
def get_compute_disk_buses(request, compute_id, arch, machine, disk):
    """
    :param request:
    :param compute_id:
    :param arch:
    :param machine:
    :param disk:
    :return:
    """
    data = dict()
    compute = get_object_or_404(Compute, pk=compute_id)
    try:
        conn = wvmConnect(
            compute.hostname,
            compute.login,
            compute.password,
            compute.type,
        )

        disk_device_types = conn.get_disk_device_types(arch, machine)

        if disk in disk_device_types:
            if disk == "disk":
                data["bus"] = sorted(disk_device_types)
            elif disk == "cdrom":
                data["bus"] = ["ide", "sata", "scsi"]
            elif disk == "floppy":
                data["bus"] = ["fdc"]
            elif disk == "lun":
                data["bus"] = ["scsi"]
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))
Пример #5
0
def snapshot(request, host_id, vname):
    """
    Snapshot block
    """
    if not request.user.is_authenticated():
        return HttpResponseRedirect('/login')

    errors = []
    message = ''
    snapshot_page = True
    compute = Compute.objects.get(id=host_id)

    try:
        conn = wvmConnect(compute.hostname,
                          compute.login,
                          compute.password,
                          compute.type)
        vm_snapshot = conn.get_snapshot(vname)

        if request.method == 'POST':
            if 'delete' in request.POST:
                snap_name = request.POST.get('name', '')
                conn.snapshot_delete(vname, snap_name)
                return HttpResponseRedirect('/snapshot/%s/%s/' % (host_id, vname))
            if 'revert' in request.POST:
                snap_name = request.POST.get('name', '')
                conn.snapshot_revert(vname, snap_name)
                message = _("Successful revert snapshot: ")
                message += snap_name

        conn.close()
    except libvirtError as msg_error:
        errors.append(msg_error.message)

    return render_to_response('snapshot.html', locals(), context_instance=RequestContext(request))
Пример #6
0
def get_compute_video_models(request, compute_id, arch, machine):
    data = dict()
    try:
        compute = get_object_or_404(Compute, pk=compute_id)
        conn = wvmConnect(compute.hostname, compute.login, compute.password,
                          compute.type)
        data['videos'] = conn.get_video_models(arch, machine)
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))
Пример #7
0
def get_compute_machine_types(request, compute_id, arch):
    """
    :param request:
    :param compute_id:
    :param arch:
    :return:
    """
    data = dict()
    try:
        compute = get_object_or_404(Compute, pk=compute_id)
        conn = wvmConnect(
            compute.hostname,
            compute.login,
            compute.password,
            compute.type,
        )
        data['machines'] = conn.get_machine_types(arch)
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))
Пример #8
0
def snapshots(request, host_id):
    """
    Snapshots block
    """
    if not request.user.is_authenticated():
        return HttpResponseRedirect('/login')

    errors = []
    compute = Compute.objects.get(id=host_id)

    try:
        conn = wvmConnect(compute.hostname,
                          compute.login,
                          compute.password,
                          compute.type)
        snapshots = conn.get_snapshots()
        conn.close()
    except libvirtError as msg_error:
        errors.append(msg_error.message)

    return render_to_response('snapshots.html', locals(), context_instance=RequestContext(request))
Пример #9
0
def get_dom_capabilities(request, compute_id, arch, machine):
    """
    :param request:
    :param compute_id:
    :param arch:
    :param machine:
    :return:
    """
    data = dict()
    try:
        compute = get_object_or_404(Compute, pk=compute_id)
        conn = wvmConnect(
            compute.hostname,
            compute.login,
            compute.password,
            compute.type,
        )
        data['videos'] = conn.get_disk_device_types(arch, machine)
        data['bus'] = conn.get_disk_device_types(arch, machine)
    except libvirtError:
        pass

    return HttpResponse(json.dumps(data))