Commit aea172c0 authored by 黎博's avatar 黎博

修改deployment和service的创建顺序

parent b5fe8baf
...@@ -168,15 +168,15 @@ public class K8sController { ...@@ -168,15 +168,15 @@ public class K8sController {
} }
} else if (label.equals("java")) { } else if (label.equals("java")) {
DockerProject dockerProject = dockerProjectService.getOne(queryWrapper); DockerProject dockerProject = dockerProjectService.getOne(queryWrapper);
// 直接创建Java Deployment
k8sService.createJavaDeployment(serviceCreateVo, dockerProject);
// 如果存在Service,则首先删除,再创建新的 // 如果存在Service,则首先删除,再创建新的
if (k8sService.queryIfServiceExistByName(namespace, serviceName)) { if (k8sService.queryIfServiceExistByName(namespace, serviceName)) {
k8sService.deleteService(namespace, serviceName); k8sService.deleteService(namespace, serviceName);
} }
k8sService.createJavaService(namespace, serviceName, serviceCreateVo.getDebug()); k8sService.createJavaService(namespace, serviceName, serviceCreateVo.getDebug());
// 直接创建Java Deployment
k8sService.createJavaDeployment(serviceCreateVo, dockerProject);
// 如果存在Ingress,则首先删除Ingress,再创建新的 // 如果存在Ingress,则首先删除Ingress,再创建新的
if (k8sService.queryIfIngressExistByName(namespace, serviceName)) { if (k8sService.queryIfIngressExistByName(namespace, serviceName)) {
k8sService.deleteIngress(namespace, serviceName); k8sService.deleteIngress(namespace, serviceName);
...@@ -245,6 +245,12 @@ public class K8sController { ...@@ -245,6 +245,12 @@ public class K8sController {
if (label.equals("java")) { if (label.equals("java")) {
// JAVA // JAVA
DockerProject dockerProject = dockerProjectService.getOne(queryWrapper); DockerProject dockerProject = dockerProjectService.getOne(queryWrapper);
// 如果不存在Service,则重新创建Service
if (!k8sService.queryIfServiceExistByName(namespace, serviceName)) {
k8sService.createJavaService(namespace, serviceName, serviceCreateVo.getDebug());
}
// 创建Deployment // 创建Deployment
if (k8sService.queryIfDeploymentExistByName(namespace, serviceName)) { if (k8sService.queryIfDeploymentExistByName(namespace, serviceName)) {
log.info("{}环境{}服务的Deployment已存在,首先删除该Deployment.", namespace, serviceName); log.info("{}环境{}服务的Deployment已存在,首先删除该Deployment.", namespace, serviceName);
...@@ -252,11 +258,6 @@ public class K8sController { ...@@ -252,11 +258,6 @@ public class K8sController {
} }
k8sService.createJavaDeployment(serviceCreateVo, dockerProject); k8sService.createJavaDeployment(serviceCreateVo, dockerProject);
// 如果不存在Service,则重新创建Service
if (!k8sService.queryIfServiceExistByName(namespace, serviceName)) {
k8sService.createJavaService(namespace, serviceName, serviceCreateVo.getDebug());
}
// 如果不存在ingress则创建ingress // 如果不存在ingress则创建ingress
if (!k8sService.queryIfIngressExistByName(namespace, serviceName)) { if (!k8sService.queryIfIngressExistByName(namespace, serviceName)) {
k8sService.createIngress(namespace, serviceName, serviceCreateVo.getDomain()); k8sService.createIngress(namespace, serviceName, serviceCreateVo.getDomain());
...@@ -264,6 +265,12 @@ public class K8sController { ...@@ -264,6 +265,12 @@ public class K8sController {
} else if (label.equals("ui") || label.equals("node")) { } else if (label.equals("ui") || label.equals("node")) {
// UI // UI
DockerProject dockerProject = dockerProjectService.getOne(queryWrapper); DockerProject dockerProject = dockerProjectService.getOne(queryWrapper);
// 如果不存在Service,则重新创建Service
if (!k8sService.queryIfServiceExistByName(namespace, serviceName)) {
k8sService.createUIAndNodeService(namespace, serviceName, type, label);
}
// 创建Deployment // 创建Deployment
if (k8sService.queryIfDeploymentExistByName(namespace, serviceName)) { if (k8sService.queryIfDeploymentExistByName(namespace, serviceName)) {
log.info("{}环境{}服务的Deployment已存在,首先删除该Deployment.", namespace, serviceName); log.info("{}环境{}服务的Deployment已存在,首先删除该Deployment.", namespace, serviceName);
...@@ -271,11 +278,6 @@ public class K8sController { ...@@ -271,11 +278,6 @@ public class K8sController {
} }
k8sService.createUIAndNodeDeployment(serviceCreateVo, dockerProject); k8sService.createUIAndNodeDeployment(serviceCreateVo, dockerProject);
// 如果不存在Service,则重新创建Service
if (!k8sService.queryIfServiceExistByName(namespace, serviceName)) {
k8sService.createUIAndNodeService(namespace, serviceName, type, label);
}
// 如果不存在ingress则创建ingress // 如果不存在ingress则创建ingress
if (!k8sService.queryIfIngressExistByName(namespace, serviceName)) { if (!k8sService.queryIfIngressExistByName(namespace, serviceName)) {
k8sService.createIngress(namespace, serviceName, serviceCreateVo.getDomain()); k8sService.createIngress(namespace, serviceName, serviceCreateVo.getDomain());
...@@ -303,6 +305,7 @@ public class K8sController { ...@@ -303,6 +305,7 @@ public class K8sController {
.eq("project_name", serviceName) .eq("project_name", serviceName)
.eq("project_type", type); .eq("project_type", type);
DockerProject dockerProject = dockerProjectService.getOne(dockerProjectQueryWrapper); DockerProject dockerProject = dockerProjectService.getOne(dockerProjectQueryWrapper);
// 先删除原有pod // 先删除原有pod
if (!k8sService.deleteDeployment(namespace, serviceName)) { if (!k8sService.deleteDeployment(namespace, serviceName)) {
return JsonResult.buildErrorStateResult("更新服务失败!", false); return JsonResult.buildErrorStateResult("更新服务失败!", false);
...@@ -315,13 +318,13 @@ public class K8sController { ...@@ -315,13 +318,13 @@ public class K8sController {
} }
// 类型为Java // 类型为Java
if (label.equals("java")) { if (label.equals("java")) {
deployment = k8sService.createJavaDeployment(serviceCreateVo, dockerProject);
k8sService.createJavaService(namespace, serviceName, serviceCreateVo.getDebug()); k8sService.createJavaService(namespace, serviceName, serviceCreateVo.getDebug());
deployment = k8sService.createJavaDeployment(serviceCreateVo, dockerProject);
} }
// 类型为UI或Node // 类型为UI或Node
if (label.equals("ui") || label.equals("node")) { if (label.equals("ui") || label.equals("node")) {
deployment = k8sService.createUIAndNodeDeployment(serviceCreateVo, dockerProject);
k8sService.createUIAndNodeService(namespace, serviceName, type, label); k8sService.createUIAndNodeService(namespace, serviceName, type, label);
deployment = k8sService.createUIAndNodeDeployment(serviceCreateVo, dockerProject);
} }
// 删除原有Ingress // 删除原有Ingress
if (k8sService.queryIfIngressExistByName(namespace, serviceName)) { if (k8sService.queryIfIngressExistByName(namespace, serviceName)) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment