Merge pull request #1583 from fengzeroz/main

ft: license api
This commit is contained in:
fengzeroz
2023-10-10 15:07:32 +08:00
committed by GitHub
4 changed files with 120 additions and 1 deletions
+8
View File
@@ -8,3 +8,11 @@ def login(user='admin', password='0000'):
def change_password(new_password, user='admin', old_password='0000', jwt=config.default_jwt):
return requests.post(url=config.BASE_URL + '/api/v2/password', headers={"Authorization": jwt}, json={"name": user, "old_pass": old_password, "new_pass": new_password})
def get_license(jwt=config.default_jwt):
return requests.get(url=config.BASE_URL + '/api/v2/license', headers={"Authorization": jwt})
def upload_license(license, jwt=config.default_jwt):
return requests.post(url=config.BASE_URL + '/api/v2/license', headers={"Authorization": jwt}, json={"license": license})
+94
View File
@@ -0,0 +1,94 @@
NEU_ERR_SUCCESS = 0
NEU_ERR_EINTERNAL = 1001
NEU_ERR_BODY_IS_WRONG = 1002
NEU_ERR_PARAM_IS_WRONG = 1003
NEU_ERR_NEED_TOKEN = 1004
NEU_ERR_DECODE_TOKEN = 1005
NEU_ERR_EXPIRED_TOKEN = 1006
NEU_ERR_VALIDATE_TOKEN = 1007
NEU_ERR_INVALID_TOKEN = 1008
NEU_ERR_INVALID_USER_OR_PASSWORD = 1009
NEU_ERR_IS_BUSY = 1010
NEU_ERR_FILE_NOT_EXIST = 1011
NEU_ERR_INVALID_PASSWORD_LEN = 1012
NEU_ERR_DUPLICATE_PASSWORD = 1013
NEU_ERR_COMMAND_EXECUTION_FAILED = 1014
NEU_ERR_IP_ADDRESS_INVALID = 1015
NEU_ERR_IP_ADDRESS_IN_USE = 1016
NEU_ERR_INVALID_USER = 1017
NEU_ERR_INVALID_PASSWORD = 1018
NEU_ERR_NODE_EXIST = 2002
NEU_ERR_NODE_NOT_EXIST = 2003
NEU_ERR_NODE_SETTING_INVALID = 2004
NEU_ERR_NODE_SETTING_NOT_FOUND = 2005
NEU_ERR_NODE_NOT_READY = 2006
NEU_ERR_NODE_IS_RUNNING = 2007
NEU_ERR_NODE_NOT_RUNNING = 2008
NEU_ERR_NODE_IS_STOPED = 2009
NEU_ERR_NODE_NAME_TOO_LONG = 2010
NEU_ERR_NODE_NOT_ALLOW_DELETE = 2011
NEU_ERR_NODE_NOT_ALLOW_SUBSCRIBE = 2012
NEU_ERR_NODE_NOT_ALLOW_UPDATE = 2013
NEU_ERR_NODE_NOT_ALLOW_MAP = 2014
NEU_ERR_NODE_NAME_EMPTY = 2015
NEU_ERR_GROUP_ALREADY_SUBSCRIBED = 2101
NEU_ERR_GROUP_NOT_SUBSCRIBE = 2102
NEU_ERR_GROUP_NOT_ALLOW = 2103
NEU_ERR_GROUP_EXIST = 2104
NEU_ERR_GROUP_PARAMETER_INVALID = 2105
NEU_ERR_GROUP_NOT_EXIST = 2106
NEU_ERR_GROUP_NAME_TOO_LONG = 2107
NEU_ERR_TAG_NOT_EXIST = 2201
NEU_ERR_TAG_NAME_CONFLICT = 2202
NEU_ERR_TAG_ATTRIBUTE_NOT_SUPPORT = 2203
NEU_ERR_TAG_TYPE_NOT_SUPPORT = 2204
NEU_ERR_TAG_ADDRESS_FORMAT_INVALID = 2205
NEU_ERR_TAG_NAME_TOO_LONG = 2206
NEU_ERR_TAG_ADDRESS_TOO_LONG = 2207
NEU_ERR_TAG_DESCRIPTION_TOO_LONG = 2208
NEU_ERR_TAG_PRECISION_INVALID = 2209
NEU_ERR_TAG_EXIST = 2210
NEU_ERR_LIBRARY_NOT_FOUND = 2301
NEU_ERR_LIBRARY_INFO_INVALID = 2302
NEU_ERR_LIBRARY_NAME_CONFLICT = 2303
NEU_ERR_LIBRARY_FAILED_TO_OPEN = 2304
NEU_ERR_LIBRARY_MODULE_INVALID = 2305
NEU_ERR_LIBRARY_SYSTEM_NOT_ALLOW_DEL = 2306
NEU_ERR_LIBRARY_NOT_ALLOW_CREATE_INSTANCE = 2307
NEU_ERR_LIBRARY_ARCH_NOT_SUPPORT = 2308
NEU_ERR_LICENSE_NOT_FOUND = 2400
NEU_ERR_LICENSE_INVALID = 2401
NEU_ERR_LICENSE_EXPIRED = 2402
NEU_ERR_LICENSE_DISABLED = 2403
NEU_ERR_LICENSE_MAX_NODES = 2404
NEU_ERR_LICENSE_MAX_TAGS = 2405
NEU_ERR_LICENSE_TOKEN_NOT_MATCH = 2406
NEU_ERR_LICENSE_BAD_CLOCK = 2407
NEU_ERR_LICENSE_MODULE_INVALID = 2408
NEU_ERR_TEMPLATE_EXIST = 2500
NEU_ERR_TEMPLATE_NOT_FOUND = 2501
NEU_ERR_TEMPLATE_NAME_TOO_LONG = 2502
NEU_ERR_PLUGIN_READ_FAILURE = 3000
NEU_ERR_PLUGIN_WRITE_FAILURE = 3001
NEU_ERR_PLUGIN_DISCONNECTED = 3002
NEU_ERR_PLUGIN_TAG_NOT_ALLOW_READ = 3003
NEU_ERR_PLUGIN_TAG_NOT_ALLOW_WRITE = 3004
NEU_ERR_PLUGIN_TAG_TYPE_MISMATCH = 3007
NEU_ERR_PLUGIN_TAG_VALUE_EXPIRED = 3008
NEU_ERR_PLUGIN_PROTOCOL_DECODE_FAILURE = 3009
NEU_ERR_PLUGIN_NOT_RUNNING = 3010
NEU_ERR_PLUGIN_TAG_NOT_READY = 3011
NEU_ERR_PLUGIN_PACKET_OUT_OF_ORDER = 3012
NEU_ERR_PLUGIN_NAME_TOO_LONG = 3013
NEU_ERR_PLUGIN_NOT_FOUND = 3014
NEU_ERR_PLUGIN_DEVICE_NOT_RESPONSE = 3015
NEU_ERR_PLUGIN_NOT_SUPPORT_TEMPLATE = 3016
NEU_ERR_PLUGIN_NOT_SUPPORT_WRITE_TAGS = 3017
+17
View File
@@ -2,6 +2,7 @@ import os
import time
import pytest
import subprocess
import random
def remove_persistence(dir='build/'):
@@ -21,3 +22,19 @@ def stop_neuron(process):
result = process.terminate()
stderr = process.stderr.read().decode()
assert stderr == '', "Neuron process has errors: " + stderr
def start_simulator(args, dir='build/simulator'):
process = subprocess.Popen(
args, stderr=subprocess.PIPE, cwd=dir)
time.sleep(1)
assert process.poll() is None
return process
def stop_simulator(process):
process.terminate()
def random_port():
return random.randint(30000, 65535)
+1 -1
View File
@@ -1,4 +1,4 @@
from distutils.core import setup
setup(name='neuronft', version="0.0.1",
description='ft module', author='neuron', py_modules=['neuron', 'neuron.api', 'neuron.common', 'neuron.config', 'neuron.process'])
description='ft module', author='neuron', py_modules=['neuron.api', 'neuron.common', 'neuron.config', 'neuron.process', 'neuron.error'])