def memcached_do_add() : result = {} if not request.form.has_key('ip') : result['status'] = 'no ip address' elif not request.form.has_key('version') : result['status'] = 'no version selected' elif not request.form.has_key('port') : result['status'] = 'no port inputed' elif not request.form.has_key('memory') : result['status'] = 'no memory inputed' elif not request.form.has_key('group') : result['status'] = 'no group selected' else : ip = request.form['ip'].strip().encode('utf8') version = request.form['version'] port = str(request.form['port'].strip()) memory = str(request.form['memory'].strip()) group = str(request.form['group']) param = request.form['param'].strip().encode('utf8') isstart = str(request.form['isstart']) _memcached = db_session.query(Memcacheds).filter_by(ip = ip,port = port).first() if not _memcached : if not param : data = os.popen("bash -l /var/www/memcache_cloud/memcached_add.sh " + ip + " " + version + " " + port + " " + memory + " " + isstart).read() else : data = os.popen("bash -l /var/www/memcache_cloud/memcached_add.sh " + ip + " " + version + " " + port + " " + memory + " " + isstart + " '" + param + "'").read() result['status'] = data if (isstart == "1" and data == "add success\n") or isstart == "0" : memcache = Memcacheds(ip=ip, port=port, memory=memory, status=1, group_id=group, version=version, parameters=param) db_session.add(memcache) db_session.commit() else : result['status'] = 'the memcached is already added' return json.dumps(result)
def memcached_do_edit() : result = {} memcached_id = int(request.form['memcached_id']) ip = request.form['ip'].strip().encode('utf8') version = int(request.form['version']) port = int(request.form['port'].strip()) memory = int(request.form['memory'].strip()) group = int(request.form['group']) param = request.form['param'].strip().encode('utf8') _memcached = db_session.query(Memcacheds).filter_by(id = memcached_id).first() _memcached.ip = ip _memcached.version = version _memcached.port = port _memcached.memory = memory _memcached.group_id = group _memcached.parameters = param db_session.commit() result['status'] = 'Edit success!' return json.dumps(result)
def group_do_add() : result = {} if not request.form.has_key('name') : result['status'] = 'error' result['message'] = 'please input name' else : name = request.form['name'] count = db_session.query(Groups).filter_by(name = name).count() if (count > 0) : result['status'] = 'error' result['message'] = 'group ' + name + ' is existed!' else : group = Groups(name) db_session.add(group) db_session.commit() result['status'] = 'ok' result['message'] = 'add successed. group id is ' + str(group.id) return json.dumps(result)
@mod.route('/memcached-<memcached_id>-stop', methods=['GET', 'POST']) def memcached_stop(memcached_id) : try : memcached_id = int(memcached_id) except Exception, e : return 'invalid memcached id' _memcached = db_session.query(Memcacheds).filter_by(id = memcached_id).first() result = {} if not _memcached : result['status'] = "the memcached not exist" else : data = os.popen("bash -l /var/www/memcache_cloud/memcached_stop.sh " + _memcached.ip + " " + str(_memcached.port) + " " + str(_memcached.memory) + " " + str(_memcached.version) + " '" + str(_memcached.parameters) + "'").read() result['status'] = data _memcached.status = 0 db_session.commit() return json.dumps(result) @mod.route('/memcached-<memcached_id>-delete', methods=['GET', 'POST']) def memcached_delete(memcached_id) : result = {} try : memcached_id = int(memcached_id) except Exception, e : return 'invalid memcached id' _memcached = db_session.query(Memcacheds).filter_by(id = memcached_id).first() db_session.delete(_memcached) db_session.commit() result['status'] = 'delete success' return json.dumps(result)