def buildApp(aid,appHost,language): "生成一个应用" #请求应用服务器生成应用 #根据轮转算法选择服务器 dao=db.execute("select count(*) from paas_app") r=objToDict(dao.first()) dao.close() num=r['count(*)'] % len(config.REMOTE_SERVER_PHP) data={'language':language,'appHost':config.REMOTE_SERVER_PHP[num],'aid':str(aid)} result=urlPostWithToken(config.REMOTE_SERVER_PHP[num],"/servlet/buildApp",data) #在主服务器生成反向代理配置文件 obj=json.loads(result) if obj['result'] == "ok": buildMainServerConfig(aid,appHost,obj['remoteSocket']) #把远程服务器地址写入数据库 sql="update paas_app set remoteServer = '%s' ,remoteSocket = '%s' where id = %d"%(config.REMOTE_SERVER_PHP[num],obj['remoteSocket'],aid) dao=db.execute(sql) dao.close() return True else: return False
def buildApp(aid, appHost, language): "生成一个应用" #请求应用服务器生成应用 #根据轮转算法选择服务器 dao = db.execute("select count(*) from paas_app") r = objToDict(dao.first()) dao.close() num = r['count(*)'] % len(config.REMOTE_SERVER_PHP) data = { 'language': language, 'appHost': config.REMOTE_SERVER_PHP[num], 'aid': str(aid) } result = urlPostWithToken(config.REMOTE_SERVER_PHP[num], "/servlet/buildApp", data) #在主服务器生成反向代理配置文件 obj = json.loads(result) if obj['result'] == "ok": buildMainServerConfig(aid, appHost, obj['remoteSocket']) #把远程服务器地址写入数据库 sql = "update paas_app set remoteServer = '%s' ,remoteSocket = '%s' where id = %d" % ( config.REMOTE_SERVER_PHP[num], obj['remoteSocket'], aid) dao = db.execute(sql) dao.close() return True else: return False
def developApp(aid,option): "部署应用,无论是不是第一次部署,主机不处理,逻辑交给应用服务器" #提取应用数据 sql="select * from paas_app where id = %d limit 1"%(aid) dao=db.execute(sql) appData=objToDict(dao.first()) dao.close() #部署过程走异步路线,所以只改变标志位 data={'option':option,'language':appData['language'],'appHost':appData['remoteServer'],'aid':appData['id']} result=urlPostWithToken(appData['remoteServer'],"/servlet/developApp",data) #修改状态 sql="update paas_app set status = 2 where id =%d"%(aid) dao=db.execute(sql) dao.close()
def developApp(aid, option): "部署应用,无论是不是第一次部署,主机不处理,逻辑交给应用服务器" #提取应用数据 sql = "select * from paas_app where id = %d limit 1" % (aid) dao = db.execute(sql) appData = objToDict(dao.first()) dao.close() #部署过程走异步路线,所以只改变标志位 data = { 'option': option, 'language': appData['language'], 'appHost': appData['remoteServer'], 'aid': appData['id'] } result = urlPostWithToken(appData['remoteServer'], "/servlet/developApp", data) #修改状态 sql = "update paas_app set status = 2 where id =%d" % (aid) dao = db.execute(sql) dao.close()