mcsmapi 0.1.2__tar.gz → 0.1.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/PKG-INFO +1 -1
  2. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/__init__.py +2 -2
  3. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/models/daemon.py +1 -1
  4. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/models/overview.py +1 -1
  5. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/request.py +31 -28
  6. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi.egg-info/PKG-INFO +1 -1
  7. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/pyproject.toml +1 -1
  8. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/test/test_overview_model.py +2 -2
  9. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/LICENSE +0 -0
  10. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/README.md +0 -0
  11. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/apis/daemon.py +0 -0
  12. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/apis/file.py +0 -0
  13. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/apis/image.py +0 -0
  14. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/apis/instance.py +0 -0
  15. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/apis/overview.py +0 -0
  16. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/apis/user.py +0 -0
  17. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/exceptions.py +0 -0
  18. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/models/file.py +0 -0
  19. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/models/image.py +0 -0
  20. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/models/instance.py +0 -0
  21. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/models/user.py +0 -0
  22. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi/pool.py +0 -0
  23. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi.egg-info/SOURCES.txt +0 -0
  24. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi.egg-info/dependency_links.txt +0 -0
  25. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi.egg-info/requires.txt +0 -0
  26. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/mcsmapi.egg-info/top_level.txt +0 -0
  27. {mcsmapi-0.1.2 → mcsmapi-0.1.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: mcsmapi
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: Shortcut the pypi package of MCSM./快捷操作MCSM的pypi包
5
5
  Author-email: molanp <molanpp@outlook.com>
6
6
  Project-URL: Source, https://github.com/molanp/mcsmapi
@@ -7,7 +7,7 @@ from .apis.image import Image
7
7
  from .apis.daemon import Daemon
8
8
  from .apis.instance import Instance
9
9
  from .apis.overview import Overview
10
- from .request import Request, send
10
+ from .request import Request
11
11
 
12
12
 
13
13
  class MCSMAPI:
@@ -21,7 +21,7 @@ class MCSMAPI:
21
21
 
22
22
  def login(self, username: str, password: str) -> "MCSMAPI":
23
23
  Request.set_token(
24
- send(
24
+ Request.send(
25
25
  "POST",
26
26
  f"{ApiPool.AUTH}/login",
27
27
  data={"username": username, "password": password},
@@ -43,7 +43,7 @@ class DaemonModel(BaseModel):
43
43
  cpuMemChart: List[CpuMemChart] = []
44
44
  uuid: str = ""
45
45
  ip: str = ""
46
- port: str = ""
46
+ port: int = 24444
47
47
  prefix: str = ""
48
48
  available: bool = False
49
49
  remarks: str = ""
@@ -23,7 +23,7 @@ class SystemInfo(BaseModel):
23
23
  loadavg: List[float] = []
24
24
  platform: str = ""
25
25
  release: str = ""
26
- uptime: int = 0
26
+ uptime: float = 0
27
27
  cpu: float = 0
28
28
 
29
29
 
@@ -11,32 +11,34 @@ class Request:
11
11
  apikey = None
12
12
  token = None
13
13
 
14
- @staticmethod
15
- def set_mcsm_url(url):
14
+ @classmethod
15
+ def set_mcsm_url(cls, url):
16
16
  """设置类级别的 mcsm_url"""
17
- Request.mcsm_url = url
17
+ cls.mcsm_url = url
18
18
 
19
- @staticmethod
20
- def set_timeout(timeout):
19
+ @classmethod
20
+ def set_timeout(cls, timeout):
21
21
  """设置类级别的 timeout"""
22
- Request.timeout = timeout
22
+ cls.timeout = timeout
23
23
 
24
- @staticmethod
25
- def set_apikey(apikey):
24
+ @classmethod
25
+ def set_apikey(cls, apikey):
26
26
  """设置类级别的 apikey"""
27
- Request.apikey = apikey
27
+ cls.apikey = apikey
28
28
 
29
- @staticmethod
30
- def set_token(token):
29
+ @classmethod
30
+ def set_token(cls, token):
31
31
  """设置类级别的 token"""
32
- Request.token = token
32
+ cls.token = token
33
33
 
34
- def __init__(self, mcsm_url=None, timeout=None):
34
+ @classmethod
35
+ def __init__(cls, mcsm_url=None, timeout=None):
35
36
  """初始化时使用类变量,或者使用传入的参数覆盖默认值"""
36
- self.mcsm_url = mcsm_url or Request.mcsm_url
37
- self.timeout = timeout or Request.timeout
37
+ cls.mcsm_url = mcsm_url or cls.mcsm_url
38
+ cls.timeout = timeout or cls.timeout
38
39
 
39
- def send(self, method: str, endpoint: Any, params=None, data=None) -> Any:
40
+ @classmethod
41
+ def send(cls, method: str, endpoint: Any, params=None, data=None) -> Any:
40
42
  """发送 HTTP 请求"""
41
43
  if params is None:
42
44
  params = {}
@@ -45,20 +47,20 @@ class Request:
45
47
  if not isinstance(endpoint, str):
46
48
  endpoint = str(endpoint)
47
49
 
48
- url = urllib.parse.urljoin(self.mcsm_url, endpoint)
49
- if Request.apikey is not None:
50
- params["apikey"] = Request.apikey
51
- data["apikey"] = Request.apikey
52
- if Request.token is not None:
53
- params["token"] = Request.token
54
- data["token"] = Request.token
50
+ url = urllib.parse.urljoin(cls.mcsm_url, endpoint)
51
+ if cls.apikey is not None:
52
+ params["apikey"] = cls.apikey
53
+ data["apikey"] = cls.apikey
54
+ if cls.token is not None:
55
+ params["token"] = cls.token
56
+ data["token"] = cls.token
55
57
 
56
- response = Request.session.request(
58
+ response = cls.session.request(
57
59
  method.upper(),
58
60
  url,
59
61
  params=params,
60
62
  data=data,
61
- timeout=self.timeout,
63
+ timeout=cls.timeout,
62
64
  )
63
65
  try:
64
66
  response.raise_for_status()
@@ -68,15 +70,16 @@ class Request:
68
70
  response.status_code, response.json().get("data", response.text)
69
71
  ) from e
70
72
 
71
- async def upload(self, url: str, file: bytes) -> bool:
73
+ @classmethod
74
+ async def upload(cls, url: str, file: bytes) -> bool:
72
75
  """上传文件"""
73
76
 
74
- response = Request.session.request(
77
+ response = cls.session.request(
75
78
  "POST",
76
79
  url,
77
80
  headers={"Content-Type": "multipart/form-data"},
78
81
  files={"file": file},
79
- timeout=self.timeout,
82
+ timeout=cls.timeout,
80
83
  )
81
84
  try:
82
85
  response.raise_for_status()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: mcsmapi
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: Shortcut the pypi package of MCSM./快捷操作MCSM的pypi包
5
5
  Author-email: molanp <molanpp@outlook.com>
6
6
  Project-URL: Source, https://github.com/molanp/mcsmapi
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "mcsmapi"
7
- version = "0.1.2"
7
+ version = "0.1.3"
8
8
  description = "Shortcut the pypi package of MCSM./快捷操作MCSM的pypi包"
9
9
  readme = "README.md"
10
10
  authors = [
@@ -32,7 +32,7 @@ class TestOverviewModel(unittest.TestCase):
32
32
  "loadavg": [0, 0, 0],
33
33
  "platform": "win32",
34
34
  "release": "10.0.22631",
35
- "uptime": 905020,
35
+ "uptime": 905020.0,
36
36
  "cpu": 0.11684482123110951,
37
37
  },
38
38
  "chart": {
@@ -67,7 +67,7 @@ class TestOverviewModel(unittest.TestCase):
67
67
  "cpuMemChart": [{"cpu": 0, "mem": 13}],
68
68
  "uuid": "957c6bddf379445c82bac5edf7684bbc",
69
69
  "ip": "s1.example.com",
70
- "port": "24444",
70
+ "port": 24444,
71
71
  "prefix": "",
72
72
  "available": True,
73
73
  "remarks": "CN-ZJ-DEV-01",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes