Exemple #1
0
    def post_to_all(self, url='/', data={}):
        if (url == '/'):
            res = []
            for masterip in masterips:
                try:
                    requests.post("http://" + getip(masterip) + ":" +
                                  master_port + "/isalive/",
                                  data=data)
                except Exception as e:
                    logger.debug(e)
                    continue
                res.append(masterip)
            return res
        data = dict(data)
        data['token'] = session['token']
        logger.info("Docklet Request: user = %s data = %s, url = %s" %
                    (session['username'], data, url))
        result = {}
        for masterip in masterips:
            try:
                res = requests.post("http://" + getip(masterip) + ":" +
                                    master_port + url,
                                    data=data).json()
            except Exception as e:
                logger.debug(e)
                continue
            if 'success' in res and res['success'] == 'true':
                result[masterip] = res
                logger.info("get result from %s success" % getip(masterip))
            else:
                logger.error("get result from %s failed" % getip(masterip))

        return result
Exemple #2
0
def image_list(masterip):
    data = {"user": session['username']}
    #    path = request.path[:request.path.rfind("/")]
    #    path = path[:path.rfind("/")+1]
    result = dockletRequest.post("/image/list/", data, masterip)
    logger.debug("image" + str(type(result)))
    return json.dumps(result)
Exemple #3
0
def monitor_user_request(issue, masterip):
    data = {"user": session['username']}
    path = "/monitor/user/" + str(issue) + "/"
    logger.debug(path + "_____" + masterip)
    result = dockletRequest.post(path, data, masterip)
    logger.debug("monitor" + str(type(result)))
    return json.dumps(result)
    def post_to_all(self, url = '/', data={}):
        if (url == '/'):
            res = []
            for masterip in masterips:
                try:
                    requests.post("http://"+getip(masterip)+":"+master_port+"/isalive/",data=data)
                except Exception as e:
                    logger.debug(e)
                    continue
                res.append(masterip)
            return res
        data = dict(data)
        data['token'] = session['token']
        logger.info("Docklet Request: user = %s data = %s, url = %s"%(session['username'], data, url))
        result = {}
        for masterip in masterips:
            try:
                res = requests.post("http://"+getip(masterip)+":"+master_port+url,data=data).json()
            except Exception as e:
                logger.debug(e)
                continue
            if 'success' in res and res['success'] == 'true':
                result[masterip] = res
                logger.info("get result from %s success" % getip(masterip))
            else:
                logger.error("get result from %s failed" % getip(masterip))

        return result
Exemple #5
0
def monitor_request(comid, infotype, masterip):
    data = {"user": session['username']}
    path = request.path[request.path.find("/") + 1:]
    path = path[path.find("/") + 1:]
    path = path[path.find("/") + 1:]
    logger.debug(path + "_____" + masterip)
    result = dockletRequest.post("/monitor/" + path, data, masterip)
    logger.debug("monitor" + str(type(result)))
    return json.dumps(result)
Exemple #6
0
def monitor_user_request(issue,masterip):
    data = {
        "user": session['username']
    }
    path = "/monitor/user/" + str(issue) + "/"
    logger.debug(path + "_____" + masterip)
    result = dockletRequest.post(path, data, masterip)
    logger.debug("monitor" + str(type(result)))
    return json.dumps(result)
Exemple #7
0
def image_list(masterip):
    data = {
        "user": session['username']
    }
#    path = request.path[:request.path.rfind("/")]
#    path = path[:path.rfind("/")+1]
    result = dockletRequest.post("/image/list/", data, masterip)
    logger.debug("image" + str(type(result)))
    return json.dumps(result)
Exemple #8
0
def monitor_request(comid,infotype,masterip):
    data = {
        "user": session['username']
    }
    path = request.path[:request.path.rfind("/")]
    path = path[:path.rfind("/")+1]
    logger.debug(path + "_____" + masterip)
    result = dockletRequest.post(path, data, masterip)
    logger.debug("monitor" + str(type(result)))
    return json.dumps(result)
Exemple #9
0
 def get(self):
     masterips = dockletRequest.post_to_all()
     job_list = {}
     for ipname in masterips:
         ip = ipname.split("@")[0]
         result = dockletRequest.post("/batch/job/list/",{},ip)
         job_list[ip] = result.get("data")
         logger.debug("job_list[%s]: %s" % (ip,job_list[ip]))
     if True:
         return self.render(self.template_path, masterips=masterips, job_list=job_list)
     else:
         return self.error()
Exemple #10
0
 def get(self):
     masterips = dockletRequest.post_to_all()
     job_list = {}
     for ipname in masterips:
         ip = ipname.split("@")[0]
         result = dockletRequest.post("/batch/job/list/",{},ip)
         job_list[ip] = result.get("data")
         logger.debug("job_list[%s]: %s" % (ip,job_list[ip]))
     if True:
         return self.render(self.template_path, masterips=masterips, job_list=job_list)
     else:
         return self.error()