Jelajahi Sumber

milestone - 测试环境运行版本

reghao 5 tahun lalu
induk
melakukan
6f0ab79992
32 mengubah file dengan 98 tambahan dan 243 penghapusan
  1. 2 1
      common/src/main/java/cn/reghao/autodop/common/mq/MessageSender.java
  2. 4 0
      common/src/main/java/cn/reghao/autodop/common/mq/MqMessage.java
  3. 0 30
      common/src/main/java/cn/reghao/autodop/common/mq/RpcResult.java
  4. 0 33
      common/src/main/java/cn/reghao/autodop/common/mq/Serializer.java
  5. 1 1
      common/src/main/java/cn/reghao/autodop/common/result/ResultCode.java
  6. 34 0
      common/src/main/java/cn/reghao/autodop/common/result/RpcResult.java
  7. 2 2
      common/src/main/java/cn/reghao/autodop/common/result/WebResult.java
  8. 3 0
      dagent/src/main/java/cn/reghao/autodop/dagent/app/deploy/AppDeployService.java
  9. 1 1
      dagent/src/main/java/cn/reghao/autodop/dagent/mq/RabbitConfig.java
  10. 13 10
      dagent/src/main/java/cn/reghao/autodop/dagent/mq/RemoteCallDispatcher.java
  11. 2 2
      dagent/src/main/resources/application-prod.yml
  12. 2 2
      dagent/src/main/resources/application-test.yml
  13. 0 4
      dagent/src/main/resources/banner.txt
  14. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/BuildController.java
  15. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/ConfigController.java
  16. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/FileController.java
  17. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/ManageController.java
  18. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/OrchestrateController.java
  19. 5 5
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/deploy/AppDeployTask.java
  20. 5 3
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/deploy/AppDeployer.java
  21. 0 42
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/DnktMgrZipPack.java
  22. 0 32
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/DntkMgrDockerPack.java
  23. 0 14
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/DotnetPack.java
  24. 0 33
      dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/ZipRemotePack.java
  25. 1 4
      dmaster/src/main/java/cn/reghao/autodop/dmaster/auth/controller/UserController.java
  26. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/common/exception/ControllerExceptionHandler.java
  27. 10 11
      dmaster/src/main/java/cn/reghao/autodop/dmaster/common/mq/MessageDispatcher.java
  28. 1 1
      dmaster/src/main/java/cn/reghao/autodop/dmaster/node/MachineController.java
  29. 2 2
      dmaster/src/main/resources/application-prod.yml
  30. 2 2
      dmaster/src/main/resources/application-test.yml
  31. 1 1
      scripts/build-and-deploy.sh
  32. 1 1
      scripts/deploy.sh

+ 2 - 1
common/src/main/java/cn/reghao/autodop/common/mq/MessageSender.java

@@ -1,5 +1,6 @@
 package cn.reghao.autodop.common.mq;
 
+import cn.reghao.autodop.common.utils.JsonUtil;
 import org.springframework.amqp.rabbit.core.RabbitTemplate;
 import org.springframework.stereotype.Component;
 
@@ -18,7 +19,7 @@ public class MessageSender {
     }
 
     public void send(String routeKey, Object obj) {
-        String msg = Serializer.serialize(obj);
+        String msg = JsonUtil.objectToJson(obj);
         rabbitTemplate.convertAndSend(routeKey, msg);
     }
 

+ 4 - 0
common/src/main/java/cn/reghao/autodop/common/mq/MqMessage.java

@@ -1,7 +1,11 @@
 package cn.reghao.autodop.common.mq;
 
+import com.google.gson.Gson;
 import lombok.Data;
 
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+
 /**
  * @author reghao
  * @date 2020-09-04 20:17:45

+ 0 - 30
common/src/main/java/cn/reghao/autodop/common/mq/RpcResult.java

@@ -1,30 +0,0 @@
-package cn.reghao.autodop.common.mq;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-
-/**
- * @author reghao
- * @date 2020-09-07 23:04:16
- */
-@Data
-@AllArgsConstructor
-public class RpcResult {
-    private int code;
-    private Object result;
-
-    public static String success() {
-        RpcResult rpcResult = new RpcResult(0, "ok");
-        return Serializer.serialize(rpcResult);
-    }
-
-    public static String success(Object object) {
-        RpcResult rpcResult = new RpcResult(0, object);
-        return Serializer.serialize(rpcResult);
-    }
-
-    public static String fail(String msg) {
-        RpcResult rpcResult = new RpcResult(1, msg);
-        return Serializer.serialize(rpcResult);
-    }
-}

