...
|
...
|
@@ -523,7 +523,7 @@ public class DockerProjectCtrl { |
|
|
*/
|
|
|
@RequestMapping(value = "/rollback")
|
|
|
@ResponseBody
|
|
|
public BaseResponse rollback(String projectId, String environment, String rollbackImageStore) {
|
|
|
public BaseResponse rollback(String projectId, String environment,String clusters_name, String rollbackImageStore) {
|
|
|
BaseResponse rtn=new BaseResponse();
|
|
|
DockerProjectModel model=dockerProjectMapper.selectById(Integer.parseInt(projectId));
|
|
|
if(model==null){
|
...
|
...
|
@@ -532,34 +532,39 @@ public class DockerProjectCtrl { |
|
|
return rtn;
|
|
|
}
|
|
|
|
|
|
String clusterId=model.getDockerOnlineClusterId();
|
|
|
String namespace=model.getDockerOnlineNameSpace();
|
|
|
if(environment!=null&&environment.toUpperCase().indexOf("GRAY")>0){
|
|
|
clusterId=model.getDockerGrayClusterId();
|
|
|
namespace=model.getDockerGrayNameSpace();
|
|
|
}
|
|
|
String serviceName=model.getDockerProjectName();
|
|
|
if(!dockerServerDeployService.checkAppIsExist(clusterId,namespace,serviceName)){
|
|
|
rtn.setCode(201);
|
|
|
rtn.setMessage("Docker服务不存在,请联系运维人员");
|
|
|
return rtn;
|
|
|
}
|
|
|
|
|
|
Map<String,Object> statusMap=dockerServerDeployService.checkAppStatusIsNormal(clusterId,namespace,serviceName);
|
|
|
boolean normalStatusFlag=(boolean)statusMap.get("result");
|
|
|
if(!normalStatusFlag){
|
|
|
rtn.setCode(201);
|
|
|
rtn.setMessage("Docker服务非Normal状态,发布中止!");
|
|
|
return rtn;
|
|
|
}
|
|
|
JSONArray containerJa=(JSONArray)statusMap.get("containerJa");
|
|
|
String[] clusterIdArray=clusters_name.split(",");
|
|
|
for(String clusterId:clusterIdArray){
|
|
|
if(StringUtils.isBlank(clusterId)){
|
|
|
continue;
|
|
|
}
|
|
|
if(!dockerServerDeployService.checkAppIsExist(clusterId,namespace,serviceName)){
|
|
|
rtn.setCode(201);
|
|
|
rtn.setMessage("Docker服务不存在,请联系运维人员");
|
|
|
return rtn;
|
|
|
}
|
|
|
|
|
|
//更改路径,更改之后自动重新部署
|
|
|
boolean currentImageLatestFlag=dockerServerDeployService.modifyImageStore(clusterId, namespace, serviceName, containerJa,rollbackImageStore);
|
|
|
if(!currentImageLatestFlag){
|
|
|
rtn.setCode(201);
|
|
|
rtn.setMessage("Docker服务修改镜像服务发生异常");
|
|
|
return rtn;
|
|
|
Map<String,Object> statusMap=dockerServerDeployService.checkAppStatusIsNormal(clusterId,namespace,serviceName);
|
|
|
boolean normalStatusFlag=(boolean)statusMap.get("result");
|
|
|
if(!normalStatusFlag){
|
|
|
rtn.setCode(201);
|
|
|
rtn.setMessage("Docker服务非Normal状态,发布中止!");
|
|
|
return rtn;
|
|
|
}
|
|
|
JSONArray containerJa=(JSONArray)statusMap.get("containerJa");
|
|
|
|
|
|
//更改路径,更改之后自动重新部署
|
|
|
boolean currentImageLatestFlag=dockerServerDeployService.modifyImageStore(clusterId, namespace, serviceName, containerJa,rollbackImageStore);
|
|
|
if(!currentImageLatestFlag){
|
|
|
rtn.setCode(201);
|
|
|
rtn.setMessage("Docker服务修改镜像服务发生异常");
|
|
|
return rtn;
|
|
|
}
|
|
|
}
|
|
|
return rtn;
|
|
|
}
|
...
|
...
|
|