Prechádzať zdrojové kódy

实现 AppBuildService#resetBuildStat 方法

reghao 1 rok pred
rodič
commit
0f9cca74f9

+ 2 - 3
web/src/main/java/cn/reghao/devops/web/mgr/app/controller/BuildDeployController.java

@@ -70,9 +70,8 @@ public class BuildDeployController {
     @ApiOperation(value = "重置应用构建状态")
     @PostMapping(value = "/reset", produces = MediaType.APPLICATION_JSON_VALUE)
     public String resetState() {
-        // TODO 暂不启用 web 接口, 只在应用启动时执行
-        //appBuildService.resetState();
-        return WebResult.failWithMsg("接口未实现");
+        appBuildService.resetBuildStat();
+        return WebResult.success("构建状态已重置");
     }
 
     @ApiOperation(value = "取消构建任务")

+ 1 - 0
web/src/main/java/cn/reghao/devops/web/mgr/app/service/AppBuildService.java

@@ -20,5 +20,6 @@ public interface AppBuildService {
 
     void updateBeforeBuild(String appId, String buildBy);
     AppBuilding updateAfterBuild(BuildChainResult buildChainResult);
+    void resetBuildStat();
     Result clearLocalRepo(String appId);
 }

+ 1 - 0
web/src/main/java/cn/reghao/devops/web/mgr/app/service/bd/impl/BuildAppImpl.java

@@ -26,6 +26,7 @@ import java.util.*;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
 
 /**
  * @author reghao

+ 3 - 2
web/src/main/java/cn/reghao/devops/web/mgr/app/service/impl/AppBuildServiceImpl.java

@@ -226,8 +226,9 @@ public class AppBuildServiceImpl implements AppBuildService {
         return null;
     }
 
-    @Deprecated
-    public void resetState() {
+    @Override
+    public void resetBuildStat() {
+        // TODO 保证 app 没有处在构建状态
         PageRequest pageRequest = PageRequest.of(0, 100);
         Page<AppBuilding> page = buildingRepository.findAllByOnBuildingIsTrue(pageRequest);
         if (page.hasContent()) {