mcsmapi 0.1.3__py3-none-any.whl → 0.1.4__py3-none-any.whl

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.
mcsmapi/__init__.py CHANGED
@@ -1,13 +1,13 @@
1
1
  import urllib.parse
2
- from .models.overview import OverviewModel
3
- from .pool import ApiPool
4
- from .apis.file import File
5
- from .apis.user import User
6
- from .apis.image import Image
7
- from .apis.daemon import Daemon
8
- from .apis.instance import Instance
9
- from .apis.overview import Overview
10
- from .request import Request
2
+ from mcsmapi.models.overview import OverviewModel
3
+ from mcsmapi.pool import ApiPool
4
+ from mcsmapi.apis.file import File
5
+ from mcsmapi.apis.user import User
6
+ from mcsmapi.apis.image import Image
7
+ from mcsmapi.apis.daemon import Daemon
8
+ from mcsmapi.apis.instance import Instance
9
+ from mcsmapi.apis.overview import Overview
10
+ from mcsmapi.request import Request
11
11
 
12
12
 
13
13
  class MCSMAPI:
File without changes
mcsmapi/apis/daemon.py CHANGED
@@ -1,7 +1,7 @@
1
1
  from typing import Any
2
- from ..pool import ApiPool
3
- from ..request import send
4
- from ..models.daemon import DaemonConfig
2
+ from mcsmapi.pool import ApiPool
3
+ from mcsmapi.request import send
4
+ from mcsmapi.models.daemon import DaemonConfig
5
5
 
6
6
 
7
7
  class Daemon:
@@ -10,10 +10,10 @@ class Daemon:
10
10
  新增一个节点。
11
11
 
12
12
  参数:
13
- - config (dict): 节点的配置信息,以字典形式提供,缺失内容由DaemonConfig模型补全。
13
+ <br> - config (dict): 节点的配置信息,以字典形式提供,缺失内容由DaemonConfig模型补全。
14
14
 
15
15
  返回:
16
- - str: 新增节点的ID
16
+ <br> - str: 新增节点的ID
17
17
  """
18
18
  return send(
19
19
  "POST",
@@ -26,10 +26,10 @@ class Daemon:
26
26
  删除一个节点。
27
27
 
28
28
  参数:
29
- - daemonId (str): 节点的唯一标识符。
29
+ <br> - daemonId (str): 节点的唯一标识符。
30
30
 
31
31
  返回:
32
- - bool: 删除成功后返回True
32
+ <br> - bool: 删除成功后返回True
33
33
  """