+ 0 - 33
common/src/main/java/cn/reghao/autodop/common/mq/Serializer.java

@@ -1,33 +0,0 @@
-package cn.reghao.autodop.common.mq;
-
-import com.google.gson.Gson;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * JSON 序列化和反序列化
- *
- * @author reghao
- * @date 2019-11-29 00:05:57
- */
-public class Serializer {
-    private static Gson gson = new Gson();
-
-    public static String serialize(Object object) {
-        return gson.toJson(object);
-    }
-
-    public static List<String> serialize(List<Object> objects) {
-        List<String> list = new ArrayList<>();
-        objects.forEach(object -> {
-            list.add(gson.toJson(object));
-        });
-
-        return list;
-    }
-
-    public static Object deserialize(String json, Class clazz) {
-        return new Gson().fromJson(json, clazz);
-    }
-}

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/common/webresult/ResultCode.java → common/src/main/java/cn/reghao/autodop/common/result/ResultCode.java

@@ -1,4 +1,4 @@
-package cn.reghao.autodop.dmaster.common.webresult;
+package cn.reghao.autodop.common.result;
 
 /**
  * 请求结果状态码

+ 34 - 0
common/src/main/java/cn/reghao/autodop/common/result/RpcResult.java

@@ -0,0 +1,34 @@
+package cn.reghao.autodop.common.result;
+
+import cn.reghao.autodop.common.utils.JsonUtil;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+
+import static cn.reghao.autodop.common.result.ResultCode.FAIL;
+import static cn.reghao.autodop.common.result.ResultCode.SUCCESS;
+
+/**
+ * @author reghao
+ * @date 2020-09-07 23:04:16
+ */
+@Data
+@AllArgsConstructor
+public class RpcResult {
+    private int code;
+    private Object result;
+
+    public static String success() {
+        RpcResult rpcResult = new RpcResult(SUCCESS.getCode(), "ok");
+        return JsonUtil.objectToJson(rpcResult);
+    }
+
+    public static String success(Object object) {
+        RpcResult rpcResult = new RpcResult(SUCCESS.getCode(), object);
+        return JsonUtil.objectToJson(rpcResult);
+    }
+
+    public static String fail(Object object) {
+        RpcResult rpcResult = new RpcResult(FAIL.getCode(), object);
+        return JsonUtil.objectToJson(rpcResult);
+    }
+}

+ 2 - 2
dmaster/src/main/java/cn/reghao/autodop/dmaster/common/webresult/WebResult.java → common/src/main/java/cn/reghao/autodop/common/result/WebResult.java

@@ -1,11 +1,11 @@
-package cn.reghao.autodop.dmaster.common.webresult;
+package cn.reghao.autodop.common.result;
 
 import cn.reghao.autodop.common.utils.DateTimeUtil;
 import cn.reghao.autodop.common.utils.JsonUtil;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import static cn.reghao.autodop.dmaster.common.webresult.ResultCode.*;
+import static cn.reghao.autodop.common.result.ResultCode.*;
 
 /**
  * HTTP 响应 body 数据

+ 3 - 0
dagent/src/main/java/cn/reghao/autodop/dagent/app/deploy/AppDeployService.java

@@ -2,11 +2,13 @@ package cn.reghao.autodop.dagent.app.deploy;
 
 import cn.reghao.autodop.common.deploy.DeployConfig;
 import cn.reghao.autodop.common.deploy.PackerType;
+import lombok.extern.slf4j.Slf4j;
 
 /**
  * @author reghao
  * @date 2020-09-07 22:08:47
  */
