Browse Source

BuildService 中应用只构建时, 添加构建完成的通知

reghao 4 weeks ago
parent
commit
7508567f73

+ 4 - 0
mgr/src/main/java/cn/reghao/devops/mgr/ops/builder/service/BuildLogService.java

@@ -30,6 +30,10 @@ public class BuildLogService {
         this.buildRepository = buildRepository;
         this.buildRepository = buildRepository;
     }
     }
 
 
+    public AppBuilding getAppBuilding(String appId) {
+        return buildRepository.getAppBuilding(appId);
+    }
+
     public String initAppBuilding(AppConfig appConfig) {
     public String initAppBuilding(AppConfig appConfig) {
         String buildId = UUID.randomUUID().toString().replace("-", "");
         String buildId = UUID.randomUUID().toString().replace("-", "");
         AppBuilding appBuilding = buildRepository.getAppBuilding(appConfig.getAppId());
         AppBuilding appBuilding = buildRepository.getAppBuilding(appConfig.getAppId());

+ 7 - 1
mgr/src/main/java/cn/reghao/devops/mgr/ops/builder/service/BuildService.java

@@ -5,6 +5,7 @@ import cn.reghao.devops.mgr.ops.app.model.po.AppConfig;
 import cn.reghao.devops.mgr.ops.build.model.constant.CompileType;
 import cn.reghao.devops.mgr.ops.build.model.constant.CompileType;
 import cn.reghao.devops.mgr.ops.builder.model.constant.BuildStepName;
 import cn.reghao.devops.mgr.ops.builder.model.constant.BuildStepName;
 import cn.reghao.devops.common.msg.constant.StepStatus;
 import cn.reghao.devops.common.msg.constant.StepStatus;
+import cn.reghao.devops.mgr.ops.builder.model.po.AppBuilding;
 import cn.reghao.devops.mgr.ops.builder.tool.ToolProvider;
 import cn.reghao.devops.mgr.ops.builder.tool.ToolProvider;
 import cn.reghao.devops.mgr.ops.builder.tool.compiler.CodeCompiler;
 import cn.reghao.devops.mgr.ops.builder.tool.compiler.CodeCompiler;
 import cn.reghao.devops.mgr.ops.builder.tool.packer.CodePacker;
 import cn.reghao.devops.mgr.ops.builder.tool.packer.CodePacker;
@@ -27,16 +28,18 @@ public class BuildService {
     private final AppConfigRepository appConfigRepository;
     private final AppConfigRepository appConfigRepository;
     private final BuildLogService buildLogService;
     private final BuildLogService buildLogService;
     private final DeployApp deployApp;
     private final DeployApp deployApp;
+    private final BuildDeployNotify buildDeployNotify;
 
 
     public BuildService(JobScheduler jobScheduler, PipelineContextFactory factory, ToolProvider provider,
     public BuildService(JobScheduler jobScheduler, PipelineContextFactory factory, ToolProvider provider,
                         AppConfigRepository appConfigRepository, BuildLogService buildLogService,
                         AppConfigRepository appConfigRepository, BuildLogService buildLogService,
-                        DeployApp deployApp) {
+                        DeployApp deployApp, BuildDeployNotify buildDeployNotify) {
         this.jobScheduler = jobScheduler;
         this.jobScheduler = jobScheduler;
         this.factory = factory;
         this.factory = factory;
         this.appConfigRepository = appConfigRepository;
         this.appConfigRepository = appConfigRepository;
         this.provider = provider;
         this.provider = provider;
         this.buildLogService = buildLogService;
         this.buildLogService = buildLogService;
         this.deployApp = deployApp;
         this.deployApp = deployApp;
+        this.buildDeployNotify = buildDeployNotify;
     }
     }
 
 
     public void build(String appId, boolean deploy) {
     public void build(String appId, boolean deploy) {
@@ -102,6 +105,9 @@ public class BuildService {
                     if (deploy) {
                     if (deploy) {
                         deployApp.deploy(buildId);
                         deployApp.deploy(buildId);
                         ctx.log(">>> [Step 6] 部署请求已提交。");
                         ctx.log(">>> [Step 6] 部署请求已提交。");
+                    } else {
+                        AppBuilding appBuilding = buildLogService.getAppBuilding(appId);
+                        buildDeployNotify.buildNotify(appBuilding);
                     }
                     }
                 } catch (Exception e) {
                 } catch (Exception e) {
                     // 核心设计:一旦任何一步抛出异常,立即进入这里
                     // 核心设计:一旦任何一步抛出异常,立即进入这里