def get_context_data(self, **kwargs):
        context = {}
        storage_group_list = vsmapi.storage_group_status(None,)

        storage_group = []
        for _sg in storage_group_list:
            sg = {
                "id":_sg.id
                ,"name":_sg.name
            }
            storage_group.append(sg)
        context["storage_group"] = storage_group

        servers = vsmapi.get_server_list(None, )
        context["servers"] = servers;

        if len(servers) > 0:
            context["OSDList"] = vsmapi.osd_status(self.request, paginate_opts={
                "service_id": servers[0].service_id
            })
            ret = vsmapi.get_available_disks(self.request, search_opts={
                "server_id": servers[0].id ,
                "result_mode":"get_disks",
            })
            disks = ret['disks'] or []
            disks_list = [disk for disk in disks if disk.find('by-path') != -1]
            context["available_disks"] = disks_list
        
        return context
Ejemplo n.º 2
0
def check_device_path(request):
    search_opts = json.loads(request.body)
    server_id = search_opts["server_id"]
    data_device_path = search_opts["data_device_path"]
    journal_device_path = search_opts["journal_device_path"]
    if data_device_path == journal_device_path:
        status_json = {
            "status":
            "Failed",
            'message':
            'data_device_path and journal_device_path can not be the same hard disk'
        }
    else:
        ret = vsmapi.get_available_disks(
            request,
            search_opts={
                "server_id": server_id,
                "path": [data_device_path, journal_device_path]
            })

        if ret["ret"] == 1:
            status_json = {"status": "OK"}
        else:
            status_json = {"status": "Failed", 'message': ret.get('message')}

    status_data = json.dumps(status_json)
    return HttpResponse(status_data)
Ejemplo n.º 3
0
Archivo: views.py Proyecto: hl10502/vsm
def get_available_disks(request):
    search_opts = json.loads(request.body)
    server_id = search_opts["server_id"]

    ret = vsmapi.get_available_disks(request, search_opts={
                "server_id": server_id
                ,"result_mode":"get_disks",
            })

    disks = ret['disks']
    if disks is None:disks=[]
    disk_data = json.dumps(disks)

    return HttpResponse(disk_data)
def get_available_disks(request):
    search_opts = json.loads(request.body)
    server_id = search_opts["server_id"]

    ret = vsmapi.get_available_disks(request, search_opts={
                "server_id": server_id
                ,"result_mode":"get_disks",
            })

    disks = ret['disks']
    if disks is None:disks=[]
    disks_list = [disk for disk in disks if disk.find('by-path')!=-1]
    disk_dict = {'disks':disks_list}
    disk_data = json.dumps(disk_dict)

    return HttpResponse(disk_data)
Ejemplo n.º 5
0
def check_device_path(request):
    search_opts = json.loads(request.body)
    server_id = search_opts["server_id"]
    data_device_path = search_opts["data_device_path"]
    journal_device_path = search_opts["journal_device_path"]


    ret = vsmapi.get_available_disks(request, search_opts={
                "server_id": server_id
                ,"path":[data_device_path,journal_device_path]
            })


    if ret["ret"] == 1 :
        status_json = {"status":"OK"}
    else:
        status_json = {"status":"Failed",'message':ret.get('message')}

    status_data = json.dumps(status_json)
    return HttpResponse(status_data)
Ejemplo n.º 6
0
def get_available_disks(request):
    search_opts = json.loads(request.body)
    server_id = search_opts["server_id"]

    ret = vsmapi.get_available_disks(request,
                                     search_opts={
                                         "server_id": server_id,
                                         "result_mode": "get_disks",
                                     })

    disks = ret['disks']
    if disks is None: disks = []
    disk_data = json.dumps(disks)

    # device_list = []
    # for i in range(0,5):
    #     device_list.append({
    #             "by_path":"Path_"+str(i),
    #             "disk_name":"/dev/vdb_"+str(i),
    #             "by_uuid":"/dev/disk/by-path/xxxxxxxxxxxxxxxx_"+str(i)
    #         })
    # devicedata = json.dumps(device_list)
    return HttpResponse(disk_data)