Beispiel #1
0
Datei: view.py Projekt: ZiTAL/zpy
	def load(file, params={}):
		tpl = view_folder+file
		if os.path.isfile(tpl) and os.access(tpl, os.R_OK):
			tpl = env.get_template(file)
			return tpl.render(params)
		else:
			Log.debug(tpl+": file not exists")
			return False
Beispiel #2
0
 def run_test(self):
     """
     get case then run testing
     """
     cmd = []
     # set report name
     report_name = "TestReport.html"
     Log.debug('start : run test method under Runner.py')
     self.setup()
     version = 'python ' + str(sys.version)
     Log.info(version)
     now = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
     output_report = "report/{}_{}".format(now, report_name)
     params = self.get_param(output_report)
     for key, value in params.items():
         if key == 'nosetests':
             cmd.insert(0, '{} {}'.format(key, value))
         elif key == 'case':
             cmd.append(' '.join(value))
         elif key == '--with-id':
             cmd.append('{}'.format(key))
             if value:
                 value = [str(i) for i in value]
                 cmd[-1] = cmd[-1] + ' ' + ' '.join(value)
         elif value is True:
             cmd.append('{}'.format(key))
         else:
             cmd.append('{} {}'.format(key, value))
     # cmd.append(" -–with-ignore-docstrings")
     runcmd = ' '.join(cmd)
     print "[INFO]: Running testing under " + version
     print '****************************************'
     print 'Current time is %s' % now
     print runcmd
     os.system(runcmd)
     Log.info('finish run test cases')
     platform_type = platform.system()
     try:
         report_path = os.path.abspath(output_report)
         if platform_type == 'Windows':
             webbrowser.open_new(report_path)
         elif platform_type == 'Linux':
             print "The report path is {}".format(report_path)
         else:
             print "Currently not support this platform {}".format(
                 platform_type)
     except BaseException, e:
         Log.error('Error happened when open the test report: %s' % e)
Beispiel #3
0
def main():
    bridge = args[0]
    vif_name = args[1]
    logger = Log("vps_mgr", config=conf)
    try:
        ovsops = OVSOps()
        ofport = ovsops.find_ofport_by_name(vif_name)
        if ofport < 0:
            logger.error("vif %s ofport=%s, skip it" % (vif_name, ofport))
        else:
            ovsops.unset_mac_filter(bridge, ofport)
        # it's strange that if you unset traffic first, might find ofport==-1
        ovsops.unset_traffic_limit(vif_name)
        logger.debug("unset %s" % vif_name)
        return 0
    except Exception, e:
        logger.exception(e)
        print >> sys.stderr, str(e)
        return 0
Beispiel #4
0
def main():
    bridge = args[0]
    vif_name = args[1]
    logger = Log("vps_mgr", config=conf)
    try:
        ovsops = OVSOps()
        ofport = ovsops.find_ofport_by_name(vif_name)
        if ofport < 0:
            logger.error("vif %s ofport=%s, skip it" % (vif_name, ofport))
        else:
            ovsops.unset_mac_filter(bridge, ofport)
        # it's strange that if you unset traffic first, might find ofport==-1
        ovsops.unset_traffic_limit(vif_name)
        logger.debug("unset %s" % vif_name)
        return 0
    except Exception, e:
        logger.exception(e)
        print >> sys.stderr, str(e)
        return 0
Beispiel #5
0
	def __init__(self, status, headers={}, tpl=None):
		
		# get http status code's from json
		hsc = open('config/http_status_codes.json')
		jhsc = json.load(hsc)
		
		# view params
		params = {'key': status, 'value': ''}
		params['SERVER_NAME'] = Env.get('SERVER_NAME')
		params['CONTACT'] = Env.get('CONTACT')
		params['SERVER_SOFTWARE'] = Env.get('SERVER_SOFTWARE')

		# status exists in json
		if status in jhsc:
			params['value'] = jhsc[status]		
		
		# status tpl
		if tpl==None:
			tpl = "error/"+status+".tpl"
		
		# Content type required header
		if 'Content-Type' in headers:
			pass
		else:
			headers['Content-Type'] = 'text/html'
		
		# load view
		data = View.load(tpl, params)
		
		# view not exists, load default tpl
		if data==False:
			tpl = 'error/default.tpl'
			data = View.load(tpl, params)

		msg =	"\nzpy Error: \n"
		msg +=	"Status: "+status+"\n"
		msg +=	"Url: "+Env.get('REQUEST_URI')+"\n"
		msg +=	"Remote Address: "+Env.get('REMOTE_ADDR')+"\n"
		msg +=	"Date: "+time.strftime("%Y/%m/%d %H:%M:%S")+"\n"
		msg +=	"-------------------------------------------"
		
		Log.debug(msg)
		web.HTTPError.__init__(self, status, headers, data)
