def r_create(): args_rules = [Rules.LABEL.value, Rules.PUBLIC_KEY.value] try: ret = dict() ret['state'] = ji.Common.exchange_state(20000) ji.Check.previewing(args_rules, request.json) ssh_key = SSHKey() ssh_key.label = request.json.get('label') ssh_key.public_key = request.json.get('public_key') if ssh_key.exist_by('public_key'): ret['state'] = ji.Common.exchange_state(40901) ret['state']['sub']['zh-cn'] = ''.join( [ret['state']['sub']['zh-cn'], ': ', ssh_key.public_key]) return ret ssh_key.create() return ret except ji.PreviewingError, e: return json.loads(e.message)
def r_update(_id): ssh_key = SSHKey() args_rules = [Rules.ID.value] if 'label' in request.json: args_rules.append(Rules.LABEL.value, ) if 'public_key' in request.json: args_rules.append(Rules.PUBLIC_KEY.value, ) if args_rules.__len__() < 2: ret = dict() ret['state'] = ji.Common.exchange_state(20000) return ret request.json['id'] = _id try: ji.Check.previewing(args_rules, request.json) ssh_key.id = request.json.get('id') ssh_key.get() ssh_key.label = request.json.get('label', ssh_key.label) ssh_key.public_key = request.json.get('public_key', ssh_key.public_key) ssh_key.update() ssh_key.get() ret = dict() ret['state'] = ji.Common.exchange_state(20000) ret['data'] = ssh_key.__dict__ return ret except ji.PreviewingError, e: return json.loads(e.message)