Quellcode durchsuchen

os_init_write 的更新方法里,支持 os_init_id 参数

James Iter vor 9 Jahren
Ursprung
Commit
a5f7d7e5a5
3 geänderte Dateien mit 18 neuen und 11 gelöschten Zeilen
  1. 6 0
      api/os_init_write.py
  2. 4 2
      docs/os_init.md
  3. 8 9
      docs/todo.md

+ 6 - 0
api/os_init_write.py

@@ -93,6 +93,11 @@ def r_update(_id):
         Rules.ID.value
     ]
 
+    if 'os_init_id' in request.json:
+        args_rules.append(
+            Rules.OS_INIT_ID_EXT.value,
+        )
+
     if 'path' in request.json:
         args_rules.append(
             Rules.OS_INIT_WRITE_PATH.value,
@@ -114,6 +119,7 @@ def r_update(_id):
         ji.Check.previewing(args_rules, request.json)
         os_init_write.id = request.json.get('id')
         os_init_write.get()
+        os_init_write.os_init_id = request.json.get('os_init_id', os_init_write.os_init_id)
         os_init_write.path = request.json.get('path', os_init_write.path)
         os_init_write.content = request.json.get('content', os_init_write.content)
 

+ 4 - 2
docs/os_init.md

@@ -287,9 +287,10 @@ GET https://$domain
 
 ```http
 PATCH https://$domain
-  /api/os_init_write/{os_init_id}
+  /api/os_init_write/{id}
 Body:
 {
+    "os_init_id": 3,
     "path": "/etc/hostname",
     "content": "{HOSTNAME}"
 }
@@ -297,7 +298,8 @@ Body:
 
 |  参数名称   | 必须 |  类型  | 说明               |
 |:----------:|:---:|:------:|:-------------------|
-| os_init_id |  Y  | Number | 初始化操作 ID       |
+|     id     |  Y  | Number | 初始化操作 ID       |
+| os_init_id |  N  |  Long  | 初始化操作簇 ID     |
 |    path    |  N  | String | 初始化操作的文件路径 |
 |  content   |  N  | String | 初始化操作的文件内容 |
 

+ 8 - 9
docs/todo.md

@@ -1,20 +1,19 @@
 # TODO
 
-- [ ] 添加对 Guest 的IP管理功能
-> 1. 给宿主机替换当前 IP 池中可用的 IP。替换后,新 IP 置为已用状态,被替换的 IP,
-> 要与系统配置中的可用 IP 范围做计算。计算其是不是可以被自动分配的合法 IP。如果是,
-> 则回收。如果不是,则直接丢弃;
-> 2. 给宿主机替换手动指定的任意 IP。此时需要判断手动分配的 IP 是否与已用的 IP 冲突;
-
 - [x] Guest 删除后,回收其 IP、VNC 端口
-- [ ] os_init_write 的更新方法里,是否需要支持 os_init_id 参数
-- [ ] 增加模板镜像上传功能
+- [x] os_init_write 的更新方法里,支持 os_init_id 参数
 - [x] 抽象出视图层的父类,尤其是 get、get_list、delete 这些方法基本相同
 - [x] guest_disk 表中加入 path 字段,具体磁盘位置由 path 指明
 - [x] guest 的系统磁盘,也需记录到 guest_disk 表中
 - [x] 将 Guest 的系统镜像合并到单独的磁盘镜像目录中。即不再为 Guest 的系统镜像单独分配目录
 - [x] os_template 表中 name 改为 path 字段。用 path 指明完整路径
+- [x] 统一 guest_disk 称谓为 disk
 - [ ] 统计活着的宿主机,并提供获取列表的接口,供迁移时选择
 - [ ] 加入被动更新 Guest xml 的功能,由宿主机主动推送。具体时机待定
-- [x] 统一 guest_disk 称谓为 disk
 - [ ] 分离出 API 与 views 出入口,涉及 add_rule 与 route_table
+- [ ] 增加模板镜像上传功能
+- [ ] 添加对 Guest 的IP管理功能
+> 1. 给宿主机替换当前 IP 池中可用的 IP。替换后,新 IP 置为已用状态,被替换的 IP,
+> 要与系统配置中的可用 IP 范围做计算。计算其是不是可以被自动分配的合法 IP。如果是,
+> 则回收。如果不是,则直接丢弃;
+> 2. 给宿主机替换手动指定的任意 IP。此时需要判断手动分配的 IP 是否与已用的 IP 冲突;