Преглед изворни кода

删除 DeployConfigDto 中 startScript 字段的约束, 对于 docker 应用系统会使用默认值

reghao пре 2 година
родитељ
комит
5cd569eaea

+ 0 - 1
manager/src/main/java/cn/reghao/devops/manager/app/model/dto/DeployConfigDto.java

@@ -28,7 +28,6 @@ public class DeployConfigDto implements Serializable {
     private String packType;
     // packType 是 docker 时 startScript 的内容是 cn.reghao.devops.common.dockerc.pojo.Config 序列化为 JSON 后的字符串
     // 具体参照 https://docs.docker.com/engine/api/v1.40/#operation/ContainerCreate 的 reqeust body
-    @NotBlank(message = "startScript 不能为空白字符串")
     private String startScript;
     private String unpackScript;
     private String startHome;

+ 8 - 2
manager/src/main/java/cn/reghao/devops/manager/app/service/config/impl/AppDeployConfigServiceImpl.java

@@ -62,10 +62,13 @@ public class AppDeployConfigServiceImpl implements AppDeployConfigService {
             return Result.result(ResultStatus.ERROR, msg);
         }
 
-        String packType = deployConfigDto.getPackType();
         String startScript = deployConfigDto.getStartScript();
+        String packType = deployConfigDto.getPackType();
         if (packType.equals(PackType.docker.name())) {
             Config containerConfig = JsonConverter.jsonToObject(startScript, Config.class);
+            if (startScript == null || startScript.isBlank()) {
+                startScript = "{}";
+            }
         }
 
         AppDeployConfig appDeployConfig = new AppDeployConfig(appConfig, machineHost, startScript);
@@ -85,10 +88,13 @@ public class AppDeployConfigServiceImpl implements AppDeployConfigService {
             return Result.result(ResultStatus.ERROR, msg);
         }
 
-        String packType = deployConfigDto.getPackType();
         String startScript = deployConfigDto.getStartScript();
+        String packType = deployConfigDto.getPackType();
         if (packType.equals(PackType.docker.name())) {
             Config containerConfig = JsonConverter.jsonToObject(startScript, Config.class);
+            if (startScript == null || startScript.isBlank()) {
+                startScript = "{}";
+            }
         }
 
         appDeployConfig.setUnpackScript(deployConfigDto.getUnpackScript());

+ 2 - 2
manager/src/main/resources/templates/app/config/app/deploy/add.html

@@ -57,12 +57,12 @@
             </tr>
             <tr>
                 <th>
-                    <label class="layui-form-label required">启动脚本<i id="start_script_tips" class="fa fa-question-circle"></i></label>
+                    <label class="layui-form-label">启动脚本<i id="start_script_tips" class="fa fa-question-circle"></i></label>
                 </th>
                 <td>
                     <div class="layui-form-item">
                         <div class="layui-input-inline">
-                            <textarea class="layui-textarea" name="startScript" placeholder="启动脚本"></textarea>
+                            <textarea class="layui-textarea" name="startScript" placeholder="启动脚本(选填, docker 应用默认为空 JSON {})"></textarea>
                         </div>
                     </div>
                 </td>

+ 1 - 1
manager/src/main/resources/templates/app/config/app/deploy/edit.html

@@ -56,7 +56,7 @@
             </tr>
             <tr>
                 <th>
-                    <label class="layui-form-label required">启动脚本</label>
+                    <label class="layui-form-label">启动脚本</label>
                 </th>
                 <td>
                     <div class="layui-form-item">