Beispiel #6
0
def main():
    bridge = args[0]
    vif_name = args[1]

    logger = Log("vps_mgr", config=conf)
    vpsops = VPSOps(logger)
    logger.debug("set %s" % vif_name)
    try:
        ovsops = OVSOps()
        om = re.match(r'^\w+?(\d+)\w*?$', vif_name)
        if not om:
            print >> sys.stderr, "wrong vif format %s" % (vif_name)
            return 1
        vps_id = int(om.group(1))
        xv = vpsops.load_vps_meta(vps_id)
        vif = xv.vifs.get(vif_name)
        if not vif:
            logger.error("no vif %s in metadata of %s" % (vif_name, vps_id))
            return 1
        ofport = ovsops.find_ofport_by_name(vif_name)
        if ofport < 0:
            logger.error(
                "vif %s ofport=%s, fix it by delete the port from bridge " %
                (vif_name, ofport))
            ovsops.del_port_from_bridge(bridge, vif_name)
            ovsops.add_port_to_bridge(bridge, vif_name)
            ofport = ovsops.find_ofport_by_name(vif_name)
            if ofport < 0:
                logger.error("vif %s ofport=%s, impossible " %
                             (vif_name, ofport))
        if ofport >= 0:
            ovsops.set_mac_filter(bridge, ofport, vif.ip_dict.keys())
        ovsops.unset_traffic_limit(vif_name)
        bandwidth = float(vif.bandwidth or 0)
        ovsops.set_traffic_limit(vif_name, int(bandwidth * 1000))
        print "set vif %s bandwidth %sm/s" % (vif_name, vif.bandwidth)
        return 0
    except Exception, e:
        logger.exception(e)
        print >> sys.stderr, str(e)
        return 1
Beispiel #7
0
def main():
    bridge = args[0]
    vif_name = args[1]

    logger = Log("vps_mgr", config=conf)
    vpsops = VPSOps(logger)
    logger.debug("set %s" % vif_name)
    try:
        ovsops = OVSOps()
        om = re.match(r"^\w+?(\d+)\w*?$", vif_name)
        if not om:
            print >> sys.stderr, "wrong vif format %s" % (vif_name)
            return 1
        vps_id = int(om.group(1))
        xv = vpsops.load_vps_meta(vps_id)
        vif = xv.vifs.get(vif_name)
        if not vif:
            logger.error("no vif %s in metadata of %s" % (vif_name, vps_id))
            return 1
        ofport = ovsops.find_ofport_by_name(vif_name)
        if ofport < 0:
            logger.error("vif %s ofport=%s, fix it by delete the port from bridge " % (vif_name, ofport))
            ovsops.del_port_from_bridge(bridge, vif_name)
            ovsops.add_port_to_bridge(bridge, vif_name)
            ofport = ovsops.find_ofport_by_name(vif_name)
            if ofport < 0:
                logger.error("vif %s ofport=%s, impossible " % (vif_name, ofport))
        if ofport >= 0:
            ovsops.set_mac_filter(bridge, ofport, vif.ip_dict.keys())
        ovsops.unset_traffic_limit(vif_name)
        bandwidth = float(vif.bandwidth or 0)
        ovsops.set_traffic_limit(vif_name, int(bandwidth * 1000))
        print "set vif %s bandwidth %sm/s" % (vif_name, vif.bandwidth)
        return 0
    except Exception, e:
        logger.exception(e)
        print >> sys.stderr, str(e)
        return 1
Beispiel #8
0
    def wrapper(self, *args, **kwargs):

        if isinstance(self, BaseModel) == False:

            return method(self, *args, **kwargs)

        else:

            start = time.clock()

            ret = method(self, *args, **kwargs)

            finsh = time.clock()

            BaseModel.set_debug_info((finsh - start) * 1000)

            if self._debug_flag == True and isinstance(
                    args, tuple) and len(args) > 0:

                Log.debug('SQL-Time: %s[%.3fms]', args[0],
                          (finsh - start) * 1000)

            return ret