34
34
  return send(
35
35
  "DELETE", f"{ApiPool.SERVICE}/remote_service", params={"uuid": daemonId}
@@ -40,10 +40,10 @@ class Daemon:
40
40
  连接一个节点。
41
41
 
42
42
  参数:
43
- - daemonId (str): 节点的唯一标识符。
43
+ <br> - daemonId (str): 节点的唯一标识符。
44
44
 
45
45
  返回:
46
- - bool: 连接成功后返回True
46
+ <br> - bool: 连接成功后返回True
47
47
  """
48
48
  return send(
49
49
  "GET", f"{ApiPool.SERVICE}/link_remote_service", params={"uuid": daemonId}
@@ -56,11 +56,11 @@ class Daemon:
56
56
  **不建议直接使用此函数,建议调用overview()后在remote属性内使用updateConfig方法按需更新**
57
57
 
58
58
  参数:
59
- - daemonId (str): 节点的唯一标识符。
60
- - config (dict): 节点的配置信息,以字典形式提供,缺失内容由DaemonConfig模型补全。
59
+ <br> - daemonId (str): 节点的唯一标识符。
60
+ <br> - config (dict): 节点的配置信息,以字典形式提供,缺失内容由DaemonConfig模型补全。
61
61
 
62
62
  返回:
63
- - bool: 更新成功后返回True
63
+ <br> - bool: 更新成功后返回True
64
64
  """
65
65
  return send(
66
66
  "PUT",
mcsmapi/apis/file.py CHANGED
@@ -1,6 +1,6 @@
1
- from ..pool import ApiPool
2
- from ..request import Request, send, upload
3
- from ..models.file import CommonConfig, FileList
1
+ from mcsmapi.pool import ApiPool
2
+ from mcsmapi.request import Request, send, upload
3
+ from mcsmapi.models.file import CommonConfig, FileList
4
4
  import urllib.parse
5
5
  import os
6
6
 
@@ -18,14 +18,14 @@ class File:
18
18
  获取文件列表
19
19
 
20
20
  **参数:**
21
- - daemonId (str): 守护进程的唯一标识符。
22
- - uuid (str): 文件实例的唯一标识符。
23
- - target (str, 可选): 用于文件过滤的目标路径。默认为空字符串,表示不按路径过滤。
24
- - page (int, 可选): 指定分页的页码。默认为0。
25
- - page_size (int, 可选): 指定每页的项目数量。默认为100。
21
+ <br> - daemonId (str): 守护进程的唯一标识符。
22
+ <br> - uuid (str): 文件实例的唯一标识符。
23
+ <br> - target (str, 可选): 用于文件过滤的目标路径。默认为空字符串,表示不按路径过滤。
24
+ <br> - page (int, 可选): 指定分页的页码。默认为0。
25
+ <br> - page_size (int, 可选): 指定每页的项目数量。默认为100。
26
26
 
27
27
  **返回:**
28
- - FileList: 包含文件列表信息和分页详情的FileList模型。
28
+ <br> - FileList: 包含文件列表信息和分页详情的FileList模型。
29
29
  """
30
30
  result = send(
31
31
  "GET",
@@ -45,12 +45,12 @@ class File:
45
45
  获取文件内容
46
46
 
47
47
  **参数:**
48
- - daemonId (str): 守护进程的唯一标识符。
49
- - uuid (str): 文件实例的唯一标识符。
50
- - target (str): 文件的目标路径。
48
+ <br> - daemonId (str): 守护进程的唯一标识符。
49
+ <br> - uuid (str): 文件实例的唯一标识符。
50
+ <br> - target (str): 文件的目标路径。
51
51
 
52
52
  **返回:**
53
- - str: 文件的内容信息。
53
+ <br> - str: 文件的内容信息。
54
54
  """
55
55
  return send(
56
56
  "PUT",
@@ -64,13 +64,13 @@ class File:
64
64
  更新文件内容
65
65
 
66
66
  **参数:**
67
- - daemonId (str): 守护进程的唯一标识符。
68
- - uuid (str): 文件实例的唯一标识符。
69
- - target (str): 文件的目标路径。
70
- - text (str): 新的文件内容。
67
+ <br> - daemonId (str): 守护进程的唯一标识符。
68
+ <br> - uuid (str): 文件实例的唯一标识符。
69
+ <br> - target (str): 文件的目标路径。
70
+ <br> - text (str): 新的文件内容。
71
71
 
72
72
  **返回:**
73
- - bool: 更新成功后返回True。
73
+ <br> - bool: 更新成功后返回True。
74
74
  """
75
75
  return send(
76
76
  "PUT",
@@ -84,12 +84,12 @@ class File:
84
84
  下载文件
85
85
 
86
86
  **参数:**
87
- - daemonId (str): 守护进程的唯一标识符。
88
- - uuid (str): 文件实例的唯一标识符。
89
- - file_name (str): 要下载的文件名。路径+名字, 示例: /backup/world.zip
87
+ <br> - daemonId (str): 守护进程的唯一标识符。
88
+ <br> - uuid (str): 文件实例的唯一标识符。
89
+ <br> - file_name (str): 要下载的文件名。路径+名字, 示例: /backup/world.zip
90
90
 
91
91
  **返回:**
92
- - str: 文件下载URL。
92
+ <br> - str: 文件下载URL。
93
93
  """
94
94
 
95
95
  result = send(
@@ -109,13 +109,13 @@ class File:
109
109
  上传文件
110
110
 
111
111
  **参数:**
112
- - daemonId (str): 守护进程的唯一标识符。
113
- - uuid (str): 文件实例的唯一标识符。
114
- - file (bytes): 要上传的文件内容。
115
- - upload_dir (str): 文件上传到的目标路径。
112
+ <br> - daemonId (str): 守护进程的唯一标识符。
113
+ <br> - uuid (str): 文件实例的唯一标识符。
114
+ <br> - file (bytes): 要上传的文件内容。
115
+ <br> - upload_dir (str): 文件上传到的目标路径。
116
116
 
117
117
  **返回:**
118
- - bool: 上传成功后返回True。
118
+ <br> - bool: 上传成功后返回True。
119
119
  """
120
120
  result = send(
121
121
  "POST",
@@ -134,12 +134,12 @@ class File:
134
134
  复制多个文件夹或文件到指定位置。
135
135
 
136
136
  **参数:**
137
- - daemonId (str): 守护进程的唯一标识符。
138
- - uuid (str): 文件实例的唯一标识符。
139
- - copy_map (dict): 复制映射,格式为 {源路径: 目标路径}
137
+ <br> - daemonId (str): 守护进程的唯一标识符。
138
+ <br> - uuid (str): 文件实例的唯一标识符。
139
+ <br> - copy_map (dict): 复制映射,格式为 {源路径: 目标路径}
140
140
 
141
141
  **返回:**
142
- - bool: 上传成功后返回True。
142
+ <br> - bool: 上传成功后返回True。
143
143
  """
144
144
  targets = [[source, target] for source, target in copy_map.items()]
145
145
  return send(
@@ -154,13 +154,13 @@ class File:
154
154
  复制单个文件或文件夹到指定位置。
155
155
 
156
156
  **参数:**
157
- - daemonId (str): 守护进程的唯一标识符。
158
- - uuid (str): 实例的唯一标识符。
159
- - source (str): 源文件或文件夹的路径。
160
- - target (str): 目标文件或文件夹的路径。
157
+ <br> - daemonId (str): 守护进程的唯一标识符。
158
+ <br> - uuid (str): 实例的唯一标识符。
159
+ <br> - source (str): 源文件或文件夹的路径。
160
+ <br> - target (str): 目标文件或文件夹的路径。
161
161
 
162
162
  **返回:**
163
- - bool: 移动成功后返回True。
163
+ <br> - bool: 移动成功后返回True。
164
164
  """
165
165
  return self.copy(daemonId, uuid, {source: target})
166
166
 
@@ -169,12 +169,12 @@ class File:
169
169
  移动多个文件或文件夹到指定位置。
170
170
 
171
171
  参数:
172
- - daemonId (str): 守护进程的唯一标识符。
173
- - uuid (str): 实例的唯一标识符。
174
- - copy_map (dict): 移动映射,格式为 {源路径: 目标路径}
172
+ <br> - daemonId (str): 守护进程的唯一标识符。
173
+ <br> - uuid (str): 实例的唯一标识符。
174
+ <br> - copy_map (dict): 移动映射,格式为 {源路径: 目标路径}
175
175
 
176
176
  返回:
177
- - bool: 移动成功后返回True。
177
+ <br> - bool: 移动成功后返回True。
178
178
  """
179
179
  targets = [[source, target] for source, target in copy_map.items()]
180
180
  return send(
@@ -189,13 +189,13 @@ class File:
189
189
  从源路径移动单个文件或文件夹到目标路径。
190
190
 
191
191
  参数:
192
- - daemonId (str): 守护进程的唯一标识符。
193
- - uuid (str): 实例的唯一标识符。
194
- - source (str): 源文件或文件夹的路径。
195
- - target (str): 目标文件或文件夹的路径。
192
+ <br> - daemonId (str): 守护进程的唯一标识符。
193
+ <br> - uuid (str): 实例的唯一标识符。
194
+ <br> - source (str): 源文件或文件夹的路径。
195
+ <br> - target (str): 目标文件或文件夹的路径。
196
196
 
197
197
  返回:
198
- - bool: 移动成功后返回True。
198
+ <br> - bool: 移动成功后返回True。
199
199
  """
200
200
  return self.move(daemonId, uuid, {source: target})
201
201
 
@@ -204,13 +204,13 @@ class File:
204
204
  重命名单个文件或文件夹。
205
205
 
206
206
  **参数:**
207
- - daemonId (str): 守护进程的唯一标识符。
208
- - uuid (str): 实例的唯一标识符。
209
- - source (str): 源文件或文件夹的路径。
210
- - new_name (str): 源文件或文件夹的新名字。
207
+ <br> - daemonId (str): 守护进程的唯一标识符。
208
+ <br> - uuid (str): 实例的唯一标识符。
209
+ <br> - source (str): 源文件或文件夹的路径。
210
+ <br> - new_name (str): 源文件或文件夹的新名字。
211
211
 
212
212
  **返回:**
213
- - bool: 重命名成功后返回True。
213
+ <br> - bool: 重命名成功后返回True。
214
214
  """
215
215
  directory = os.path.dirname(source)
216
216
  target = os.path.join(directory, new_name)
@@ -221,13 +221,13 @@ class File:
221
221
  压缩多个文件或文件夹到指定位置。
222
222
 
223
223
  **参数:**
224
- - daemonId (str): 守护进程的唯一标识符。
225
- - uuid (str): 实例的唯一标识符。
226
- - source (str): 需要压缩到的 zip 文件路径。
227
- - targets (list): 要压缩的目标文件或文件夹的路径。
224
+ <br> - daemonId (str): 守护进程的唯一标识符。
225
+ <br> - uuid (str): 实例的唯一标识符。
226
+ <br> - source (str): 需要压缩到的 zip 文件路径。
227
+ <br> - targets (list): 要压缩的目标文件或文件夹的路径。
228
228
 
229
229
  **返回:**
230
- - bool: 压缩成功后返回True。
230
+ <br> - bool: 压缩成功后返回True。
231
231
  """
232
232
  return send(
233
233
  "POST",
@@ -243,15 +243,15 @@ class File:
243
243
  解压缩指定的zip文件到目标位置。
244
244
 
245
245
  **参数:**
246
- - daemonId (str): 守护进程的唯一标识符。
247
- - uuid (str): 实例的唯一标识符。
248
- - source (str): 需要解压的zip文件路径。
249
- - target (str): 解压到的目标路径。
250
- - code (str, optional): 压缩文件的编码方式,默认为"utf-8"。
246
+ <br> - daemonId (str): 守护进程的唯一标识符。
247
+ <br> - uuid (str): 实例的唯一标识符。
248
+ <br> - source (str): 需要解压的zip文件路径。
249
+ <br> - target (str): 解压到的目标路径。
250
+ <br> - code (str, optional): 压缩文件的编码方式,默认为"utf-8"。
251
251
  可选值: utf-8, gbk, big5
252
252
 
253
253
  **返回:**
254
- - bool: 解压成功后返回True。
254
+ <br> - bool: 解压成功后返回True。
255
255
  """
256
256
  return send(
257
257
  "POST",
@@ -265,12 +265,12 @@ class File:
265
265
  删除多个文件或文件夹。
266
266
 
267
267
  **参数:**
268
- - daemonId (str): 守护进程的唯一标识符。
269
- - uuid (str): 实例的唯一标识符。
270
- - targets (list): 要删除的文件或文件夹的路径。
268
+ <br> - daemonId (str): 守护进程的唯一标识符。
269
+ <br> - uuid (str): 实例的唯一标识符。
270
+ <br> - targets (list): 要删除的文件或文件夹的路径。
271
271
 
272
272
  **返回:**
273
- - bool: 删除成功后返回True。
273
+ <br> - bool: 删除成功后返回True。
274
274
  """
275
275
  return send(
276
276
  "DELETE",
@@ -284,12 +284,12 @@ class File:
284
284
  创建文件。
285
285
 
286
286
  **参数:**
287
- - daemonId (str): 守护进程的唯一标识符。
288
- - uuid (str): 实例的唯一标识符。
289
- - target (str): 目标文件的路径,包含文件名。
287
+ <br> - daemonId (str): 守护进程的唯一标识符。
288
+ <br> - uuid (str): 实例的唯一标识符。
289
+ <br> - target (str): 目标文件的路径,包含文件名。
290
290
 
291
291
  **返回:**
292
- - bool: 创建成功后返回True。
292
+ <br> - bool: 创建成功后返回True。
293
293
  """
294
294
  return send(
295
295
  "POST",
@@ -303,12 +303,12 @@ class File:
303
303
  创建文件夹
304
304
 
305
305
  **参数:**
306
- - daemonId (str): 守护进程的唯一标识符。
307
- - uuid (str): 实例的唯一标识符。
308
- - target (str): 目标文件夹的路径。
306
+ <br> - daemonId (str): 守护进程的唯一标识符。
307
+ <br> - uuid (str): 实例的唯一标识符。
308
+ <br> - target (str): 目标文件夹的路径。
309
309
 
310
310
  **返回:**
311
- - bool: 创建成功后返回True。
311
+ <br> - bool: 创建成功后返回True。
312
312
  """
313
313
  return send(
314
314
  "POST",
mcsmapi/apis/image.py CHANGED
@@ -1,6 +1,6 @@
1
- from ..pool import ApiPool
2
- from ..request import send
3
- from ..models.image import DockerImageItem, DockerContainerItem, DockerNetworkItem
1
+ from mcsmapi.pool import ApiPool
2
+ from mcsmapi.request import send
3
+ from mcsmapi.models.image import DockerImageItem, DockerContainerItem, DockerNetworkItem
4
4
 
5
5
 
6
6
  class Image:
@@ -9,10 +9,10 @@ class Image:
9
9
  获取镜像列表
10
10
 
11
11
  **参数:**
12
- - daemonId (str): 守护进程的唯一标识符。
12
+ <br> - daemonId (str): 守护进程的唯一标识符。
13
13
 
14
14
  **返回:**
15
- - list[ImageModel]: 包含镜像列表详情的 ImageModel 模型的列表。
15
+ <br> - list[ImageModel]: 包含镜像列表详情的 ImageModel 模型的列表。
16
16
  """
17
17
  result = send(
18
18
  "GET",
@@ -29,10 +29,10 @@ class Image:
29
29
  获取容器列表
30
30
 
31
31
  **参数:**
32
- - daemonId (str): 守护进程的唯一标识符。
32
+ <br> - daemonId (str): 守护进程的唯一标识符。
33
33
 
34
34
  **返回:**
35
- - list[DockerContainerItem]: 包含容器列表详情的 DockerContainerItem 模型的列表。
35
+ <br> - list[DockerContainerItem]: 包含容器列表详情的 DockerContainerItem 模型的列表。
36
36
  """
37
37
  result = send(
38
38
  "GET",
@@ -49,10 +49,10 @@ class Image:
49
49
  获取网络接口列表
50
50
 
51
51
  **参数:**
52
- - daemonId (str): 守护进程的唯一标识符。
52
+ <br> - daemonId (str): 守护进程的唯一标识符。
53
53
 
54
54
  **返回:**
55
- - list[DockerNetworkItem]: 包含网络接口列表详情的 DockerNetworkItem 模型的列表。
55
+ <br> - list[DockerNetworkItem]: 包含网络接口列表详情的 DockerNetworkItem 模型的列表。
56
56
  """
57
57
  result = send(
58
58
  "GET",
@@ -68,13 +68,13 @@ class Image:
68
68
  新增一个镜像
69
69
 
70
70
  **参数:**
71
- - daemonId (str): 守护进程的唯一标识符。
72
- - dockerFile (str): DockerFile Config
73
- - name (str): 镜像名称。
74
- - tag (str): 镜像版本。
71
+ <br> - daemonId (str): 守护进程的唯一标识符。
72
+ <br> - dockerFile (str): DockerFile Config
73
+ <br> - name (str): 镜像名称。
74
+ <br> - tag (str): 镜像版本。
75
75
 
76
76
  **返回:**
77
- - bool: 新增镜像成功后返回True。
77
+ <br> - bool: 新增镜像成功后返回True。
78
78
  """
79
79
  return send(
80
80
  "POST",
@@ -90,10 +90,10 @@ class Image:
90
90
  ## **由于文档此部分内容不详,未使用模型**
91
91
 
92
92
  **参数:**
93
- - daemonId (str): 守护进程的唯一标识符。
93
+ <br> - daemonId (str): 守护进程的唯一标识符。
94
94
 
95
95
  **返回:**
96
- - dict[str, int]: 包含构建进度信息的字典。
96
+ <br> - dict[str, int]: 包含构建进度信息的字典。
97
97
  """
98
98
  return send(
99
99
  "GET",
mcsmapi/apis/instance.py CHANGED
@@ -1,7 +1,7 @@
1
1
  from typing import Any
2
- from ..pool import ApiPool
3
- from ..request import send
4
- from ..models.instance import (
2
+ from mcsmapi.pool import ApiPool
3
+ from mcsmapi.request import send
4
+ from mcsmapi.models.instance import (
5
5
  InstanceSearchList,
6
6
  InstanceDetail,
7
7
  InstanceCreateResult,
@@ -23,15 +23,15 @@ class Instance:
23
23
  根据指定的参数搜索实例信息
24
24
 
25
25
  **参数:**
26
- - daemonId (str): 守护进程的唯一标识符
27
- - page (int): 页码,用于指示返回数据的页数。默认为1,表示返回第一页数据
28
- - page_size (int): 每页大小,用于指定每页包含的数据条数。默认为20,表示每页包含20条数据
29
- - instance_name (str): 实例的名称。默认为空字符串,表示不进行实例名称过滤
30
- - status (str): 实例的状态。默认为空字符串,表示不进行状态过滤
31
- - tag (list[str] | None): 实例的标签列表。默认为None,表示不进行标签过滤
26
+ <br> - daemonId (str): 守护进程的唯一标识符
27
+ <br> - page (int): 页码,用于指示返回数据的页数。默认为1,表示返回第一页数据
28
+ <br> - page_size (int): 每页大小,用于指定每页包含的数据条数。默认为20,表示每页包含20条数据
29
+ <br> - instance_name (str): 实例的名称。默认为空字符串,表示不进行实例名称过滤
30
+ <br> - status (str): 实例的状态。默认为空字符串,表示不进行状态过滤
31
+ <br> - tag (list[str] | None): 实例的标签列表。默认为None,表示不进行标签过滤
32
32
 
33
33
  **返回:**
34
- - InstanceSearchList: 包含搜索结果的模型。该模型包含了符合搜索条件的实例信息列表,以及总数据条数、总页数等分页信息。
34
+ <br> - InstanceSearchList: 包含搜索结果的模型。该模型包含了符合搜索条件的实例信息列表,以及总数据条数、总页数等分页信息。
35
35
  """
36
36
  if tag is None:
37
37
  tag = []
@@ -54,11 +54,11 @@ class Instance:
54
54
  获取指定实例的详细信息
55
55
 
56
56
  **参数:**
57
- - daemonId (str): 守护进程的唯一标识符
58
- - uuid (str): 实例的唯一标识符
57
+ <br> - daemonId (str): 守护进程的唯一标识符
58
+ <br> - uuid (str): 实例的唯一标识符
59
59
 
60
60
  **返回:**
61
- - InstanceDetail: 包含实例详细信息的模型。
61
+ <br> - InstanceDetail: 包含实例详细信息的模型。
62
62
  """
63
63
  result = send(
64
64
  "GET",
@@ -72,11 +72,11 @@ class Instance:
72
72
  创建一个实例。
73
73
 
74
74
  **参数:**
75
- - daemonId (str): 守护进程的唯一标识符,用于关联新创建的实例。
76
- - config (dict[str, Any]): 实例的配置信息,以字典形式提供,缺失内容由InstanceConfig模型补全。
75
+ <br> - daemonId (str): 守护进程的唯一标识符,用于关联新创建的实例。
76
+ <br> - config (dict[str, Any]): 实例的配置信息,以字典形式提供,缺失内容由InstanceConfig模型补全。
77
77
 
78
78
  **返回:**
79
- - InstanceCreateResult: 一个包含新创建实例信息的结果对象,内容由InstanceCreateResult模型定义。
79
+ <br> - InstanceCreateResult: 一个包含新创建实例信息的结果对象,内容由InstanceCreateResult模型定义。
80
80
  """
81
81
  result = send(
82
82
  "POST",
@@ -93,12 +93,12 @@ class Instance:
93
93
  **不建议直接使用此函数,建议调用search后在data属性内使用updateConfig方法按需更新**
94
94
 
95
95
  **参数:**
96
- - daemonId (str): 守护进程的标识符。
97
- - uuid (str): 实例的唯一标识符。
98
- - config (dict): 新的实例配置,以字典形式提供,缺失内容由InstanceConfig模型补全。
96
+ <br> - daemonId (str): 守护进程的标识符。
97
+ <br> - uuid (str): 实例的唯一标识符。
98
+ <br> - config (dict): 新的实例配置,以字典形式提供,缺失内容由InstanceConfig模型补全。
99
99
 
100
100
  **返回:**
101
- - str|bool: 更新成功后返回更新的实例UUID,如果未找到该字段,则默认返回True。
101
+ <br> - str|bool: 更新成功后返回更新的实例UUID,如果未找到该字段,则默认返回True。
102
102
  """
103
103
  result = send(
104
104
  "PUT",
@@ -115,12 +115,12 @@ class Instance:
115
115
  删除实例。
116
116
 
117
117
  **参数:**
118
- - daemonId (str): 守护进程的标识符。
119
- - uuids (list): 要删除的实例UUID列表。
120
- - deleteFile (bool, optional): 是否删除关联的文件,默认为False。
118
+ <br> - daemonId (str): 守护进程的标识符。
119
+ <br> - uuids (list): 要删除的实例UUID列表。
120
+ <br> - deleteFile (bool, optional): 是否删除关联的文件,默认为False。
121
121
 
122
122
  **返回:**
123
- - list[str]: 删除操作后返回的UUID列表。
123
+ <br> - list[str]: 删除操作后返回的UUID列表。
124
124
  """
125
125
  return send(
126
126
  "DELETE",
@@ -134,11 +134,11 @@ class Instance:
134
134
  启动实例。
135
135
 
136
136
  **参数:**
137
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
138
- - uuid (str): 实例的唯一标识符,用于指定需要启动的实例。
137
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
138
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要启动的实例。
139
139
 
140
140
  **返回:**
141
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
141
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
142
142
  """
143
143
  result = send(
144
144
  "GET",
@@ -152,11 +152,11 @@ class Instance:
152
152
  关闭实例。
153
153
 
154
154
  **参数:**
155
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
156
- - uuid (str): 实例的唯一标识符,用于指定需要关闭的实例。
155
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
156
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要关闭的实例。
157
157
 
158
158
  **返回:**
159
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
159
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
160
160
  """
161
161
  result = send(
162
162
  "GET",
@@ -170,11 +170,11 @@ class Instance:
170
170
  重启实例。
171
171
 
172
172
  **参数:**
173
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
174
- - uuid (str): 实例的唯一标识符,用于指定需要重启的实例。
173
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
174
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要重启的实例。
175
175
 
176
176
  **返回:**
177
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
177
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
178
178
  """
179
179
  result = send(
180
180
  "GET",
@@ -188,11 +188,11 @@ class Instance:
188
188
  强制关闭实例。
189
189
 
190
190
  **参数:**
191
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
192
- - uuid (str): 实例的唯一标识符,用于指定需要强制关闭的实例。
191
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
192
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要强制关闭的实例。
193
193
 
194
194
  **返回:**
195
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
195
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
196
196
  """
197
197
  result = send(
198
198
  "GET",
@@ -206,11 +206,11 @@ class Instance:
206
206
  对多个实例进行批量操作。
207
207
 
208
208
  **参数:**
209
- - instances (list[dict[str,str]]): 包含多个实例信息的列表,每个实例信息为一个字典,包含 "uuid" 和 "daemonId" 字段。
210
- - operation (str): 要执行的操作,可以是 "start", "stop", "restart", 或 "kill"。
209
+ <br> - instances (list[dict[str,str]]): 包含多个实例信息的列表,每个实例信息为一个字典,包含 "uuid" 和 "daemonId" 字段。
210
+ <br> - operation (str): 要执行的操作,可以是 "start", "stop", "restart", 或 "kill"。
211
211
 
212
212
  **返回:**
213
- - list[dict[str,str]]:包含每个实例操作结果的列表,每个结果为一个字典,包含 "uuid" 和 "result" 字段。
213
+ <br> - list[dict[str,str]]:包含每个实例操作结果的列表,每个结果为一个字典,包含 "uuid" 和 "result" 字段。
214
214
  """
215
215
  if operation in {"start", "stop", "restart", "kill"}:
216
216
  return send("POST", f"{ApiPool.INSTANCE}/multi_{operation}", data=instances)
@@ -222,11 +222,11 @@ class Instance:
222
222
  升级实例。
223
223
 
224
224
  **参数:**
225
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
226
- - uuid (str): 实例的唯一标识符,用于指定需要升级的实例。
225
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
226
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要升级的实例。
227
227
 
228
228
  **返回:**
229
- - bool: 返回操作结果,成功时返回True。
229
+ <br> - bool: 返回操作结果,成功时返回True。
230
230
  """
231
231
  return send(
232
232
  "GET",
@@ -239,12 +239,12 @@ class Instance:
239
239
  向实例发送命令。
240
240
 
241
241
  **参数:**
242
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
243
- - uuid (str): 实例的唯一标识符,用于指定需要发送命令的实例。
244
- - command (str): 要发送的命令。
242
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
243
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要发送命令的实例。
244
+ <br> - command (str): 要发送的命令。
245
245
 
246
246
  **返回:**
247
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
247
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
248
248
  """
249
249
  result = send(
250
250
  "GET",
@@ -258,12 +258,12 @@ class Instance:
258
258
  获取实例输出。
259
259
 
260
260
  **参数:**
261
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
262
- - uuid (str): 实例的唯一标识符,用于指定需要获取输出的实例。
263
- - size (int, optional): 获取的日志大小: 1KB ~ 2048KB,如果未设置,则返回所有日志
261
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
262
+ <br> - uuid (str): 实例的唯一标识符,用于指定需要获取输出的实例。
263
+ <br> - size (int, optional): 获取的日志大小: 1KB ~ 2048KB,如果未设置,则返回所有日志
264
264
 
265
265
  **返回:**
266
- - str: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
266
+ <br> - str: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
267
267
  """
268
268
  return send(
269
269
  "GET",
@@ -283,14 +283,14 @@ class Instance:
283
283
  重装实例。
284
284
 
285
285
  **参数:**
286
- - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
287
- - uuid (str): 实例的唯一标识符。
288
- - targetUrl (str): 重装文件的目标URL。
289
- - title (str): 重装文件的标题。
290
- - description (str, optional): 重装文件的描述,默认为空字符串。
286
+ <br> - daemonId (str): 守护进程的ID,用于标识特定的守护进程。
287
+ <br> - uuid (str): 实例的唯一标识符。
288
+ <br> - targetUrl (str): 重装文件的目标URL。
289
+ <br> - title (str): 重装文件的标题。
290
+ <br> - description (str, optional): 重装文件的描述,默认为空字符串。
291
291
 
292
292
  **返回:**
293
- - bool: 返回操作结果,成功时返回True。
293
+ <br> - bool: 返回操作结果,成功时返回True。
294
294
  """
295
295
  return send(
296
296
  "POST",
mcsmapi/apis/overview.py CHANGED
@@ -1,6 +1,6 @@
1
- from ..pool import ApiPool
2
- from ..request import send
3
- from ..models.overview import OverviewModel
1
+ from mcsmapi.pool import ApiPool
2
+ from mcsmapi.request import send
3
+ from mcsmapi.models.overview import OverviewModel
4
4
 
5
5
 
6
6
  class Overview:
mcsmapi/apis/user.py CHANGED
@@ -1,7 +1,7 @@
1
1
  from typing import Any
2
- from ..pool import ApiPool
3
- from ..request import send
4
- from ..models.user import SearchUserModel, UserConfig
2
+ from mcsmapi.pool import ApiPool
3
+ from mcsmapi.request import send
4
+ from mcsmapi.models.user import SearchUserModel, UserConfig
5
5
 
6
6
 
7
7
  class User:
@@ -11,14 +11,14 @@ class User:
11
11
  """根据用户名和角色搜索用户信息
12
12
 
13
13
  **参数:**
14
- - username (str): 要搜索的用户名。默认为空字符串,表示不进行用户名过滤
15
- - page (int): 页码,用于指示返回数据的页数。默认为1,表示返回第一页数据
16
- - page_size (int): 每页大小,用于指定每页包含的数据条数。默认为20,表示每页包含20条数据
17
- - role (str): 用户权限。默认为空字符串,表示不进行权限过滤
14
+ <br> - username (str): 要搜索的用户名。默认为空字符串,表示不进行用户名过滤
15
+ <br> - page (int): 页码,用于指示返回数据的页数。默认为1,表示返回第一页数据
16
+ <br> - page_size (int): 每页大小,用于指定每页包含的数据条数。默认为20,表示每页包含20条数据
17
+ <br> - role (str): 用户权限。默认为空字符串,表示不进行权限过滤
18
18
  可用的值为 1=用户, 10=管理员, -1=被封禁的用户
19
19
 
20
20
  **返回:**
21
- - SearchUserModel: 包含搜索结果的模型。该模型包含了符合搜索条件的用户信息列表,以及总数据条数、总页数等分页信息。
21
+ <br> - SearchUserModel: 包含搜索结果的模型。该模型包含了符合搜索条件的用户信息列表,以及总数据条数、总页数等分页信息。
22
22
  """
23
23
  result = send(
24
24
  "GET",
@@ -37,12 +37,12 @@ class User:
37
37
  创建新用户的方法
38
38
 
39
39
  **参数:**
40
- - username (str): 用户名,字符串类型
41
- - password (str): 密码,字符串类型
42
- - permission (int): 权限等级,整数类型,默认值为1
40
+ <br> - username (str): 用户名,字符串类型
41
+ <br> - password (str): 密码,字符串类型
42
+ <br> - permission (int): 权限等级,整数类型,默认值为1
43
43
 
44
44
  **返回:**
45
- - str|bool: 创建成功后返回用户的UUID,如果未找到该字段,则默认返回True。
45
+ <br> - str|bool: 创建成功后返回用户的UUID,如果未找到该字段,则默认返回True。
46
46
  """
47
47
  return send(
48
48
  "POST",
@@ -57,11 +57,11 @@ class User:
57
57
  **不建议直接使用此函数,建议调用search后使用update方法按需更新**
58
58
 
59
59
  **参数:**
60
- - uuid (str): 用户的唯一标识符UUID
61
- - config (dict[str, Any]): 新的用户信息,以字典形式提供,缺失内容由UserConfig模型补全。
60
+ <br> - uuid (str): 用户的唯一标识符UUID
61
+ <br> - config (dict[str, Any]): 新的用户信息,以字典形式提供,缺失内容由UserConfig模型补全。
62
62
 
63
63
  **返回:**
64
- - bool: 成功时返回True
64
+ <br> - bool: 成功时返回True
65
65
  """
66
66
  return send(
67
67
  "PUT",
@@ -74,9 +74,9 @@ class User:
74
74
  删除用户的方法
75
75
 
76
76
  **参数:**
77
- - uuids (list[str]): 包含要删除的用户UUID的列表。
77
+ <br> - uuids (list[str]): 包含要删除的用户UUID的列表。
78
78
 
79
79
  **返回:**
80
- - bool: 成功时返回True
80
+ <br> - bool: 成功时返回True
81
81
  """
82
82
  return send("DELETE", ApiPool.AUTH, data=uuids)
File without changes
mcsmapi/models/daemon.py CHANGED
@@ -1,6 +1,6 @@
1
1
  from typing import Any, List
2
2
  from pydantic import BaseModel
3
- from ..models.instance import InstanceCreateResult
3
+ from mcsmapi.models.instance import InstanceCreateResult
4
4
 
5
5
 
6
6
  class CpuMemChart(BaseModel):
@@ -53,9 +53,9 @@ class DaemonModel(BaseModel):
53
53
  删除该节点。
54
54
 
55
55
  返回:
56
- - bool: 删除成功后返回True
56
+ <br> - bool: 删除成功后返回True
57
57
  """
58
- from ..apis.daemon import Daemon
58
+ from mcsmapi.apis.daemon import Daemon
59
59
 
60
60
  return Daemon().delete(self.uuid)
61
61
 
@@ -64,9 +64,9 @@ class DaemonModel(BaseModel):
64
64
  链接该节点。
65
65
 
66
66
  返回:
67
- - bool: 链接成功后返回True
67
+ <br> - bool: 链接成功后返回True
68
68
  """
69
- from ..apis.daemon import Daemon
69
+ from mcsmapi.apis.daemon import Daemon
70
70
 
71
71
  return Daemon().link(self.uuid)
72
72
 
@@ -75,12 +75,12 @@ class DaemonModel(BaseModel):
75
75
  更新该节点的配置。
76
76
 
77
77
  参数:
78
- - config (dict[str, Any]): 节点的配置信息,以字典形式提供,缺失内容使用原节点配置填充。
78
+ <br> - config (dict[str, Any]): 节点的配置信息,以字典形式提供,缺失内容使用原节点配置填充。
79
79
 
80
80
  返回:
81
- - bool: 更新成功后返回True
81
+ <br> - bool: 更新成功后返回True
82
82
  """
83
- from ..apis.daemon import Daemon
83
+ from mcsmapi.apis.daemon import Daemon
84
84
 
85
85
  updated_config = self.dict()
86
86
  updated_config.update(config)
@@ -100,12 +100,12 @@ class DaemonModel(BaseModel):
100
100
  在当前节点创建一个实例。
101
101
 
102
102
  参数:
103
- - config (dict[str, Any]): 实例的配置信息,以字典形式提供,缺失内容由InstanceConfig模型补全。
103
+ <br> - config (dict[str, Any]): 实例的配置信息,以字典形式提供,缺失内容由InstanceConfig模型补全。
104
104
 
105
105
  返回:
106
- - InstanceCreateResult: 一个包含新创建实例信息的结果对象,内容由InstanceCreateResult模型定义。
106
+ <br> - InstanceCreateResult: 一个包含新创建实例信息的结果对象,内容由InstanceCreateResult模型定义。
107
107
  """
108
- from ..apis.instance import Instance
108
+ from mcsmapi.apis.instance import Instance
109
109
  from .instance import InstanceConfig
110
110
 
111
111
  return Instance().create(self.uuid, InstanceConfig(**config).dict())
@@ -115,13 +115,13 @@ class DaemonModel(BaseModel):
115
115
  删除当前节点的一个或多个实例。
116
116
 
117
117
  参数:
118
- - uuids (list[str]): 要删除的实例UUID列表。
119
- - deleteFile (bool, optional): 是否删除关联的文件,默认为False。
118
+ <br> - uuids (list[str]): 要删除的实例UUID列表。
119
+ <br> - deleteFile (bool, optional): 是否删除关联的文件,默认为False。
120
120
 
121
121
  返回:
122
- - list[str]: 删除操作后返回的UUID列表。
122
+ <br> - list[str]: 删除操作后返回的UUID列表。
123
123
  """
124
- from ..apis.instance import Instance
124
+ from mcsmapi.apis.instance import Instance
125
125
 
126
126
  return Instance().delete(self.uuid, uuids, deleteFile)
127
127
 
mcsmapi/models/file.py CHANGED
@@ -18,12 +18,12 @@ class FileItem(BaseModel):
18
18
  重命名该文件或文件夹。
19
19
 
20
20
  **参数:**
21
- - new_name (str): 源文件或文件夹的新名字。
21
+ <br> - new_name (str): 源文件或文件夹的新名字。
22
22
 
23
23
  **返回:**
24
- - bool: 重命名成功后返回True。
24
+ <br> - bool: 重命名成功后返回True。
25
25
  """
26
- from ..apis.file import File
26
+ from mcsmapi.apis.file import File
27
27
 
28
28
  return File().rename(
29
29
  self.daemonId, self.uuid, os.path.join(self.target, self.name), newName
@@ -34,16 +34,16 @@ class FileItem(BaseModel):
34
34
  删除该文件或文件夹。
35
35
 
36
36
  **返回:**
37
- - bool: 重命名成功后返回True。
37
+ <br> - bool: 重命名成功后返回True。
38
38
  """
39
- from ..apis.file import File
39
+ from mcsmapi.apis.file import File
40
40
 
41
41
  return File().delete(
42
42
  self.daemonId, self.uuid, [os.path.join(self.target, self.name)]
43
43
  )
44
44
 
45
45
  def copy(self, target: str) -> bool:
46
- from ..apis.file import File
46
+ from mcsmapi.apis.file import File
47
47
 
48
48
  return File().copyOne(
49
49
  self.daemonId, self.uuid, os.path.join(self.target, self.name), target
@@ -54,12 +54,12 @@ class FileItem(BaseModel):
54
54
  移动该文件或文件夹到目标路径。
55
55
 
56
56
  **参数:**
57
- - target (str): 目标文件或文件夹的路径。
57
+ <br> - target (str): 目标文件或文件夹的路径。
58
58
 
59
59
  **返回:**
60
- - bool: 移动成功后返回True。
60
+ <br> - bool: 移动成功后返回True。
61
61
  """
62
- from ..apis.file import File
62
+ from mcsmapi.apis.file import File
63
63
 
64
64
  return File().moveOne(
65
65
  self.daemonId, self.uuid, os.path.join(self.target, self.name), target
@@ -70,14 +70,14 @@ class FileItem(BaseModel):
70
70
  解压缩该 zip 文件到目标位置。
71
71
 
72
72
  **参数:**
73
- - target (str): 解压到的目标路径。
74
- - code (str, optional): 压缩文件的编码方式,默认为"utf-8"。
73
+ <br> - target (str): 解压到的目标路径。
74
+ <br> - code (str, optional): 压缩文件的编码方式,默认为"utf-8"。
75
75
  可选值: utf-8, gbk, big5
76
76
 
77
77
  **返回:**
78
- - bool: 解压成功后返回True。
78
+ <br> - bool: 解压成功后返回True。
79
79
  """
80
- from ..apis.file import File
80
+ from mcsmapi.apis.file import File
81
81
 
82
82
  return File().unzip(
83
83
  self.daemonId, self.uuid, os.path.join(self.target, self.name), target, code
mcsmapi/models/image.py CHANGED
@@ -1,4 +1,4 @@
1
- from typing import List, Optional
1
+ from typing import List, Optional, Union
2
2
  from pydantic import BaseModel
3
3
 
4
4
 
@@ -9,8 +9,8 @@ class DockerConfig(BaseModel):
9
9
  ports: List[str] = ["25565:25565/tcp"]
10
10
  extraVolumes: List[str] = []
11
11
  maxSpace: Optional[int] = None
12
- network: Optional[str] = None
13
- io: Optional[str] = None
12
+ network: Optional[Union[str, int]] = None
13
+ io: Optional[Union[str, int]] = None
14
14
  networkMode: str = "bridge"
15
15
  networkAliases: List[str] = []
16
16
  cpusetCpus: str = ""
@@ -1,6 +1,6 @@
1
- from typing import List, Dict
1
+ from typing import List, Dict, Optional
2
2
  from pydantic import BaseModel
3
- from .image import DockerConfig
3
+ from mcsmapi.models.image import DockerConfig
4
4
 
5
5
 
6
6
  class TerminalOption(BaseModel):
@@ -31,7 +31,7 @@ class InstanceConfig(BaseModel):
31
31
  lastDatetime: int = 0
32
32
  type: str = "universal"
33
33
  tag: List[str] = []
34
- endTime: int = 0
34
+ endTime: Optional[int] = None
35
35
  fileCode: str = "gbk"
36
36
  processType: str = "docker"
37
37
  updateCommand: str = "shutdown -s"
@@ -81,9 +81,9 @@ class InstanceDetail(BaseModel):
81
81
  启动该实例。
82
82
 
83
83
  **返回:**
84
- - str|bool: str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
84
+ <br> - str|bool: str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
85
85
  """
86
- from ..apis.instance import Instance
86
+ from mcsmapi.apis.instance import Instance
87
87
 
88
88
  return Instance().start(self.daemonId, self.instanceUuid)
89
89
 
@@ -92,9 +92,9 @@ class InstanceDetail(BaseModel):
92
92
  停止该实例。
93
93
 
94
94
  **返回:**
95
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
95
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
96
96
  """
97
- from ..apis.instance import Instance
97
+ from mcsmapi.apis.instance import Instance
98
98
 
99
99
  return Instance().stop(self.daemonId, self.instanceUuid)
100
100
 
@@ -103,9 +103,9 @@ class InstanceDetail(BaseModel):
103
103
  重启该实例。
104
104
 
105
105
  **返回:**
106
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
106
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
107
107
  """
108
- from ..apis.instance import Instance
108
+ from mcsmapi.apis.instance import Instance
109
109
 
110
110
  return Instance().restart(self.daemonId, self.instanceUuid)
111
111
 
@@ -114,9 +114,9 @@ class InstanceDetail(BaseModel):
114
114
  强制关闭该实例。
115
115
 
116
116
  **返回:**
117
- - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
117
+ <br> - str|bool: 返回结果中的 "instanceUuid" 字段值,如果未找到该字段,则默认返回True。
118
118
  """
119
- from ..apis.instance import Instance
119
+ from mcsmapi.apis.instance import Instance
120
120
 
121
121
  return Instance().kill(self.daemonId, self.instanceUuid)
122
122
 
@@ -125,9 +125,9 @@ class InstanceDetail(BaseModel):
125
125
  删除该实例。
126
126
 
127
127
  **返回:**
128
- - str: 被删除的实例的uuid。
128
+ <br> - str: 被删除的实例的uuid。
129
129
  """
130
- from ..apis.instance import Instance
130
+ from mcsmapi.apis.instance import Instance
131
131
 
132
132
  return Instance().delete(self.daemonId, [self.instanceUuid], deleteFile)[0]
133
133
 
@@ -136,9 +136,9 @@ class InstanceDetail(BaseModel):
136
136
  升级实例。
137
137
 
138
138
  **返回:**
139
- - bool: 返回操作结果,成功时返回True。
139
+ <br> - bool: 返回操作结果,成功时返回True。
140
140
  """
141
- from ..apis.instance import Instance
141
+ from mcsmapi.apis.instance import Instance
142
142
 
143
143
  return Instance().update(self.daemonId, self.instanceUuid)
144
144
 
@@ -147,12 +147,12 @@ class InstanceDetail(BaseModel):
147
147
  更新该实例配置。
148
148
 
149
149
  **参数:**
150
- - config (dict): 新的实例配置,以字典形式提供,缺失内容由使用原实例配置填充。
150
+ <br> - config (dict): 新的实例配置,以字典形式提供,缺失内容由使用原实例配置填充。
151
151
 
152
152
  **返回:**
153
- - str|bool: 更新成功后返回更新的实例UUID,如果未找到该字段,则默认返回True。
153
+ <br> - str|bool: 更新成功后返回更新的实例UUID,如果未找到该字段,则默认返回True。
154
154
  """
155
- from ..apis.instance import Instance
155
+ from mcsmapi.apis.instance import Instance
156
156
 
157
157
  updated_config = self.config.dict()
158
158
  updated_config.update(config)
@@ -168,14 +168,14 @@ class InstanceDetail(BaseModel):
168
168
  重装实例。
169
169
 
170
170
  **参数:**
171
- - targetUrl (str): 重装文件的目标URL。
172
- - title (str): 重装文件的标题。
173
- - description (str, optional): 重装文件的描述,默认为空字符串。
171
+ <br> - targetUrl (str): 重装文件的目标URL。
172
+ <br> - title (str): 重装文件的标题。
173
+ <br> - description (str, optional): 重装文件的描述,默认为空字符串。
174
174
 
175
175
  **返回:**
176
- - bool: 返回操作结果,成功时返回True
176
+ <br> - bool: 返回操作结果,成功时返回True
177
177
  """
178
- from ..apis.instance import Instance
178
+ from mcsmapi.apis.instance import Instance
179
179
 
180
180
  return Instance().reinstall(
181
181
  self.daemonId, self.instanceUuid, targetUrl, title, description
@@ -1,6 +1,6 @@
1
1
  from typing import Dict, List, Optional
2
2
  from pydantic import BaseModel
3
- from .daemon import DaemonModel
3
+ from mcsmapi.models.daemon import DaemonModel
4
4
 
5
5
 
6
6
  class SystemUser(BaseModel):
mcsmapi/models/user.py CHANGED
@@ -1,6 +1,6 @@
1
1
  from typing import Any, List
2
2
  from pydantic import BaseModel
3
- from ..models.instance import InstanceDetail, UserInstancesList
3
+ from mcsmapi.models.instance import InstanceDetail, UserInstancesList
4
4
 
5
5
 
6
6
  class UserModel(BaseModel):
@@ -23,9 +23,9 @@ class UserModel(BaseModel):
23
23
  删除该用户。
24
24
 
25
25
  **返回:**
26
- - bool: 删除成功后返回True。
26
+ <br> - bool: 删除成功后返回True。
27
27
  """
28
- from ..apis.user import User
28
+ from mcsmapi.apis.user import User
29
29
 
30
30
  return User().delete([self.uuid])
31
31
 
@@ -34,12 +34,12 @@ class UserModel(BaseModel):
34
34
  更新该用户的信息。
35
35
 
36
36
  参数:
37
- - config (dict[str, Any]): 用户的新信息,以字典形式提供,缺失内容使用原用户信息填充。
37
+ <br> - config (dict[str, Any]): 用户的新信息,以字典形式提供,缺失内容使用原用户信息填充。
38
38
 
39
39
  返回:
40
- - bool: 更新成功后返回True。
40
+ <br> - bool: 更新成功后返回True。
41
41
  """
42
- from ..apis.user import User
42
+ from mcsmapi.apis.user import User
43
43
 
44
44
  updated_config = self.dict()
45
45
  updated_config.update(config)
@@ -1,15 +1,16 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: mcsmapi
3
- Version: 0.1.3
3
+ Version: 0.1.4
4
4
  Summary: Shortcut the pypi package of MCSM./快捷操作MCSM的pypi包
5
5
  Author-email: molanp <molanpp@outlook.com>
6
+ License-Expression: MIT
6
7
  Project-URL: Source, https://github.com/molanp/mcsmapi
7
8
  Classifier: Programming Language :: Python :: 3
8
- Classifier: License :: OSI Approved :: MIT License
9
9
  Description-Content-Type: text/markdown
10
10
  License-File: LICENSE
11
11
  Requires-Dist: requests
12
12
  Requires-Dist: pydantic
13
+ Dynamic: license-file
13
14
 
14
15
  # MCSM API
15
16
 
@@ -22,6 +23,10 @@ English|[Chinese Simplified](README_zh-cn.md)
22
23
  > [!important]
23
24
  > We need your help, the documentation for this project has not been written yet, if you are willing, please submit pr to help us write the documentation.
24
25
 
26
+ ## Documentation
27
+
28
+ The documentation is not yet complete, if you need it, please visit [https://deepwiki.com/molanp/mcsmapi](https://deepwiki.com/molanp/mcsmapi)
29
+
25
30
  ## Introduction
26
31
 
27
32
  `mcsmapi` is a PyPI package based on [MCSManager](https://github.com/MCSManager/MCSManager), designed to simplify interactions with the MCSM API.
@@ -38,8 +43,8 @@ pip install mcsmapi
38
43
 
39
44
  ## Supported Features
40
45
 
41
- - [x] Dashboard data ([Overview](doc/en/Overview.md))
42
- - [x] User management ([User](doc/en/User.md))
46
+ - [x] Dashboard data (`Overview`)
47
+ - [x] User management (`User`)
43
48
  - [x] Instance management (`Instance`)
44
49
  - [x] Daemon management (`Daemon`)
45
50
  - [x] File management (`File`)
@@ -57,7 +62,7 @@ pip install mcsmapi
57
62
  from mcsmapi import MCSMAPI
58
63
 
59
64
  # Initialize
60
- mcsm = MCSMAPI("https://example.com")
65
+ mcsm = MCSMAPI("https://example.com") # https or http required
61
66
 
62
67
  # Log in with username and password (API permissions depend on the account permissions)
63
68
  mcsm.login("username", "password")
@@ -0,0 +1,23 @@
1
+ mcsmapi/__init__.py,sha256=Xm0gsQMecMZwD1of9UGOkTan25l_jqrWkG-7mg0YgF4,1514
2
+ mcsmapi/exceptions.py,sha256=mHsAHyoX9SiFDGBMEhesA_ao9hhZZ38EGTp97K7VDp8,184
3
+ mcsmapi/pool.py,sha256=CoOYbyECp4FoXkzwFN7WgtS3vgZtvWO8e93i18vhOEI,308
4
+ mcsmapi/request.py,sha256=5mCzKgrh4OPFKvBo22kIDpX_D1zqCza1nglYUeGWveg,2618
5
+ mcsmapi/apis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
+ mcsmapi/apis/daemon.py,sha256=DT8u3nhelbd8EU24gRsuAW43QAXmGKTmuYs7fT3Fx2c,2014
7
+ mcsmapi/apis/file.py,sha256=9oAKJsFo3iBYVI5hCd0BUv5Px0GXgHeQqIy2K3q3CNc,10890
8
+ mcsmapi/apis/image.py,sha256=y9BoATZnDj2NbVWYpEAIDcO-pBXAtpQlcLgJUHoXkDk,2960
9
+ mcsmapi/apis/instance.py,sha256=gToVq_2nJrlEB9LKKYdpaUsH-rcxLo_0B3W-2kpXsaM,11198
10
+ mcsmapi/apis/overview.py,sha256=4bS3RGSykdQ1JyBTM-I9na6v0SCijEG1CN-WxqabfUo,625
11
+ mcsmapi/apis/user.py,sha256=HgUJUKIxH6rUwjuevJwj_4JziF2oOqrLBwr2xXnalrM,3024
12
+ mcsmapi/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ mcsmapi/models/daemon.py,sha256=z2DmnXpjI8bq50BAbq3xrkVudOsRpVjXA2LyvUbocgY,3593
14
+ mcsmapi/models/file.py,sha256=ly1LidhvdFr7XIeNnQWjM9cGxcWjGws8UCf4_ykMmQk,2822
15
+ mcsmapi/models/image.py,sha256=jbi4cZCYtfaG-ca7aeI5DOmXXxWTZYCYDqdkzjtuHhc,2804
16
+ mcsmapi/models/instance.py,sha256=zXqNWM2QuSmWsIRUz78aNewvj4JG7GQvH3QFgF8xDYc,5728
17
+ mcsmapi/models/overview.py,sha256=TUvAqr_6h7O2ZC-CWngh8xz4zz6a4av66wgNRUN3NLg,1321
18
+ mcsmapi/models/user.py,sha256=JNlVvpMcK-Rv67JLS8f7lUVp4TXH2gJbUE5LicZUooM,1970
19
+ mcsmapi-0.1.4.dist-info/licenses/LICENSE,sha256=bMKDPsvaybvY-4TTlSZtCXPPtxb7KPpDVqXgDA8Ogo0,1068
20
+ mcsmapi-0.1.4.dist-info/METADATA,sha256=0RVUYmmLKt0djp7X08zVpN4KISbl4huZD2xgbSDL8rA,2602
21
+ mcsmapi-0.1.4.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
22
+ mcsmapi-0.1.4.dist-info/top_level.txt,sha256=8MUYHd1Or4cbSCd93IaqLA72w0weEuKieopVwIfVlWo,8
23
+ mcsmapi-0.1.4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: setuptools (80.4.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 molanp
3
+ Copyright (c) 2024-2025 molanp
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,21 +0,0 @@
1
- mcsmapi/__init__.py,sha256=MUAbGnG0qSVKcG9YTCkZru42x1UxcfzfJF9WJzDjU8Q,1451
2
- mcsmapi/exceptions.py,sha256=mHsAHyoX9SiFDGBMEhesA_ao9hhZZ38EGTp97K7VDp8,184
3
- mcsmapi/pool.py,sha256=CoOYbyECp4FoXkzwFN7WgtS3vgZtvWO8e93i18vhOEI,308
4
- mcsmapi/request.py,sha256=5mCzKgrh4OPFKvBo22kIDpX_D1zqCza1nglYUeGWveg,2618
5
- mcsmapi/apis/daemon.py,sha256=a0351ca2I68S2lFRg5wtV52FuLsaT-_dnqhuBXpE-tQ,1960
6
- mcsmapi/apis/file.py,sha256=UKD295UK9755Y_fEANZCxPyS9uwpkJ6KcqnNlM2YHMY,10592
7
- mcsmapi/apis/image.py,sha256=kGuO2U3D3OM8p1jo31U3ACKv-DD-60pkhn1LNiEhhM4,2890
8
- mcsmapi/apis/instance.py,sha256=GTSMSfwaYElrSO3DO4IBbU8OJvd1A34DzgsL_xgU6I0,10968
9
- mcsmapi/apis/overview.py,sha256=tBiZZEXVQukzMqw3EvAVbjkG6h2KO115ylpNRONSJ9s,607
10
- mcsmapi/apis/user.py,sha256=Xza7jAmy8ORkeO2NS-nzKPkG5Immp4FUtskEN0Hd9Z4,2950
11
- mcsmapi/models/daemon.py,sha256=u7leIa_91eVeia00rhD8HiYiaRKFCOiWFtqSI4WEC2g,3521
12
- mcsmapi/models/file.py,sha256=qI_3e5C7cHUc0botBP7YWU90J-Uu2-JILzBTQ-PicRA,2760
13
- mcsmapi/models/image.py,sha256=akx0b7aUnpl-9F2AHUbkinUP15hLHAnSdLlZZxM3bcI,2773
14
- mcsmapi/models/instance.py,sha256=eDQng8BAVep_ufDYbLHc-sM5JIPn0-AeNqgkOh8wFEM,5595
15
- mcsmapi/models/overview.py,sha256=kImr_Dy1Mkyf2jJ7bq5E5IAYGyEYzHZ7inrRNxV0u6k,1307
16
- mcsmapi/models/user.py,sha256=CDJjiG9cY8gW4rYD8SDnxvMGnn1cdeUU801NucPfnrA,1940
17
- mcsmapi-0.1.3.dist-info/LICENSE,sha256=kn0yZGn5uLIJtr2aAXy8pz_wJqal15ZGnynTU1fCnLQ,1063
18
- mcsmapi-0.1.3.dist-info/METADATA,sha256=CgoVwe46VfW-2efVTqnpYXcKwic8DhaPOqGkO-o3rVI,2456
19
- mcsmapi-0.1.3.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
20
- mcsmapi-0.1.3.dist-info/top_level.txt,sha256=8MUYHd1Or4cbSCd93IaqLA72w0weEuKieopVwIfVlWo,8
21
- mcsmapi-0.1.3.dist-info/RECORD,,