Browse Source

Merge remote-tracking branch 'origin/dev-czh' into dev

dev-restore_mount
chenzhihang 1 year ago
parent
commit
173dcb1d66
3 changed files with 15 additions and 20 deletions
  1. +2
    -2
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/JupyterServiceImpl.java
  2. +13
    -14
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java
  3. +0
    -4
      ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/ModelsVo.java

+ 2
- 2
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/JupyterServiceImpl.java View File

@@ -90,10 +90,10 @@ public class JupyterServiceImpl implements JupyterService {


// 提取数据集,模型信息,得到数据集模型的path // 提取数据集,模型信息,得到数据集模型的path
Map<String, Object> dataset = JacksonUtil.parseJSONStr2Map(devEnvironment.getDataset()); Map<String, Object> dataset = JacksonUtil.parseJSONStr2Map(devEnvironment.getDataset());
String datasetPath = "argo-workflow" + "/" + dataset.get("path");
String datasetPath = (String) dataset.get("path");


Map<String, Object> model = JacksonUtil.parseJSONStr2Map(devEnvironment.getModel()); Map<String, Object> model = JacksonUtil.parseJSONStr2Map(devEnvironment.getModel());
String modelPath = "argo-workflow" + "/" + model.get("path");
String modelPath = (String) model.get("path");


LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
//构造pod名称 //构造pod名称


+ 13
- 14
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/ModelsServiceImpl.java View File

@@ -519,7 +519,6 @@ public class ModelsServiceImpl implements ModelsService {
public CompletableFuture<String> newCreateModel(ModelsVo modelsVo) { public CompletableFuture<String> newCreateModel(ModelsVo modelsVo) {
return CompletableFuture.supplyAsync(() -> { return CompletableFuture.supplyAsync(() -> {
try { try {
gitService.checkoutToken();
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
String ci4sUsername = loginUser.getUsername(); String ci4sUsername = loginUser.getUsername();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername(); String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
@@ -527,20 +526,19 @@ public class ModelsServiceImpl implements ModelsService {


Map<String, Object> userInfo = getUserInfo(ci4sUsername); Map<String, Object> userInfo = getUserInfo(ci4sUsername);
Integer userId = (Integer) userInfo.get("user_id"); Integer userId = (Integer) userInfo.get("user_id");
String token = (String) userInfo.get("token");



String repositoryName = modelsVo.getRepositoryName() == null ? ci4sUsername + "_model_" + DateUtils.dateTimeNow() : modelsVo.getRepositoryName(); String repositoryName = modelsVo.getRepositoryName() == null ? ci4sUsername + "_model_" + DateUtils.dateTimeNow() : modelsVo.getRepositoryName();
ModelDependency1 modelDependency = new ModelDependency1(); ModelDependency1 modelDependency = new ModelDependency1();
List<ModelDependency1> oldModelDependencys = modelDependency1Dao.queryByModelName(modelsVo.getName()); List<ModelDependency1> oldModelDependencys = modelDependency1Dao.queryByModelName(modelsVo.getName());


if (oldModelDependencys != null && !oldModelDependencys.isEmpty()) { if (oldModelDependencys != null && !oldModelDependencys.isEmpty()) {
if (oldModelDependencys.stream().map(ModelDependency1::getVersion).anyMatch(version -> version.equals(modelsVo.getVersion()))) {

if (oldModelDependencys.stream().anyMatch(oldModelDependency -> oldModelDependency.getRepoId().equals(modelsVo.getRepoId()) && oldModelDependency.getVersion().equals(modelsVo.getVersion()))) {
throw new RuntimeException("模型版本已存在,请勿重复创建"); throw new RuntimeException("模型版本已存在,请勿重复创建");
} }


//新建版本 //新建版本
commonDvc(token, userInfo, ci4sUsername, modelsVo.getRepositoryName(), modelsVo, gitLinkUsername, gitLinkPassword, "CreateModelFromPipeline");
commonDvc(userInfo, ci4sUsername, modelsVo.getRepoId(), modelsVo.getRepositoryName(), modelsVo, gitLinkUsername, gitLinkPassword, "CreateModelFromPipeline");
modelDependency.setRepoId(modelsVo.getRepoId()); modelDependency.setRepoId(modelsVo.getRepoId());
} else { } else {
//新建模型 //新建模型
@@ -554,12 +552,13 @@ public class ModelsServiceImpl implements ModelsService {


// 创建项目 // 创建项目
Map project = gitService.createProject(gitProjectVo); Map project = gitService.createProject(gitProjectVo);
modelDependency.setRepoId((Integer) project.get("id"));
Integer gitlinIid = (Integer) project.get("id");
modelDependency.setRepoId(gitlinIid);
// 定义标签 标签1:ci4s_model 标签2:ModelTag 标签3:ModelType // 定义标签 标签1:ci4s_model 标签2:ModelTag 标签3:ModelType
gitService.createTopic((Integer) project.get("id"), "ci4s_model");
gitService.createTopic((Integer) project.get("id"), "modeltag_" + modelsVo.getModelTag());
gitService.createTopic((Integer) project.get("id"), "modeltype_" + modelsVo.getModelType());
commonDvc(token, userInfo, ci4sUsername, repositoryName, modelsVo, gitLinkUsername, gitLinkPassword, "createModel");
gitService.createTopic(gitlinIid, "ci4s_model");
gitService.createTopic(gitlinIid, "modeltag_" + modelsVo.getModelTag());
gitService.createTopic(gitlinIid, "modeltype_" + modelsVo.getModelType());
commonDvc(userInfo, ci4sUsername, gitlinIid, repositoryName, modelsVo, gitLinkUsername, gitLinkPassword, "createModel");
} }


//保存模型依赖 //保存模型依赖
@@ -796,7 +795,7 @@ public class ModelsServiceImpl implements ModelsService {
modelDependency1Dao.deleteModelDependency(repoId, identifier, owner, version); modelDependency1Dao.deleteModelDependency(repoId, identifier, owner, version);
} }


void commonDvc(String token, Map<String, Object> userInfo, String username, String repositoryName, ModelsVo modelsVo, String gitLinkUsername, String gitLinkPassword, String type) throws Exception {
void commonDvc(Map<String, Object> userInfo, String username, Integer gitlinIid, String repositoryName, ModelsVo modelsVo, String gitLinkUsername, String gitLinkPassword, String type) throws Exception {
String branchName = modelsVo.getVersion(); String branchName = modelsVo.getVersion();


// 创建分支 // 创建分支
@@ -814,7 +813,7 @@ public class ModelsServiceImpl implements ModelsService {
DVCUtils.gitFetch(rootPath, gitLinkUsername, gitLinkPassword); DVCUtils.gitFetch(rootPath, gitLinkUsername, gitLinkPassword);
DVCUtils.gitCheckoutBranch(rootPath, branchName); DVCUtils.gitCheckoutBranch(rootPath, branchName);
} else { } else {
DVCUtils.gitClone(rootPath, projectUrl, branchName, modelsVo.getGitLinkUsername(), modelsVo.getGitLinkPassword());
DVCUtils.gitClone(rootPath, projectUrl, branchName, gitLinkUsername, gitLinkPassword);
} }


DVCUtils.moveFiles(sourcePath, modelPath); DVCUtils.moveFiles(sourcePath, modelPath);
@@ -828,7 +827,7 @@ public class ModelsServiceImpl implements ModelsService {
DVCUtils.dvcInit(rootPath); DVCUtils.dvcInit(rootPath);


// 配置远程S3地址 // 配置远程S3地址
String s3Path = "management-platform-files/" + username + "/model/" + repositoryName + "/" + branchName;
String s3Path = "management-platform-files/" + username + "/model/" + gitlinIid + repositoryName + "/" + branchName;
DVCUtils.dvcRemoteAdd(rootPath, s3Path); DVCUtils.dvcRemoteAdd(rootPath, s3Path);
DVCUtils.dvcConfigS3Credentials(rootPath, endpoint); DVCUtils.dvcConfigS3Credentials(rootPath, endpoint);
DVCUtils.dvcConfigS3Credentials2(rootPath, accessKeyId); DVCUtils.dvcConfigS3Credentials2(rootPath, accessKeyId);
@@ -840,7 +839,7 @@ public class ModelsServiceImpl implements ModelsService {
// git commit // git commit
DVCUtils.gitAdd(rootPath, "."); DVCUtils.gitAdd(rootPath, ".");
DVCUtils.gitCommit(rootPath, "commit from ci4s with " + username); DVCUtils.gitCommit(rootPath, "commit from ci4s with " + username);
DVCUtils.gitPush(rootPath, modelsVo.getGitLinkUsername(), modelsVo.getGitLinkPassword());
DVCUtils.gitPush(rootPath, gitLinkUsername, gitLinkPassword);


// dvc push 到远程S3 // dvc push 到远程S3
DVCUtils.dvcPush(rootPath); DVCUtils.dvcPush(rootPath);


+ 0
- 4
ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/vo/ModelsVo.java View File

@@ -26,10 +26,6 @@ public class ModelsVo extends ModelMetaVo implements Serializable {
@ApiModelProperty(name = "status") @ApiModelProperty(name = "status")
private Integer status; private Integer status;


private String gitLinkUsername;

private String gitLinkPassword;

@ApiModelProperty(name = "models_version_vos") @ApiModelProperty(name = "models_version_vos")
private List<VersionVo> modelVersionVos; private List<VersionVo> modelVersionVos;




Loading…
Cancel
Save