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
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());
String modelPath = "argo-workflow" + "/" + model.get("path");
String modelPath = (String) model.get("path");

LoginUser loginUser = SecurityUtils.getLoginUser();
//构造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) {
return CompletableFuture.supplyAsync(() -> {
try {
gitService.checkoutToken();
LoginUser loginUser = SecurityUtils.getLoginUser();
String ci4sUsername = loginUser.getUsername();
String gitLinkUsername = loginUser.getSysUser().getGitLinkUsername();
@@ -527,20 +526,19 @@ public class ModelsServiceImpl implements ModelsService {

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


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

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("模型版本已存在,请勿重复创建");
}

//新建版本
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());
} else {
//新建模型
@@ -554,12 +552,13 @@ public class ModelsServiceImpl implements ModelsService {

// 创建项目
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
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);
}

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();

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

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

// 配置远程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.dvcConfigS3Credentials(rootPath, endpoint);
DVCUtils.dvcConfigS3Credentials2(rootPath, accessKeyId);
@@ -840,7 +839,7 @@ public class ModelsServiceImpl implements ModelsService {
// git commit
DVCUtils.gitAdd(rootPath, ".");
DVCUtils.gitCommit(rootPath, "commit from ci4s with " + username);
DVCUtils.gitPush(rootPath, modelsVo.getGitLinkUsername(), modelsVo.getGitLinkPassword());
DVCUtils.gitPush(rootPath, gitLinkUsername, gitLinkPassword);

// dvc push 到远程S3
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")
private Integer status;

private String gitLinkUsername;

private String gitLinkPassword;

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



Loading…
Cancel
Save