def swallow_entity(self, entity, uuid, newentity): resp, results = self.post(action=self.mergeing_path % (str(entity), 'swallow'), body={ 'uuid': uuid, 'entity': newentity }) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError(message='swallow entity fail', code=resp.status_code, resone=results['result']) return results
def database_delete(self, database_id, body=None): resp, results = self.delete(action=self.database_path % str(database_id), body=body, timeout=10) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='delete database %s fail:%d' % (str(database_id), results['resultcode']), code=resp.status_code, resone=results['result']) return results
def agents_chioces(self, objtype, zone=None): body = None if zone: body = dict(zone=zone) resp, results = self.get(action=self.agents_chioces_path % objtype, body=body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='list agents chioces fail:%d' % results['resultcode'], code=resp.status_code, resone=results['result']) return results
def schemas_create(self, database_id, body): resp, results = self.retryable_post(action=self.schemas_path % str(database_id), body=body, timeout=10) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='create schema on %s fail:%d' % (str(database_id), results['resultcode']), code=resp.status_code, resone=results['result']) return results
def database_bond(self, database_id, body=None): resp, results = self.post(action=self.database_path_ex % (str(database_id), 'bond'), body=body, timeout=30) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='bond database %s status fail:%d' % (str(database_id), results['resultcode']), code=resp.status_code, resone=results['result']) return results
def objfile_send(self, md5, objtype, body=None): body = body or {} body.setdefault('objtype', objtype) resp, results = self.put(action=self.objfile_path_ex % (md5, 'send'), body=body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='send gogamechen1 objfiles fail:%d' % results['resultcode'], code=resp.status_code, resone=results['result']) return results
def game_opentime(self, group_id, entity, opentime): resp, results = self.put( action=self.appentity_path_ex % (str(group_id), GAMESERVER, str(entity), 'opentime'), body=dict(opentime=opentime)) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='reset %s fail:%d' % (GAMESERVER, results['resultcode']), code=resp.status_code, resone=results['result']) return results
def appentity_unvquote(self, group_id, objtype, entity, package_id): resp, results = self.delete( action=self.appentity_path_ex % (str(group_id), objtype, str(entity), 'quote'), body=dict(package_id=package_id)) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='version unquote %s fail:%d' % (objtype, results['resultcode']), code=resp.status_code, resone=results['result']) return results
def appentity_clean(self, group_id, objtype, entity, delete=False): action = 'delete' if delete else 'unquote' resp, results = self.delete( action=self.appentity_path_ex % (str(group_id), objtype, str(entity), 'clean'), body=dict(clean=action)) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError(message='clean %s fail:%d' % (objtype, results['resultcode']), code=resp.status_code, resone=results['result']) return results
def cache_online(self, agent_type, metadata, expire): body = dict(host=metadata.get('host'), agent_type=agent_type, metadata=metadata, expire=expire) resp, results = self.retryable_post( self.online_path % metadata.get('host'), body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='agent declare online fail:%d' % results['resultcode'], code=resp.status_code, resone=results['result']) return results
def entity_readlog(self, endpoint, entity, path, lines=10): resp, results = self.get(action=self.entity_path_ex % (endpoint, str(entity), 'readlog'), body={ 'path': path, 'lines': lines }) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError(message='get entity logs fail:%d' % results['resultcode'], code=resp.status_code, resone=results['result']) return results
def schemas_bond(self, database_id, schema, entity, endpoint, body=None): body = body or {} body.update({ENDPOINTKEY: endpoint}) body.update({'entity': entity}) resp, results = self.post(action=self.schema_path_ex % (str(database_id), schema, 'bond'), body=body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='bond schema info on %s fail:%d' % (str(database_id), results['resultcode']), code=resp.status_code, resone=results['result']) return results
def objfile_create(self, objtype, subtype, version, fileinfo, body=None): body = body or {} body.setdefault('objtype', objtype) body.setdefault('subtype', subtype) body.setdefault('version', version) body.setdefault('fileinfo', fileinfo) resp, results = self.retryable_post(action=self.objfiles_path, body=body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='create gogamechen2 objfiles fail:%d' % results['resultcode'], code=resp.status_code, resone=results['result']) return results
def package_resource_upgrade(self, group_id, package_id, version, timeout=60): timeout = timeout or 60 body = dict(version=version, request_time=int(time.time()), finishtime=int(time.time() + timeout)) resp, results = self.put(action=self.package_path_ex % (str(group_id), package_id, 'upgrade'), body=body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='upgrade %d package resource fail:%d' % (group_id, results['resultcode']), code=resp.status_code, resone=results['result']) return results
def package_create(self, group_id, resource_id, package_name, mark, body=None): body = body or {} body.update({ 'resource_id': resource_id, 'group_id': group_id, 'package_name': package_name, 'mark': mark }) resp, results = self.post(action=self.packages_path % str(group_id), body=body) if results['resultcode'] != common.RESULT_SUCCESS: raise ServerExecuteRequestError( message='create %d package fail:%d' % (group_id, results['resultcode']), code=resp.status_code, resone=results['result']) return results