|
|
@@ -0,0 +1,82 @@
|
|
|
+package cn.reghao.autodop.dmaster.app.controller.page.config;
|
|
|
+
|
|
|
+import cn.reghao.autodop.dmaster.app.model.dto.AppDeployConfigDto;
|
|
|
+import cn.reghao.autodop.dmaster.app.model.po.config.AppConfig;
|
|
|
+import cn.reghao.autodop.dmaster.app.model.po.config.AppDeployConfig;
|
|
|
+import cn.reghao.autodop.dmaster.app.model.vo.KeyValue;
|
|
|
+import cn.reghao.autodop.dmaster.app.service.page.AppDeployConfigPage;
|
|
|
+import cn.reghao.autodop.dmaster.util.db.PageList;
|
|
|
+import cn.reghao.autodop.dmaster.util.db.PageSort;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.data.domain.Page;
|
|
|
+import org.springframework.data.domain.PageRequest;
|
|
|
+import org.springframework.stereotype.Controller;
|
|
|
+import org.springframework.ui.Model;
|
|
|
+import org.springframework.web.bind.annotation.GetMapping;
|
|
|
+import org.springframework.web.bind.annotation.PathVariable;
|
|
|
+import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author reghao
|
|
|
+ * @date 2019-08-30 18:49:15
|
|
|
+ */
|
|
|
+@Slf4j
|
|
|
+@Api(tags = "应用部署配置页面")
|
|
|
+@Controller
|
|
|
+@RequestMapping("/app/config/app/deploy")
|
|
|
+public class AppDeployConfigPageController {
|
|
|
+ private final AppDeployConfigPage deployConfigPage;
|
|
|
+
|
|
|
+ public AppDeployConfigPageController(AppDeployConfigPage deployConfigPage) {
|
|
|
+ this.deployConfigPage = deployConfigPage;
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "部署配置页面")
|
|
|
+ @GetMapping("/{appId}")
|
|
|
+ public String deployConfigIndexPage(@PathVariable("appId") String appId, Model model) {
|
|
|
+ PageRequest pageRequest = PageSort.pageRequest();
|
|
|
+ Page<AppDeployConfig> page = deployConfigPage.indexPage(appId, pageRequest);
|
|
|
+ PageList<AppDeployConfig> pageList = PageList.pageList(page);
|
|
|
+
|
|
|
+ model.addAttribute("appId", appId);
|
|
|
+ model.addAttribute("page", page);
|
|
|
+ model.addAttribute("list", pageList.getList());
|
|
|
+ return "/app/config/app/deploy/index";
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/add/{appId}")
|
|
|
+ public String addAppConfigPage(@PathVariable("appId") String appId, Model model) {
|
|
|
+ AppConfig appConfig = deployConfigPage.appConfig(appId);
|
|
|
+ List<KeyValue> machines = deployConfigPage.machines(appConfig.getEnv());
|
|
|
+
|
|
|
+ model.addAttribute("appId", appId);
|
|
|
+ model.addAttribute("packType", appConfig.getPackerConfig().getType());
|
|
|
+ model.addAttribute("machines", machines);
|
|
|
+ return "/app/config/app/deploy/add";
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/edit/{appId}/{machineId}")
|
|
|
+ public String editAppConfigPage(@PathVariable("appId") String appId, @PathVariable("machineId") String machineId,
|
|
|
+ Model model) {
|
|
|
+ AppDeployConfig appDeployConfig = deployConfigPage.findByAppIdAndMachineId(appId, machineId);
|
|
|
+ List<KeyValue> machines = deployConfigPage.machines(appDeployConfig.getAppConfig().getEnv());
|
|
|
+
|
|
|
+ model.addAttribute("appId", appId);
|
|
|
+ model.addAttribute("packType", appDeployConfig.getAppConfig().getPackerConfig().getType());
|
|
|
+ model.addAttribute("appDeployConfig", new AppDeployConfigDto(appDeployConfig));
|
|
|
+ model.addAttribute("machines", machines);
|
|
|
+ return "/app/config/app/deploy/add";
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/detail/{appId}/{machineId}")
|
|
|
+ public String appConfigPage(@PathVariable("appId") String appId, @PathVariable("machineId") String machineId,
|
|
|
+ Model model) {
|
|
|
+ AppDeployConfig appDeployConfig = deployConfigPage.findByAppIdAndMachineId(appId, machineId);
|
|
|
+ model.addAttribute("appDeployConfig", appDeployConfig);
|
|
|
+ return "/app/config/app/deploy/detail";
|
|
|
+ }
|
|
|
+}
|