|
|
@@ -1,18 +1,13 @@
|
|
|
package cn.reghao.autodop.dmaster.app.service;
|
|
|
|
|
|
-import cn.reghao.autodop.common.dagent.app.api.data.deploy.PackerType;
|
|
|
import cn.reghao.autodop.common.shell.ShellExecutor;
|
|
|
import cn.reghao.autodop.common.utils.data.serializer.JsonConverter;
|
|
|
import cn.reghao.autodop.dmaster.app.constant.ConfigType;
|
|
|
-import cn.reghao.autodop.dmaster.app.entity.build.AppCompile;
|
|
|
-import cn.reghao.autodop.dmaster.app.entity.build.AppPack;
|
|
|
-import cn.reghao.autodop.dmaster.app.entity.build.AppUpdate;
|
|
|
import cn.reghao.autodop.dmaster.app.entity.LocalDir;
|
|
|
import cn.reghao.autodop.dmaster.app.entity.Notification;
|
|
|
-import cn.reghao.autodop.dmaster.app.entity.orchestration.ProjOrchestration;
|
|
|
-import cn.reghao.autodop.dmaster.app.repository.build.AppCompileRepository;
|
|
|
-import cn.reghao.autodop.dmaster.app.repository.build.AppPackRepository;
|
|
|
-import cn.reghao.autodop.dmaster.app.repository.build.AppUpdateRepository;
|
|
|
+import cn.reghao.autodop.dmaster.app.repository.build.CompilerConfigRepository;
|
|
|
+import cn.reghao.autodop.dmaster.app.repository.build.PackerConfigRepository;
|
|
|
+import cn.reghao.autodop.dmaster.app.repository.build.RepoConfigRepository;
|
|
|
import cn.reghao.autodop.dmaster.app.repository.orchestration.LocalDirRepository;
|
|
|
import cn.reghao.autodop.dmaster.app.repository.orchestration.NotificationRepository;
|
|
|
import cn.reghao.autodop.dmaster.app.repository.orchestration.ProjOrchestrationRepository;
|
|
|
@@ -35,23 +30,23 @@ import java.util.stream.Collectors;
|
|
|
public class ConfigService {
|
|
|
private LocalDirRepository localDirRepository;
|
|
|
private NotificationRepository notifyRepository;
|
|
|
- private AppUpdateRepository updateRepository;
|
|
|
- private AppCompileRepository compileRepository;
|
|
|
- private AppPackRepository packRepository;
|
|
|
+ private RepoConfigRepository repoRepository;
|
|
|
+ private CompilerConfigRepository compilerRepository;
|
|
|
+ private PackerConfigRepository packerRepository;
|
|
|
private ProjOrchestrationRepository projRepository;
|
|
|
private ShellExecutor shellExecutor;
|
|
|
|
|
|
public ConfigService(LocalDirRepository localDirRepository,
|
|
|
NotificationRepository notifyRepository,
|
|
|
- AppUpdateRepository updateRepository,
|
|
|
- AppCompileRepository compileRepository,
|
|
|
- AppPackRepository packRepository,
|
|
|
+ RepoConfigRepository repoRepository,
|
|
|
+ CompilerConfigRepository compilerRepository,
|
|
|
+ PackerConfigRepository packerRepository,
|
|
|
ProjOrchestrationRepository projRepository) {
|
|
|
this.localDirRepository = localDirRepository;
|
|
|
this.notifyRepository = notifyRepository;
|
|
|
- this.updateRepository = updateRepository;
|
|
|
- this.compileRepository = compileRepository;
|
|
|
- this.packRepository = packRepository;
|
|
|
+ this.repoRepository = repoRepository;
|
|
|
+ this.compilerRepository = compilerRepository;
|
|
|
+ this.packerRepository = packerRepository;
|
|
|
this.projRepository = projRepository;
|
|
|
this.shellExecutor = new ShellExecutor();
|
|
|
}
|
|
|
@@ -62,22 +57,25 @@ public class ConfigService {
|
|
|
case localDir:
|
|
|
LocalDir localDir = (LocalDir) JsonConverter.jsonToObject(json, LocalDir.class);
|
|
|
// 检查并创建目录
|
|
|
- File localRepo = new File(localDir.getLocalRepo());
|
|
|
+ String localRepoPath = localDir.getLocalDir() + "/local-repo";
|
|
|
+ File localRepo = new File(localRepoPath);
|
|
|
if (!localRepo.exists() && !localRepo.mkdirs()) {
|
|
|
- throw new Exception(localDir.getLocalRepo() + "不存在且创建失败...");
|
|
|
+ throw new Exception(localRepoPath + "不存在且创建失败...");
|
|
|
}
|
|
|
|
|
|
- File compileDir = new File(localDir.getCompileDir());
|
|
|
+ String compileDirPath = localDir.getLocalDir() + "/compile-dir";
|
|
|
+ File compileDir = new File(compileDirPath);
|
|
|
if (!compileDir.exists() && !compileDir.mkdirs()) {
|
|
|
- throw new Exception(localDir.getCompileDir() + "不存在且创建失败...");
|
|
|
+ throw new Exception(compileDirPath + "不存在且创建失败...");
|
|
|
}
|
|
|
|
|
|
- File packDir = new File(localDir.getPackDir());
|
|
|
+ String packDirPath = localDir.getLocalDir() + "/pack-dir";
|
|
|
+ File packDir = new File(packDirPath);
|
|
|
if (!packDir.exists() && !packDir.mkdirs()) {
|
|
|
- throw new Exception(localDir.getPackDir() + "不存在且创建失败...");
|
|
|
+ throw new Exception(packDirPath + "不存在且创建失败...");
|
|
|
}
|
|
|
|
|
|
- LocalDir localDirEntity = localDirRepository.findByHostId(localDir.getHostId());
|
|
|
+ LocalDir localDirEntity = localDirRepository.findByMachineId(localDir.getMachineId());
|
|
|
if (localDirEntity != null) {
|
|
|
localDir.setId(localDirEntity.getId());
|
|
|
localDir.setCreateTime(localDirEntity.getCreateTime());
|
|
|
@@ -101,16 +99,16 @@ public class ConfigService {
|
|
|
notifyRepository.save(notification);
|
|
|
break;
|
|
|
// 仓库配置
|
|
|
- case repo:
|
|
|
- AppUpdate appUpdate = (AppUpdate) JsonConverter.jsonToObject(json, AppUpdate.class);
|
|
|
- AppUpdate updateEntity = updateRepository.findByIsDeleteFalseAndRepoName(appUpdate.getRepoName());
|
|
|
+ /*case repo:
|
|
|
+ RepoConfig appUpdate = (RepoConfig) JsonConverter.jsonToObject(json, RepoConfig.class);
|
|
|
+ RepoConfig updateEntity = repoRepository.findByIsDeleteFalseAndRepoName(appUpdate.getRepoName());
|
|
|
if (updateEntity != null) {
|
|
|
appUpdate.setId(updateEntity.getId());
|
|
|
appUpdate.setCreateTime(updateEntity.getCreateTime());
|
|
|
appUpdate.setUpdateTime(LocalDateTime.now());
|
|
|
}
|
|
|
appUpdate.setIsDelete(false);
|
|
|
- updateRepository.save(appUpdate);
|
|
|
+ repoRepository.save(appUpdate);
|
|
|
break;
|
|
|
// 编译器配置
|
|
|
case compiler:
|
|
|
@@ -119,15 +117,15 @@ public class ConfigService {
|
|
|
String script = appCompile.getCompilerHome() + appCompile.getVersionCmd();
|
|
|
checkScript(script);
|
|
|
|
|
|
- AppCompile compileEntity =
|
|
|
- compileRepository.findByIsDeleteFalseAndCompilerName(appCompile.getCompilerName());
|
|
|
+ CompilerConfig compileEntity =
|
|
|
+ compilerRepository.findByIsDeleteFalseAndCompilerName(appCompile.getCompilerName());
|
|
|
if (compileEntity != null) {
|
|
|
appCompile.setId(compileEntity.getId());
|
|
|
appCompile.setCreateTime(compileEntity.getCreateTime());
|
|
|
appCompile.setUpdateTime(LocalDateTime.now());
|
|
|
}
|
|
|
appCompile.setIsDelete(false);
|
|
|
- compileRepository.save(appCompile);
|
|
|
+ compilerRepository.save(appCompile);
|
|
|
break;
|
|
|
// 打包工具配置
|
|
|
case packer:
|
|
|
@@ -137,15 +135,15 @@ public class ConfigService {
|
|
|
checkScript("docker -v");
|
|
|
}
|
|
|
|
|
|
- AppPack packEntity = packRepository.findByIsDeleteFalseAndPackerName(appPack.getPackerName());
|
|
|
+ PackerConfig packEntity = packerRepository.findByIsDeleteFalseAndPackerName(appPack.getPackerName());
|
|
|
if (packEntity != null) {
|
|
|
appPack.setId(packEntity.getId());
|
|
|
appPack.setCreateTime(packEntity.getCreateTime());
|
|
|
appPack.setUpdateTime(LocalDateTime.now());
|
|
|
}
|
|
|
appPack.setIsDelete(false);
|
|
|
- packRepository.save(appPack);
|
|
|
- break;
|
|
|
+ packerRepository.save(appPack);
|
|
|
+ break;*/
|
|
|
default:
|
|
|
throw new Exception(configType + " 类型不存在");
|
|
|
}
|
|
|
@@ -171,27 +169,27 @@ public class ConfigService {
|
|
|
pageList1.setTotalPages(notifiers.getTotalPages());
|
|
|
pageList1.setList(notifiers.getContent().stream().map(Notification::vo).collect(Collectors.toList()));
|
|
|
return pageList1;
|
|
|
- case repo:
|
|
|
- Page<AppUpdate> appUpdates = updateRepository.findAll(pageRequest);
|
|
|
- PageList<AppUpdate> pageList2 = new PageList<>();
|
|
|
+ /*case repo:
|
|
|
+ Page<RepoConfig> appUpdates = repoRepository.findAll(pageRequest);
|
|
|
+ PageList<RepoConfig> pageList2 = new PageList<>();
|
|
|
pageList2.setTotalSize(appUpdates.getTotalElements());
|
|
|
pageList2.setTotalPages(appUpdates.getTotalPages());
|
|
|
- pageList2.setList(appUpdates.getContent().stream().map(AppUpdate::vo).collect(Collectors.toList()));
|
|
|
+ pageList2.setList(appUpdates.getContent().stream().map(RepoConfig::vo).collect(Collectors.toList()));
|
|
|
return pageList2;
|
|
|
case compiler:
|
|
|
- Page<AppCompile> appCompiles = compileRepository.findAll(pageRequest);
|
|
|
+ Page<AppCompile> appCompiles = compilerRepository.findAll(pageRequest);
|
|
|
PageList<AppCompile> pageList3 = new PageList<>();
|
|
|
pageList3.setTotalSize(appCompiles.getTotalElements());
|
|
|
pageList3.setTotalPages(appCompiles.getTotalPages());
|
|
|
pageList3.setList(appCompiles.getContent().stream().map(AppCompile::vo).collect(Collectors.toList()));
|
|
|
return pageList3;
|
|
|
case packer:
|
|
|
- Page<AppPack> appPacks = packRepository.findAll(pageRequest);
|
|
|
+ Page<AppPack> appPacks = packerRepository.findAll(pageRequest);
|
|
|
PageList<AppPack> pageList4 = new PageList<>();
|
|
|
pageList4.setTotalSize(appPacks.getTotalElements());
|
|
|
pageList4.setTotalPages(appPacks.getTotalPages());
|
|
|
pageList4.setList(appPacks.getContent().stream().map(AppPack::vo).collect(Collectors.toList()));
|
|
|
- return pageList4;
|
|
|
+ return pageList4;*/
|
|
|
default:
|
|
|
throw new Exception(configType + " 类型不存在");
|
|
|
}
|
|
|
@@ -205,7 +203,7 @@ public class ConfigService {
|
|
|
* @date 2020-09-30 下午2:53
|
|
|
*/
|
|
|
public void delete(String configType, String name) throws Exception {
|
|
|
- switch (ConfigType.valueOf(configType)) {
|
|
|
+ switch (ConfigType.valueOf(configType)) {/*
|
|
|
case localDir:
|
|
|
break;
|
|
|
case notifier:
|
|
|
@@ -218,54 +216,54 @@ public class ConfigService {
|
|
|
notifyRepository.save(notifierEntity);
|
|
|
break;
|
|
|
case repo:
|
|
|
- AppUpdate updateEntity = updateRepository.findByIsDeleteFalseAndRepoName(name);
|
|
|
+ RepoConfig updateEntity = repoRepository.findByIsDeleteFalseAndRepoName(name);
|
|
|
if (updateEntity == null) {
|
|
|
throw new Exception(name + "不存在...");
|
|
|
}
|
|
|
updateEntity.setIsDelete(true);
|
|
|
- updateRepository.save(updateEntity);
|
|
|
+ repoRepository.save(updateEntity);
|
|
|
break;
|
|
|
case compiler:
|
|
|
- AppCompile compileEntity = compileRepository.findByIsDeleteFalseAndCompilerName(name);
|
|
|
+ AppCompile compileEntity = compilerRepository.findByIsDeleteFalseAndCompilerName(name);
|
|
|
if (compileEntity == null) {
|
|
|
throw new Exception(name + "不存在...");
|
|
|
}
|
|
|
compileEntity.setIsDelete(true);
|
|
|
- compileRepository.save(compileEntity);
|
|
|
+ compilerRepository.save(compileEntity);
|
|
|
break;
|
|
|
case packer:
|
|
|
- AppPack packEntity = packRepository.findByIsDeleteFalseAndPackerName(name);
|
|
|
+ AppPack packEntity = packerRepository.findByIsDeleteFalseAndPackerName(name);
|
|
|
if (packEntity == null) {
|
|
|
throw new Exception(name + "不存在...");
|
|
|
}
|
|
|
packEntity.setIsDelete(true);
|
|
|
- packRepository.save(packEntity);
|
|
|
+ packerRepository.save(packEntity);
|
|
|
break;
|
|
|
default:
|
|
|
- throw new Exception(configType + " 类型不存在");
|
|
|
+ throw new Exception(configType + " 类型不存在");*/
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public Map<String, String> buildConfigs(String buildConfig) {
|
|
|
Map<String, String> map = new HashMap<>();
|
|
|
- switch (ConfigType.valueOf(buildConfig)) {
|
|
|
+ /*switch (ConfigType.valueOf(buildConfig)) {
|
|
|
case proj:
|
|
|
for (ProjOrchestration proj : projRepository.findAll()) {
|
|
|
map.put(proj.getProjId(), proj.getProjId());
|
|
|
}
|
|
|
break;
|
|
|
case update:
|
|
|
- for (AppUpdate appUpdate : updateRepository.findAll()) {
|
|
|
+ for (RepoConfig appUpdate : repoRepository.findAll()) {
|
|
|
map.put(appUpdate.getRepoName(), appUpdate.getRepoName());
|
|
|
}
|
|
|
break;
|
|
|
case compile:
|
|
|
- for (AppCompile appCompile : compileRepository.findAll()) {
|
|
|
+ for (AppCompile appCompile : compilerRepository.findAll()) {
|
|
|
map.put(appCompile.getCompilerName(), appCompile.getCompilerName());
|
|
|
}
|
|
|
break;
|
|
|
case pack:
|
|
|
- for (AppPack appPack : packRepository.findAll()) {
|
|
|
+ for (AppPack appPack : packerRepository.findAll()) {
|
|
|
map.put(appPack.getPackerName(), appPack.getPackerName());
|
|
|
}
|
|
|
break;
|
|
|
@@ -275,7 +273,7 @@ public class ConfigService {
|
|
|
}
|
|
|
break;
|
|
|
default:
|
|
|
- }
|
|
|
+ }*/
|
|
|
return map;
|
|
|
}
|
|
|
}
|