+@Slf4j
 public class AppDeployService {
     public void deploy(DeployConfig deployConfig) throws Exception {
         String appId = deployConfig.getAppId();
@@ -15,6 +17,7 @@ public class AppDeployService {
         String packerType = deployConfig.getPackerType();
 
         Deploy deployApp;
+        log.info("部署 {}...", appId);
         switch (PackerType.valueOf(packerType)) {
             case docker:
                 deployApp = new DockerDeploy();

+ 1 - 1
dagent/src/main/java/cn/reghao/autodop/dagent/mq/RabbitConfig.java

@@ -33,7 +33,7 @@ public class RabbitConfig {
     public SimpleMessageListenerContainer messageListenerContainer(ConnectionFactory connectionFactory) throws SocketException {
         SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
         container.setConnectionFactory(connectionFactory);
-        container.setMessageListener(new MessageDispatcher(rabbitTemplate));
+        container.setMessageListener(new RemoteCallDispatcher(rabbitTemplate));
         container.addQueues(dagentQueue());
         return container;
     }

+ 13 - 10
dagent/src/main/java/cn/reghao/autodop/dagent/mq/MessageDispatcher.java → dagent/src/main/java/cn/reghao/autodop/dagent/mq/RemoteCallDispatcher.java

@@ -1,11 +1,12 @@
 package cn.reghao.autodop.dagent.mq;
 
 import cn.reghao.autodop.common.deploy.DeployConfig;
-import cn.reghao.autodop.common.mq.MqMessage;
-import cn.reghao.autodop.common.mq.MsgType;
-import cn.reghao.autodop.common.mq.RpcResult;
-import cn.reghao.autodop.common.mq.Serializer;
+import cn.reghao.autodop.common.mq.*;
+import cn.reghao.autodop.common.result.RpcResult;
+import cn.reghao.autodop.common.utils.JsonUtil;
 import cn.reghao.autodop.dagent.app.deploy.AppDeployService;
+import com.google.gson.Gson;
+import com.google.gson.JsonObject;
 import com.rabbitmq.client.Channel;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.amqp.core.Message;
@@ -14,14 +15,16 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate;
 import org.springframework.amqp.rabbit.listener.api.ChannelAwareMessageListener;
 
 /**
+ * RPC 调用分发
+ *
  * @author reghao
  * @date 2020-09-04 11:00:22
  */
 @Slf4j
-public class MessageDispatcher implements ChannelAwareMessageListener {
+public class RemoteCallDispatcher implements ChannelAwareMessageListener {
     private RabbitTemplate rabbitTemplate;
 
-    public MessageDispatcher(RabbitTemplate rabbitTemplate) {
+    public RemoteCallDispatcher(RabbitTemplate rabbitTemplate) {
         this.rabbitTemplate = rabbitTemplate;
     }
 
@@ -29,11 +32,12 @@ public class MessageDispatcher implements ChannelAwareMessageListener {
     public void onMessage(Message msg, Channel channel) {
         MessageProperties messageProperties = msg.getMessageProperties();
         String body = new String(msg.getBody());
-        MqMessage mqMessage = (MqMessage) Serializer.deserialize(body, MqMessage.class);
+        JsonObject jsonObject = JsonUtil.jsonObject(body);
+        String msgType = jsonObject.get("msgType").getAsString();
         try {
-            switch (MsgType.valueOf(mqMessage.getMsgType())) {
+            switch (MsgType.valueOf(msgType)) {
                 case deploy:
-                    DeployConfig deployConfig = (DeployConfig) mqMessage.getMsg();
+                    DeployConfig deployConfig = new Gson().fromJson(jsonObject.get("msg").toString(), DeployConfig.class);
                     AppDeployService appDeployService = new AppDeployService();
                     appDeployService.deploy(deployConfig);
                     break;
@@ -46,7 +50,6 @@ public class MessageDispatcher implements ChannelAwareMessageListener {
             }
             sendResult(messageProperties, RpcResult.success());
         } catch (Exception e) {
-            //e.printStackTrace();
             sendResult(messageProperties, RpcResult.fail(e.getMessage()));
         }
         //channel.basicAck(msg.getMessageProperties().getDeliveryTag(), false);

+ 2 - 2
dagent/src/main/resources/application-prod.yml

@@ -4,8 +4,8 @@ dmaster:
   api: /api/machine/status
 spring:
   rabbitmq:
-    host: localhost
+    host: mq.reghao.cn
     port: 5672
     username: reghao
-    password: 12345678
+    password: gL2dOiWYqXiKKsv5LOt9
     virtual-host: /

+ 2 - 2
dagent/src/main/resources/application-test.yml

@@ -4,8 +4,8 @@ dmaster:
   api: /api/machine/status
 spring:
   rabbitmq:
-    host: localhost
+    host: mq.reghao.cn
     port: 5672
     username: reghao
-    password: 12345678
+    password: gL2dOiWYqXiKKsv5LOt9
     virtual-host: /

+ 0 - 4
dagent/src/main/resources/banner.txt

@@ -1,5 +1,3 @@
-<!--
-
                               _.._        ,------------.
                            ,'      `.    (I want you! )
                           /  __) __` \    `-,----------'
@@ -26,5 +24,3 @@
                      :        /  |"-     '
                      '           |      /
                                  `      |
-
--->

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/BuildController.java

@@ -10,7 +10,7 @@ import cn.reghao.autodop.dmaster.app.vo.log.CommitLogVO;
 import cn.reghao.autodop.dmaster.app.vo.log.DeployLogVO;
 import cn.reghao.autodop.dmaster.app.service.OssService;
 import cn.reghao.autodop.dmaster.app.service.build.BuildDispatcher;
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/ConfigController.java

@@ -5,7 +5,7 @@ import cn.reghao.autodop.dmaster.app.constant.*;
 import cn.reghao.autodop.dmaster.app.service.ConfigService;
 import cn.reghao.autodop.dmaster.app.constant.RepoAuthType;
 import cn.reghao.autodop.dmaster.app.vo.PageList;
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/FileController.java

@@ -1,7 +1,7 @@
 package cn.reghao.autodop.dmaster.app.controller;
 
 import cn.reghao.autodop.dmaster.common.utils.SpringBootUtil;
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/ManageController.java

@@ -7,7 +7,7 @@ import cn.reghao.autodop.dmaster.app.service.LogManager;
 import cn.reghao.autodop.dmaster.app.service.StatusManager;
 import cn.reghao.autodop.dmaster.app.vo.LogFile;
 import cn.reghao.autodop.dmaster.app.vo.PageList;
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/controller/OrchestrateController.java

@@ -4,7 +4,7 @@ import cn.reghao.autodop.dmaster.app.constant.AppEnv;
 import cn.reghao.autodop.dmaster.app.entity.orchestration.AppOrchestration;
 import cn.reghao.autodop.dmaster.app.service.OrchestrateService;
 import cn.reghao.autodop.dmaster.app.vo.BuildConfig;
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;

+ 5 - 5
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/deploy/AppDeployTask.java

@@ -2,6 +2,8 @@ package cn.reghao.autodop.dmaster.app.service.deploy;
 
 import cn.reghao.autodop.common.deploy.DeployConfig;
 import cn.reghao.autodop.common.mq.*;
+import cn.reghao.autodop.common.result.RpcResult;
+import cn.reghao.autodop.common.utils.JsonUtil;
 
 import java.util.concurrent.Callable;
 
@@ -23,13 +25,11 @@ public class AppDeployTask implements Callable<RpcResult> {
     // 异常在 Future 中抛出
     @Override
     public RpcResult call() {
-        //String routeKey = "dagent.rpc@" + deployConfig.getHost();
-        String routeKey = "dagent.rpc@" + "192.168.0.222";
+        String routeKey = "dagent.rpc@" + deployConfig.getHost();
         MqMessage<DeployConfig> mqMessage = new MqMessage<>();
         mqMessage.setMsgType(MsgType.deploy.name());
         mqMessage.setMsg(deployConfig);
-        String msg = (String) sender.callRemote(routeKey, Serializer.serialize(mqMessage));
-        RpcResult rpcResult = (RpcResult) Serializer.deserialize(msg, RpcResult.class);
-        return rpcResult;
+        String msg = (String) sender.callRemote(routeKey, JsonUtil.objectToJson(mqMessage));
+        return  (RpcResult) JsonUtil.jsonToObject(msg, RpcResult.class);
     }
 }

+ 5 - 3
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/deploy/AppDeployer.java

@@ -2,7 +2,7 @@ package cn.reghao.autodop.dmaster.app.service.deploy;
 
 import cn.reghao.autodop.common.deploy.DeployConfig;
 import cn.reghao.autodop.common.mq.MessageSender;
-import cn.reghao.autodop.common.mq.RpcResult;
+import cn.reghao.autodop.common.result.RpcResult;
 import cn.reghao.autodop.common.notification.DingNotify;
 import cn.reghao.autodop.common.notification.Notify;
 import cn.reghao.autodop.dmaster.app.entity.build.AppPack;
@@ -81,7 +81,7 @@ public class AppDeployer {
             }
 
             // TODO 检查应用是否成功运行,若启动失败,则回退到上一个版本。若上一个版本仍失败,则返回错误并发出紧急通知
-            NotifyMsg notifyMsg = new NotifyMsg(app.getAppId(), buildLog.getCommitLog().getCommitId());
+            NotifyMsg notifyMsg = new NotifyMsg(app.getAppId(), app.getEnv(), buildLog.getCommitLog().getCommitId());
             try {
                 future.get();
                 notifyMsg.setMsg("部署成功");
@@ -99,11 +99,13 @@ public class AppDeployer {
     @Data
     static class NotifyMsg {
         private String appId;
+        private String env;
         private String commitId;
         private String msg;
 
-        public NotifyMsg(String appId, String commitId) {
+        public NotifyMsg(String appId, String env, String commitId) {
             this.appId = appId;
+            this.env = env;
             this.commitId = commitId;
         }
     }

+ 0 - 42
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/DnktMgrZipPack.java

@@ -1,42 +0,0 @@
-package cn.reghao.autodop.dmaster.app.service.tools.packer;
-
-import cn.reghao.autodop.common.utils.FileUtil;
-import cn.reghao.autodop.common.utils.compression.ZipUtil;
-import lombok.extern.slf4j.Slf4j;
-
-import java.io.File;
-
-/**
- * TODO 特定于 dnkt-mgr 项目的处理
- *
- * @author reghao
- * @date 2020-03-11 13:37:36
- */
-@Slf4j
-public class DnktMgrZipPack implements CodePacker {
-    private String appRootPath;
-
-    public DnktMgrZipPack(String appRootPath) {
-        this.appRootPath = appRootPath;
-    }
-
-    @Override
-    public String pack(String appId, String version, String appEntryDir) throws Exception {
-        String tag = appId + "_" + version + ".zip";
-        String dst = appRootPath + "/" + tag;
-        if (new File(dst).exists()) {
-            return null;
-        }
-
-        String src = appEntryDir + "/src";
-        String start = appEntryDir + "/start";
-        String app = appEntryDir + "/app";
-        FileUtil.mkdir(app);
-        FileUtil.mvDir(src, app);
-        FileUtil.mvDir(start, app);
-
-        ZipUtil.zip(new File(app), dst);
-
-        return null;
-    }
-}

+ 0 - 32
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/DntkMgrDockerPack.java

@@ -1,32 +0,0 @@
-package cn.reghao.autodop.dmaster.app.service.tools.packer;
-
-import cn.reghao.autodop.common.dockerc.DockerClient;
-
-/**
- * 打包为 docker 应用
- *
- * @author reghao
- * @date 2019-10-14 22:02:04
- */
-public class DntkMgrDockerPack implements CodePacker {
-    private String appRootPath;
-    private String env;
-
-    public DntkMgrDockerPack(String appRootPath, String env) {
-        this.appRootPath = appRootPath;
-        this.env = env;
-    }
-
-    @Override
-    public String pack(String appId, String version, String appEntryDir) throws Exception {
-        try (DockerClient docker = new DockerClient()) {
-            String repo = appRootPath + "/" + appId;
-            String image = repo + ":" + version;
-
-            docker.build(image, appEntryDir, "Dockerfile-" + env);
-            docker.push(image);
-            docker.close();
-            return image;
-        }
-    }
-}

+ 0 - 14
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/DotnetPack.java

@@ -1,14 +0,0 @@
-package cn.reghao.autodop.dmaster.app.service.tools.packer;
-
-/**
- * TODO dotnet 应用(二进制版)
- *
- * @author reghao
- * @date 2019-11-09 15:03:27
- */
-public class DotnetPack implements CodePacker {
-    @Override
-    public String pack(String appId, String version, String appEntryDir) throws Exception {
-        return null;
-    }
-}

+ 0 - 33
dmaster/src/main/java/cn/reghao/autodop/dmaster/app/service/tools/packer/ZipRemotePack.java

@@ -1,33 +0,0 @@
-package cn.reghao.autodop.dmaster.app.service.tools.packer;
-
-import cn.reghao.autodop.common.utils.compression.ZipUtil;
-import lombok.extern.slf4j.Slf4j;
-
-import java.io.File;
-
-/**
- * @author reghao
- * @date 2020-03-11 13:37:36
- */
-@Slf4j
-public class ZipRemotePack implements CodePacker {
-    private final String SUFFIX = ".zip";
-    private String packDir;
-
-    public ZipRemotePack(String packDir) {
-        this.packDir = packDir;
-    }
-
-    @Override
-    public String pack(String appId, String version, String appEntryDir) throws Exception {
-        String tag = appId + "_" + version + SUFFIX;
-        String dst = packDir + "/" + tag;
-        if (new File(dst).exists()) {
-            return null;
-        }
-        ZipUtil.zip(new File(appEntryDir), dst);
-
-        // TODO 将应用包上传到远程服务器
-        return null;
-    }
-}

+ 1 - 4
dmaster/src/main/java/cn/reghao/autodop/dmaster/auth/controller/UserController.java

@@ -1,11 +1,8 @@
 package cn.reghao.autodop.dmaster.auth.controller;
 
-import cn.reghao.autodop.dmaster.app.service.crud.CrudService;
 import cn.reghao.autodop.dmaster.app.vo.PageList;
-import cn.reghao.autodop.dmaster.auth.entity.Permission;
-import cn.reghao.autodop.dmaster.auth.entity.Role;
 import cn.reghao.autodop.dmaster.auth.service.UserService;
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import org.springframework.data.domain.PageRequest;
 import org.springframework.data.domain.Sort;

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/common/exception/ControllerExceptionHandler.java

@@ -1,6 +1,6 @@
 package cn.reghao.autodop.dmaster.common.exception;
 
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;

+ 10 - 11
dmaster/src/main/java/cn/reghao/autodop/dmaster/common/mq/MessageDispatcher.java

@@ -1,29 +1,28 @@
 package cn.reghao.autodop.dmaster.common.mq;
 
-import cn.reghao.autodop.common.mq.MqMessage;
-import cn.reghao.autodop.common.mq.Serializer;
-import com.rabbitmq.client.Channel;
+import cn.reghao.autodop.common.utils.JsonUtil;
+import com.google.gson.JsonObject;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.amqp.core.Message;
-import org.springframework.amqp.core.MessageProperties;
-import org.springframework.amqp.rabbit.listener.api.ChannelAwareMessageListener;
+import org.springframework.amqp.core.MessageListener;
 
 /**
+ * 消息分发
+ *
  * @author reghao
  * @date 2020-09-04 11:00:22
  */
 @Slf4j
-public class MessageDispatcher implements ChannelAwareMessageListener {
+public class MessageDispatcher implements MessageListener {
     @Override
-    public void onMessage(Message msg, Channel channel) {
-        MessageProperties messageProperties = msg.getMessageProperties();
+    public void onMessage(Message msg) {
         String body = new String(msg.getBody());
-        MqMessage mqMessage = (MqMessage) Serializer.deserialize(body, MqMessage.class);
+        JsonObject jsonObject = JsonUtil.jsonObject(body);
+        String msgType = jsonObject.get("msgType").getAsString();
         try {
-            log.info("{}", mqMessage);
+            log.info("{}", body);
         } catch (Exception e) {
             //e.printStackTrace();
         }
-        //channel.basicAck(msg.getMessageProperties().getDeliveryTag(), false);
     }
 }

+ 1 - 1
dmaster/src/main/java/cn/reghao/autodop/dmaster/node/MachineController.java

@@ -1,6 +1,6 @@
 package cn.reghao.autodop.dmaster.node;
 
-import cn.reghao.autodop.dmaster.common.webresult.WebResult;
+import cn.reghao.autodop.common.result.WebResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;

+ 2 - 2
dmaster/src/main/resources/application-prod.yml

@@ -4,8 +4,8 @@ spring:
     username: azy_test
     password: Test@123456
   rabbitmq:
-    host: localhost
+    host: mq.reghao.cn
     port: 5672
     username: reghao
-    password: 12345678
+    password: gL2dOiWYqXiKKsv5LOt9
     virtual-host: /

+ 2 - 2
dmaster/src/main/resources/application-test.yml

@@ -4,8 +4,8 @@ spring:
     username: azy_test
     password: Test@123456
   rabbitmq:
-    host: localhost
+    host: mq.reghao.cn
     port: 5672
     username: reghao
-    password: 12345678
+    password: gL2dOiWYqXiKKsv5LOt9
     virtual-host: /

+ 1 - 1
scripts/build-and-deploy.sh

@@ -1,7 +1,7 @@
 ###
 # 构建部署脚本
 ###
-#!/bin/sh
+#!/bin/bash
 
 sh build.sh test dmaster
 sh deploy.sh autodop-dmaster 192.168.0.50 gjs &

+ 1 - 1
scripts/deploy.sh

@@ -15,7 +15,7 @@ if [ -z ${app_name} ] || [ -z ${remote_host} ] || [ -z ${password} ]; then
 fi
 
 # 存放应用的根目录
-remote_jar_home="/opt/services/jars/autodop/app"
+remote_jar_home="/opt/services/autodop"
 local_jar_home="/home/reghao/tmp/autodop/app"
 cd ${local_jar_home}/${app_name}