reghao 1 éve
szülő
commit
7a2ff1af60

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

@@ -77,8 +77,8 @@ public class BuildDeployController {
     @ApiOperation(value = "取消构建任务")
     @PostMapping(value = "/task/cancel/{appId}", produces = MediaType.APPLICATION_JSON_VALUE)
     public String cancelTask(@PathVariable("appId") String appId) {
-        //buildApp.cancelTask(appId);
-        return WebResult.failWithMsg("接口未实现");
+        buildApp.cancelTask(appId);
+        return WebResult.success();
     }
 
     @ApiOperation(value = "webhook 自动构建部署")

+ 1 - 1
web/src/main/java/cn/reghao/devops/web/mgr/app/controller/page/AppConfigPageController.java

@@ -154,7 +154,7 @@ public class AppConfigPageController {
 
     @GetMapping("/detail/{appId}")
     public String appConfigPage(@PathVariable("appId") String appId, Model model) {
-        AppConfig app = appBuildQuery.findByAppId(appId);
+        AppConfig app = appBuildQuery.getAppConfig(appId);
         model.addAttribute("app", app);
         return "/devops/app/config/detail";
     }

+ 2 - 1
web/src/main/java/cn/reghao/devops/web/mgr/app/controller/page/AppDeployConfigPageController.java

@@ -41,7 +41,7 @@ public class AppDeployConfigPageController {
         this.machineQuery = machineQuery;
     }
 
-    @ApiOperation(value = "部署配置页面")
+    @ApiOperation(value = "部署配置列表页面")
     @GetMapping("/{appId}")
     public String deployConfigIndexPage(@PathVariable("appId") String appId, Model model) {
         PageRequest pageRequest = PageSort.pageRequest();
@@ -54,6 +54,7 @@ public class AppDeployConfigPageController {
         return "/devops/app/deploy/index";
     }
 
+    @ApiOperation(value = "添加部署配置页面")
     @GetMapping("/add/{appId}")
     public String addAppConfigPage(@PathVariable("appId") String appId, Model model) {
         AppConfig appConfig = appBuildQuery.getAppConfig(appId);

+ 2 - 2
web/src/main/java/cn/reghao/devops/web/mgr/app/controller/page/BuildDeployPageController.java

@@ -120,7 +120,7 @@ public class BuildDeployPageController {
     @ApiOperation(value = "构建配置页面")
     @GetMapping("/build/config")
     public String buildConfigPage(@RequestParam("buildLogId") String buildLogId, Model model) {
-        BuildLog buildLog = appBuildQuery.findByBuildLogId(buildLogId);
+        BuildLog buildLog = appBuildQuery.getBuildLog(buildLogId);
         BuildConfigSnapshot buildConfigSnapshot = buildLog.getBuildConfigSnapshot();
         model.addAttribute("buildConfigSnapshot", buildConfigSnapshot);
         return "/devops/app/bd/log/buildconfig";
@@ -129,7 +129,7 @@ public class BuildDeployPageController {
     @ApiOperation(value = "构建耗时页面")
     @GetMapping("/build/consumed")
     public String buildTimePage(@RequestParam("buildLogId") String buildLogId, Model model) {
-        BuildLog buildLog = appBuildQuery.findByBuildLogId(buildLogId);
+        BuildLog buildLog = appBuildQuery.getBuildLog(buildLogId);
         BuildConsumed buildConsumed = buildLog.getBuildConsumed();
         model.addAttribute("buildConsumed", buildConsumed);
         return "/devops/app/bd/log/buildtime";

+ 2 - 3
web/src/main/java/cn/reghao/devops/web/mgr/app/db/query/AppBuildQuery.java

@@ -23,16 +23,15 @@ import java.util.Map;
 public interface AppBuildQuery extends BaseQuery<AppConfig> {
     List<AppConfig> query(Map<String, String> kv);
     AppConfig findByRepoAndBranch(String repo, String branch);
-    AppConfig findByAppId(String appId);
+    AppConfig getAppConfig(String appId);
     Page<AppConfigVO> findByEnvAndType(String env, String type, Pageable pageable);
     List<AppConfig> findAllByRepoAuthConfig(RepoAuthConfig repoAuthConfig);
     List<AppConfig> findAllByCompilerConfig(CompilerConfig compilerConfig);
     List<AppConfig> findAllByPackerConfig(PackerConfig packerConfig);
     Page<AppBuildingVO> getByPage(String appEnv, String appType, PageRequest pageRequest);
     Page<AppBuildingVO> getPageByName(String appName, PageRequest pageRequest);
-    AppConfig getAppConfig(String appId);
     boolean isBuilding(String appId);
     Page<BuildLogVO> buildLogVOs(String appId, PageRequest pageRequest);
-    BuildLog findByBuildLogId(String buildLogId);
+    BuildLog getBuildLog(String buildLogId);
     String getBuildResult(String buildLogId);
 }

+ 3 - 0
web/src/main/java/cn/reghao/devops/web/mgr/app/db/query/AppDeployQuery.java

@@ -28,6 +28,9 @@ public interface AppDeployQuery extends BaseQuery<AppDeployConfig> {
     List<AppDeployingVO> get(String appId, AppBuilding appBuilding);
     boolean isDeploying(String appId, String machineId);
     Page<AppDeployConfigVo> indexPage(String appId, PageRequest pageRequest);
+    int countByApp(AppConfig appConfig);
+    int countByMachine(MachineHost machineHost);
+
     PageList<AppRunningVO> getAppRunningByPage(String env, String appType, int pageNumber, int pageSize);
     List<AppRunning> getAppRunning(String appId);
 }

+ 8 - 14
web/src/main/java/cn/reghao/devops/web/mgr/app/db/query/impl/AppBuildQueryImpl.java

@@ -1,9 +1,9 @@
 package cn.reghao.devops.web.mgr.app.db.query.impl;
 
 import cn.reghao.devops.web.mgr.app.db.query.AppBuildQuery;
+import cn.reghao.devops.web.mgr.app.db.query.AppDeployQuery;
 import cn.reghao.devops.web.mgr.app.db.repository.AppBuildingRepository;
 import cn.reghao.devops.web.mgr.app.db.repository.config.AppConfigRepository;
-import cn.reghao.devops.web.mgr.app.db.repository.config.AppDeployConfigRepository;
 import cn.reghao.devops.web.mgr.app.db.repository.log.BuildLogRepository;
 import cn.reghao.devops.web.mgr.app.model.po.AppBuilding;
 import cn.reghao.devops.web.mgr.app.model.po.config.AppConfig;
@@ -34,16 +34,16 @@ import java.util.stream.Collectors;
 @Service
 public class AppBuildQueryImpl implements AppBuildQuery {
     private final AppConfigRepository appConfigRepository;
-    private final AppDeployConfigRepository deployConfigRepository;
     private final AppBuildingRepository buildingRepository;
     private final BuildLogRepository buildLogRepository;
+    private final AppDeployQuery appDeployQuery;
 
-    public AppBuildQueryImpl(AppConfigRepository appConfigRepository, AppDeployConfigRepository deployConfigRepository,
-                             AppBuildingRepository buildingRepository, BuildLogRepository buildLogRepository) {
+    public AppBuildQueryImpl(AppConfigRepository appConfigRepository, AppBuildingRepository buildingRepository,
+                             BuildLogRepository buildLogRepository, AppDeployQuery appDeployQuery) {
         this.appConfigRepository = appConfigRepository;
-        this.deployConfigRepository = deployConfigRepository;
         this.buildingRepository = buildingRepository;
         this.buildLogRepository = buildLogRepository;
+        this.appDeployQuery = appDeployQuery;
     }
 
     @Override
@@ -73,7 +73,7 @@ public class AppBuildQueryImpl implements AppBuildQuery {
 
     //@Cacheable({"appId"})
     @Override
-    public AppConfig findByAppId(String appId) {
+    public AppConfig getAppConfig(String appId) {
         return appConfigRepository.findByDeletedFalseAndAppId(appId);
     }
 
@@ -82,7 +82,7 @@ public class AppBuildQueryImpl implements AppBuildQuery {
         Page<AppConfig> page = appConfigRepository.findByEnvAndAppType(env, type, pageable);
         List<AppConfigVO> list = page.stream()
                 .map(appConfig -> {
-                    int total = deployConfigRepository.countByAppConfig(appConfig);
+                    int total = appDeployQuery.countByApp(appConfig);
                     return new AppConfigVO(appConfig, total);
                 })
                 .collect(Collectors.toList());
@@ -124,12 +124,6 @@ public class AppBuildQueryImpl implements AppBuildQuery {
         return new PageImpl<>(list, pageRequest, page.getTotalElements());
     }
 
-    @Override
-    public AppConfig getAppConfig(String appId) {
-        AppBuilding appBuilding1 = buildingRepository.findAllByAppConfig_AppId(appId);
-        return appBuilding1.getAppConfig();
-    }
-
     @Override
     public boolean isBuilding(String appId) {
         AppBuilding appBuilding1 = buildingRepository.findAllByAppConfig_AppId(appId);
@@ -153,7 +147,7 @@ public class AppBuildQueryImpl implements AppBuildQuery {
     }
 
     @Override
-    public BuildLog findByBuildLogId(String buildLogId) {
+    public BuildLog getBuildLog(String buildLogId) {
         return buildLogRepository.findByBuildLogId(buildLogId);
     }
 

+ 22 - 1
web/src/main/java/cn/reghao/devops/web/mgr/app/db/query/impl/AppDeployQueryImpl.java

@@ -12,6 +12,7 @@ import cn.reghao.devops.web.mgr.app.model.po.config.AppConfig;
 import cn.reghao.devops.web.mgr.app.model.po.config.AppDeployConfig;
 import cn.reghao.devops.web.mgr.app.db.query.AppDeployQuery;
 import cn.reghao.devops.web.mgr.app.model.po.log.BuildLog;
+import cn.reghao.devops.web.mgr.app.model.po.log.DeployLog;
 import cn.reghao.devops.web.mgr.app.model.vo.AppDeployConfigVo;
 import cn.reghao.devops.web.mgr.app.model.vo.AppDeployingVO;
 import cn.reghao.devops.web.mgr.app.model.vo.AppRunning;
@@ -42,7 +43,7 @@ import java.util.stream.Collectors;
 public class AppDeployQueryImpl implements AppDeployQuery {
     private final AppDeployConfigRepository deployConfigRepository;
     private final AppDeployingRepository deployingRepository;
-    private DeployLogRepository deployLogRepository;
+    private final DeployLogRepository deployLogRepository;
     private final MachineQuery machineQuery;
 
     public AppDeployQueryImpl(AppDeployConfigRepository deployConfigRepository, AppDeployingRepository deployingRepository,
@@ -64,6 +65,16 @@ public class AppDeployQueryImpl implements AppDeployQuery {
         return deployConfigRepository.findAll(specification, pageable);
     }
 
+    @Override
+    public int countByApp(AppConfig appConfig) {
+        return deployConfigRepository.countByAppConfig(appConfig);
+    }
+
+    @Override
+    public int countByMachine(MachineHost machineHost) {
+        return deployConfigRepository.countByMachineHost(machineHost);
+    }
+
     @Override
     public AppDeployConfig findByAppIdAndMachineId(String appId, String machineId) {
         Specification<AppDeployConfig> specification = (root, query, cb) -> {
@@ -181,4 +192,14 @@ public class AppDeployQueryImpl implements AppDeployQuery {
                 .sorted(Comparator.comparing(AppDeploying::getDeployTime).reversed())*/
                 .collect(Collectors.toList());
     }
+
+    @Deprecated
+    public List<DeployLog> getByGroup() {
+        Specification<DeployLog> specification = (root, query, cb) -> {
+            query.groupBy(root.get("machineHost"));
+            return cb.conjunction();
+        };
+
+        return deployLogRepository.findAll(specification);
+    }
 }

+ 5 - 5
web/src/main/java/cn/reghao/devops/web/mgr/app/service/bd/impl/BuildDeployNotifyImpl.java

@@ -1,6 +1,6 @@
 package cn.reghao.devops.web.mgr.app.service.bd.impl;
 
-import cn.reghao.devops.web.mgr.app.db.repository.log.BuildLogRepository;
+import cn.reghao.devops.web.mgr.app.db.query.AppBuildQuery;
 import cn.reghao.devops.web.mgr.app.model.po.AppBuilding;
 import cn.reghao.devops.web.mgr.app.model.po.log.BuildLog;
 import cn.reghao.devops.web.mgr.app.model.po.log.DeployLog;
@@ -18,11 +18,11 @@ import org.springframework.stereotype.Service;
 @Slf4j
 @Service
 public class BuildDeployNotifyImpl implements BuildDeployNotify {
-    private final BuildLogRepository buildLogRepository;
+    private final AppBuildQuery appBuildQuery;
     private final NotifyService notifyService;
 
-    public BuildDeployNotifyImpl(BuildLogRepository buildLogRepository, NotifyService notifyService) {
-        this.buildLogRepository = buildLogRepository;
+    public BuildDeployNotifyImpl(AppBuildQuery appBuildQuery, NotifyService notifyService) {
+        this.appBuildQuery = appBuildQuery;
         this.notifyService = notifyService;
     }
 
@@ -35,7 +35,7 @@ public class BuildDeployNotifyImpl implements BuildDeployNotify {
     @Override
     public void deployNotify(DeployLog deployLog) {
         String buildLogId = deployLog.getBuildLog().getBuildLogId();
-        BuildLog buildLog = buildLogRepository.findByBuildLogId(buildLogId);
+        BuildLog buildLog = appBuildQuery.getBuildLog(buildLogId);
         DeployNotifyMsg deployNotifyMsg = new DeployNotifyMsg(buildLog, deployLog);
         notifyService.notify(deployNotifyMsg.dingMsg());
     }

+ 8 - 8
web/src/main/java/cn/reghao/devops/web/mgr/app/service/bd/impl/DeployAppImpl.java

@@ -2,8 +2,8 @@ package cn.reghao.devops.web.mgr.app.service.bd.impl;
 
 import cn.reghao.devops.common.docker.model.DockerAuth;
 import cn.reghao.devops.common.msg.constant.PackType;
+import cn.reghao.devops.web.mgr.app.db.query.AppBuildQuery;
 import cn.reghao.devops.web.mgr.app.db.query.AppDeployQuery;
-import cn.reghao.devops.web.mgr.app.db.repository.log.BuildLogRepository;
 import cn.reghao.devops.web.mgr.app.model.po.AppBuilding;
 import cn.reghao.devops.web.mgr.builds.model.po.DockerRegistry;
 import cn.reghao.devops.web.mgr.app.model.po.config.AppConfig;
@@ -33,29 +33,29 @@ import java.io.IOException;
 public class DeployAppImpl implements DeployApp {
     private final MachineQuery machineQuery;
     private final WsSender wsSender;
-    private AppDeployQuery appDeployQuery;
+    private final AppDeployQuery appDeployQuery;
     private final AppDeployService appDeployService;
-    private final BuildLogRepository buildLogRepository;
+    private final AppBuildQuery appBuildQuery;
 
     public DeployAppImpl(MachineQuery machineQuery, WsSender wsSender, AppDeployQuery appDeployQuery,
-                         AppDeployService appDeployService, BuildLogRepository buildLogRepository) {
+                         AppDeployService appDeployService, AppBuildQuery appBuildQuery) {
+        this.machineQuery = machineQuery;
         this.wsSender = wsSender;
         this.appDeployQuery = appDeployQuery;
         this.appDeployService = appDeployService;
-        this.buildLogRepository = buildLogRepository;
-        this.machineQuery = machineQuery;
+        this.appBuildQuery = appBuildQuery;
     }
 
     @Override
     public void deploy(String buildLogId) {
-        BuildLog buildLog = buildLogRepository.findByBuildLogId(buildLogId);
+        BuildLog buildLog = appBuildQuery.getBuildLog(buildLogId);
         AppBuilding appBuilding = new AppBuilding(buildLog);
         deploy(appBuilding);
     }
 
     @Override
     public void deploy(String buildLogId, String machineId) {
-        BuildLog buildLog = buildLogRepository.findByBuildLogId(buildLogId);
+        BuildLog buildLog = appBuildQuery.getBuildLog(buildLogId);
         AppBuilding appBuilding = new AppBuilding(buildLog);
         String appId = appBuilding.getAppConfig().getAppId();
         AppDeployConfig appDeployConfig = appDeployQuery.findByAppIdAndMachineId(appId, machineId);

+ 6 - 10
web/src/main/java/cn/reghao/devops/web/mgr/app/service/bd/impl/GetAppImpl.java

@@ -1,9 +1,8 @@
 package cn.reghao.devops.web.mgr.app.service.bd.impl;
 
+import cn.reghao.devops.web.mgr.app.db.query.AppBuildQuery;
 import cn.reghao.devops.web.mgr.app.service.bd.GetApp;
 import cn.reghao.devops.common.msg.constant.PackType;
-import cn.reghao.devops.web.mgr.app.db.repository.config.AppConfigRepository;
-import cn.reghao.devops.web.mgr.app.db.repository.log.BuildLogRepository;
 import cn.reghao.devops.web.mgr.app.model.po.config.AppConfig;
 import cn.reghao.devops.web.mgr.build.model.LocalBuildDir;
 import cn.reghao.devops.web.mgr.app.model.po.log.BuildLog;
@@ -21,27 +20,24 @@ import java.io.FileInputStream;
  */
 @Service
 public class GetAppImpl implements GetApp {
-    private final AppConfigRepository appConfigRepository;
-    private final BuildLogRepository buildLogRepository;
+    private final AppBuildQuery appBuildQuery;
     private final UploadDownload uploadDownload;
 
-    public GetAppImpl(AppConfigRepository appConfigRepository, BuildLogRepository buildLogRepository,
-                      UploadDownload uploadDownload) {
-        this.appConfigRepository = appConfigRepository;
-        this.buildLogRepository = buildLogRepository;
+    public GetAppImpl(AppBuildQuery appBuildQuery, UploadDownload uploadDownload) {
+        this.appBuildQuery = appBuildQuery;
         this.uploadDownload = uploadDownload;
     }
 
     @Override
     public String packageUrl(String buildLogId) throws Exception {
-        BuildLog buildLog = buildLogRepository.findByBuildLogId(buildLogId);
+        BuildLog buildLog = appBuildQuery.getBuildLog(buildLogId);
         if (buildLog == null) {
             String errMsg = "构建不存在";
             throw new Exception(errMsg);
         }
 
         String appId = buildLog.getAppConfig().getAppId();
-        AppConfig appConfig = appConfigRepository.findByAppId(appId);
+        AppConfig appConfig = appBuildQuery.getAppConfig(appId);
         if (appConfig == null) {
             String errMsg = "应用不存在";
             throw new Exception(errMsg);

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

@@ -205,8 +205,8 @@ public class AppBuildServiceImpl implements AppBuildService {
         AppDto appDto = buildChainResult.getAppDto();
         String appId = appDto.getAppId();
         AppConfig appConfig = appConfigRepository.findByAppId(appId);
-        BuildLog buildLog = new BuildLog(buildChainResult, appConfig);
 
+        BuildLog buildLog = new BuildLog(buildChainResult, appConfig);
         AppBuilding appBuilding1 = buildingRepository.findAllByAppConfig_AppId(appId);
         try {
             buildLogRepository.save(buildLog);
@@ -228,7 +228,6 @@ public class AppBuildServiceImpl implements AppBuildService {
 
     @Override
     public void resetBuildStat() {
-        // TODO 保证 app 没有处在构建状态
         PageRequest pageRequest = PageRequest.of(0, 100);
         Page<AppBuilding> page = buildingRepository.findAllByOnBuildingIsTrue(pageRequest);
         if (page.hasContent()) {

+ 5 - 15
web/src/main/java/cn/reghao/devops/web/mgr/app/service/impl/AppDeployServiceImpl.java

@@ -2,9 +2,9 @@ package cn.reghao.devops.web.mgr.app.service.impl;
 
 import cn.reghao.devops.common.docker.model.Config;
 import cn.reghao.devops.common.msg.constant.PackType;
+import cn.reghao.devops.web.mgr.app.db.query.AppBuildQuery;
 import cn.reghao.devops.web.mgr.app.db.query.AppDeployQuery;
 import cn.reghao.devops.web.mgr.app.db.repository.AppDeployingRepository;
-import cn.reghao.devops.web.mgr.app.db.repository.config.AppConfigRepository;
 import cn.reghao.devops.web.mgr.app.db.repository.config.AppDeployConfigRepository;
 import cn.reghao.devops.web.mgr.app.db.repository.log.DeployLogRepository;
 import cn.reghao.devops.web.mgr.app.model.constant.DeployStatus;
@@ -45,19 +45,19 @@ public class AppDeployServiceImpl implements AppDeployService {
     private final DeployLogRepository deployLogRepository;
     private final BuildDeployNotify buildDeployNotify;
     private final MachineQuery machineQuery;
-    private final AppConfigRepository appConfigRepository;
+    private final AppBuildQuery appBuildQuery;
     private final AppDeployQuery appDeployQuery;
 
     public AppDeployServiceImpl(AppDeployConfigRepository deployConfigRepository, AppDeployingRepository deployingRepository,
                                 DeployLogRepository deployLogRepository, BuildDeployNotify buildDeployNotify,
-                                AppConfigRepository appConfigRepository, MachineQuery machineQuery,
+                                MachineQuery machineQuery, AppBuildQuery appBuildQuery,
                                 AppDeployQuery appDeployQuery) {
         this.deployConfigRepository = deployConfigRepository;
         this.deployingRepository = deployingRepository;
         this.deployLogRepository = deployLogRepository;
-        this.appConfigRepository = appConfigRepository;
         this.buildDeployNotify = buildDeployNotify;
         this.machineQuery = machineQuery;
+        this.appBuildQuery = appBuildQuery;
         this.appDeployQuery = appDeployQuery;
     }
 
@@ -65,7 +65,7 @@ public class AppDeployServiceImpl implements AppDeployService {
     @Override
     public Result addDeployConfig(DeployConfigDto deployConfigDto) {
         String appId = deployConfigDto.getAppId();
-        AppConfig appConfig = appConfigRepository.findByAppId(appId);
+        AppConfig appConfig = appBuildQuery.getAppConfig(appId);
         if (appConfig == null) {
             String msg = String.format("%s 不存在", appId);
             return Result.result(ResultStatus.ERROR, msg);
@@ -306,14 +306,4 @@ public class AppDeployServiceImpl implements AppDeployService {
 
         return false;
     }
-
-    @Deprecated
-    public List<DeployLog> getByGroup() {
-        Specification<DeployLog> specification = (root, query, cb) -> {
-            query.groupBy(root.get("machineHost"));
-            return cb.conjunction();
-        };
-
-        return deployLogRepository.findAll(specification);
-    }
 }

+ 6 - 7
web/src/main/java/cn/reghao/devops/web/mgr/app/service/impl/AppRunServiceImpl.java

@@ -3,7 +3,7 @@ package cn.reghao.devops.web.mgr.app.service.impl;
 import cn.reghao.devops.common.agent.app.dto.AppInfo;
 import cn.reghao.devops.common.msg.constant.AppStatOps;
 import cn.reghao.devops.common.msg.event.EvtAppStat;
-import cn.reghao.devops.web.mgr.app.db.repository.config.AppConfigRepository;
+import cn.reghao.devops.web.mgr.app.db.query.AppBuildQuery;
 import cn.reghao.devops.web.mgr.app.model.po.config.AppConfig;
 import cn.reghao.devops.web.mgr.app.service.PermissionCheck;
 import cn.reghao.devops.web.mgr.app.service.AppRunService;
@@ -26,19 +26,18 @@ import java.util.List;
 @Service
 public class AppRunServiceImpl implements AppRunService {
     private final WsSender wsSender;
-    private final AppConfigRepository appConfigRepository;
+    private final AppBuildQuery appBuildQuery;
     private final MachineQuery machineQuery;
 
-    public AppRunServiceImpl(WsSender wsSender, AppConfigRepository appConfigRepository,
-                             MachineQuery machineQuery) {
+    public AppRunServiceImpl(WsSender wsSender, AppBuildQuery appBuildQuery, MachineQuery machineQuery) {
         this.wsSender = wsSender;
-        this.appConfigRepository = appConfigRepository;
+        this.appBuildQuery = appBuildQuery;
         this.machineQuery = machineQuery;
     }
 
     @Override
     public void changeStatus(String appId, String machineId, AppStatOps appStatOps) throws Exception {
-        AppConfig appConfig = appConfigRepository.findByAppId(appId);
+        AppConfig appConfig = appBuildQuery.getAppConfig(appId);
         String packType = appConfig.getPackerConfig().getType();
         EvtAppStat evtAppStat = new EvtAppStat(packType, appId, appStatOps);
         EventMessage evtMsg = EventMessage.evt(evtAppStat);
@@ -49,7 +48,7 @@ public class AppRunServiceImpl implements AppRunService {
 
     @Override
     public void getStatus(String appId, String machineId) {
-        AppConfig appConfig = appConfigRepository.findByAppId(appId);
+        AppConfig appConfig = appBuildQuery.getAppConfig(appId);
         String packType = appConfig.getPackerConfig().getType();
         EvtAppStat evtAppStat = new EvtAppStat(packType, appId, AppStatOps.stat);
         EventMessage evtMsg = EventMessage.evt(evtAppStat);

+ 1 - 0
web/src/main/java/cn/reghao/devops/web/mgr/machine/db/query/impl/MachineQueryImpl.java

@@ -33,6 +33,7 @@ import java.util.stream.Collectors;
 public class MachineQueryImpl implements MachineQuery {
     private final MachineInfoRepository machineInfoRepository;
     private final MachineHostRepository machineHostRepository;
+    // TODO MachineQuery 和 AppDeployQuery 存在循环依赖
     private final AppDeployConfigRepository deployConfigRepository;
 
     public MachineQueryImpl(MachineInfoRepository machineInfoRepository, MachineHostRepository machineHostRepository,