From fb1bda30770b2c0727aad8f79eca2bec4064c2ac Mon Sep 17 00:00:00 2001 From: zeaslity Date: Sun, 14 Apr 2024 15:28:23 +0800 Subject: [PATCH] [ Cmii ] [ Operator ] - BJTG work --- agent-operator/CmiiK8sOperator.go | 14 ++++ agent-operator/main.go | 9 +-- agent-operator/real_project/bgtg/Config.go | 71 +++++++++++++++++++ .../auto/service/HarborFuncScheduler.java | 5 +- .../server/func/TestBaseFuncScheduler.java | 15 ++-- 5 files changed, 103 insertions(+), 11 deletions(-) create mode 100644 agent-operator/real_project/bgtg/Config.go diff --git a/agent-operator/CmiiK8sOperator.go b/agent-operator/CmiiK8sOperator.go index dd9fd3d..4cbe3ea 100644 --- a/agent-operator/CmiiK8sOperator.go +++ b/agent-operator/CmiiK8sOperator.go @@ -353,6 +353,20 @@ func UpdateCmiiImageTagFromNameTagMap(cmiiEnv string, nameTagMap map[string]stri return result } +func UpdateCmiiImageTagFromNameTagList(cmiiEnv string, nameTagList []string) (result map[string]string) { + + nameTagMap := make(map[string]string, len(nameTagList)) + for _, nameTag := range nameTagList { + if strings.HasPrefix(nameTag, image2.CmiiHarborPrefix) { + nameTag = strings.TrimPrefix(nameTag, image2.CmiiHarborPrefix) + } + split := strings.Split(nameTag, ":") + nameTagMap[split[0]] = split[1] + } + + return UpdateCmiiImageTagFromNameTagMap(cmiiEnv, nameTagMap) +} + func RollBackCmiiDeploymentFromUpdateLog(updateLog string) bool { //if !executor.BasicFindContentInFile(updateLog, updateLogPath) { diff --git a/agent-operator/main.go b/agent-operator/main.go index 9da65b0..0053fd6 100644 --- a/agent-operator/main.go +++ b/agent-operator/main.go @@ -3,7 +3,7 @@ package main import ( "os" "wdd.io/agent-common/utils" - "wdd.io/agent-operator/real_project/xmyd" + "wdd.io/agent-operator/real_project/bgtg" ) var LocalKubeConfigFile = "/root/.kube/config" @@ -25,7 +25,7 @@ func RealProjectRunner() { return } - realNamespace := "xmyd" + realNamespace := "bjtg" op := CmiiK8sOperator{} op.BuildCurrentClientFromConfig(readFile) @@ -34,7 +34,8 @@ func RealProjectRunner() { // ops // update - result := UpdateCmiiImageTagFromNameTagMap(realNamespace, xmyd.Real540ImageTagMap) + result := UpdateCmiiImageTagFromNameTagList(realNamespace, bgtg.AllCmiiImageTagList) + //result := UpdateCmiiImageTagFromNameTagMap(realNamespace, xmyd.Real540ImageTagMap) utils.BeautifulPrint(result) //for _, imageFullName := range xmyd.AllCmiiImageTagList { @@ -72,5 +73,5 @@ func CmiiRunner() { func main() { - CmiiRunner() + RealProjectRunner() } diff --git a/agent-operator/real_project/bgtg/Config.go b/agent-operator/real_project/bgtg/Config.go new file mode 100644 index 0000000..8aafd58 --- /dev/null +++ b/agent-operator/real_project/bgtg/Config.go @@ -0,0 +1,71 @@ +package bgtg + +var AllCmiiImageTagList = []string{ + "cmii-uav-tower:5.4.0-0319", + "cmii-uav-platform-logistics:5.4.0", + "cmii-uav-platform-qinghaitourism:4.1.0-21377-0508", + "cmii-uav-platform-securityh5:5.4.0", + "cmii-uav-platform:5.4.0-25263-041102", + "cmii-uav-platform-ai-brain:5.4.0", + "cmii-uav-emergency:5.3.0", + "cmii-uav-kpi-monitor:5.4.0", + "cmii-uav-platform-splice:5.4.0-040301", + "cmii-uav-platform-jiangsuwenlv:4.1.3-jiangsu-0427", + "cmii-live-operator:5.2.0", + "cmii-uav-gateway:5.4.0", + "cmii-uav-platform-security:4.1.6", + "cmii-uav-integration:5.4.0-25916", + "cmii-uav-notice:5.4.0", + "cmii-uav-platform-open:5.4.0", + "cmii-srs-oss-adaptor:2023-SA", + "cmii-admin-gateway:5.4.0", + "cmii-uav-process:5.4.0-0410", + "cmii-suav-supervision:5.4.0-032501", + "cmii-uav-platform-cms-portal:5.4.0", + "cmii-uav-platform-multiterminal:5.4.0", + "cmii-admin-data:5.4.0-0403", + "cmii-uav-cloud-live:5.4.0", + "cmii-uav-grid-datasource:5.2.0-24810", + "cmii-uav-platform-qingdao:4.1.6-24238-qingdao", + "cmii-admin-user:5.4.0", + "cmii-uav-industrial-portfolio:5.4.0-28027-041102", + "cmii-uav-alarm:5.4.0-0409", + "cmii-uav-clusters:5.2.0", + "cmii-uav-platform-oms:5.4.0", + "cmii-uav-platform-hljtt:5.3.0-hjltt", + "cmii-uav-platform-mws:5.4.0", + "cmii-uav-autowaypoint:4.1.6-cm", + "cmii-uav-grid-manage:5.1.0", + "cmii-uav-platform-share:5.4.0", + "cmii-uav-cms:5.3.0", + "cmii-uav-oauth:5.4.0-032901", + "cmii-open-gateway:5.4.0", + "cmii-uav-data-post-process:5.4.0", + "cmii-uav-multilink:5.4.0-032701", + "cmii-uav-platform-media:5.4.0", + "cmii-uav-platform-visualization:5.2.0", + "cmii-uav-platform-emergency-rescue:5.2.0", + "cmii-app-release:4.2.0-validation", + "cmii-uav-device:5.4.0-28028-0409", + "cmii-uav-gis-server:5.4.0", + "cmii-uav-brain:5.4.0", + "cmii-uav-depotautoreturn:5.4.0", + "cmii-uav-threedsimulation:5.1.0", + "cmii-uav-grid-engine:5.1.0", + "cmii-uav-developer:5.4.0-040701", + "cmii-uav-waypoint:5.4.0-032901", + "cmii-uav-platform-base:5.4.0", + "cmii-uav-platform-threedsimulation:5.2.0-21392", + "cmii-uav-platform-detection:5.4.0", + "cmii-uav-logger:5.4.0-0319", + "cmii-uav-platform-seniclive:5.2.0", + "cmii-suav-platform-supervisionh5:5.4.0", + "cmii-uav-user:5.4.0", + "cmii-uav-surveillance:5.4.0-28028-0409", + "cmii-uav-mission:5.4.0-28028-041006", + "cmii-uav-mqtthandler:5.4.0-25916-041001", + "cmii-uav-material-warehouse:5.4.0-0407", + "cmii-uav-platform-armypeople:5.4.0-041201", + "cmii-suav-platform-supervision:5.4.0", + "cmii-uav-airspace:5.4.0-0402", +} diff --git a/server/src/main/java/io/wdd/func/auto/service/HarborFuncScheduler.java b/server/src/main/java/io/wdd/func/auto/service/HarborFuncScheduler.java index 3c21eaa..17bc29a 100644 --- a/server/src/main/java/io/wdd/func/auto/service/HarborFuncScheduler.java +++ b/server/src/main/java/io/wdd/func/auto/service/HarborFuncScheduler.java @@ -77,6 +77,7 @@ public class HarborFuncScheduler { project ); projectDeployContext.setCurrentSynchronizingProject(project); + // sync if (!SyncBetweenHarbor(projectDeployContext)) { log.error( "sync harbor project [ {} ] failed !", @@ -177,14 +178,16 @@ public class HarborFuncScheduler { ServerInfoPO masterNode = projectDeployContext.getMasterNode(); ArrayList syncHarborArgList = new ArrayList<>(); + // zero arg syncHarborArgList.add(HarborFunctionEnum.SYNC_PROJECT_BETWEEN_HARBOR.getOpName()); - // first func args + // first func 目标Harbor的Host syncHarborArgList.add(masterNode.getServerIpInV4()); // second arg sourceHarborHost // String sourceHarborHost = getIPv4Address(); + // 源HarborHost 默认需要端口 syncHarborArgList.add("harbor.wdd.io"); // local // syncHarborArgList.add("192.168.0.6:8034"); // public diff --git a/server/src/test/java/io/wdd/server/func/TestBaseFuncScheduler.java b/server/src/test/java/io/wdd/server/func/TestBaseFuncScheduler.java index 0d35472..92630c3 100644 --- a/server/src/test/java/io/wdd/server/func/TestBaseFuncScheduler.java +++ b/server/src/test/java/io/wdd/server/func/TestBaseFuncScheduler.java @@ -118,30 +118,33 @@ public class TestBaseFuncScheduler { // baseFuncScheduler.runProcedure(projectDeployContext); - - harborFuncScheduler.runProcedure(projectDeployContext); + // 只能支持 带端口的HarborHost 默认为8033 +// harborFuncScheduler.runProcedure(projectDeployContext); List appFunctionEnumList = List.of( // AppFunctionEnum.DEPLOY_CHRONY_SERVER, // AppFunctionEnum.DEPLOY_RKE + // AppFunctionEnum.DEPLOY_K8S_DASHBOARD, // AppFunctionEnum.DEPLOY_NFS, // AppFunctionEnum.DEPLOY_TEST_NFS + // AppFunctionEnum.DEPLOY_K8S_NAMESPACE, // AppFunctionEnum.DEPLOY_K8S_PVC, // AppFunctionEnum.DEPLOY_K8S_MYSQL, // AppFunctionEnum.DEPLOY_K8S_REDIS, // AppFunctionEnum.DEPLOY_K8S_MIDDLEWARES -// AppFunctionEnum.DEPLOY_INGRESS, -// AppFunctionEnum.DEPLOY_FRONTEND -// AppFunctionEnum.DEPLOY_BACKEND + + AppFunctionEnum.DEPLOY_INGRESS, + AppFunctionEnum.DEPLOY_FRONTEND, + AppFunctionEnum.DEPLOY_BACKEND, AppFunctionEnum.DEPLOY_K8S_SRS ); projectDeployContext.setMasterAppProcedure(appFunctionEnumList); -// appFuncScheduler.runProcedure(projectDeployContext); + appFuncScheduler.runProcedure(projectDeployContext); masterNodeProcedure = List.of(BaseFunctionEnum.CHRONY_TO_MASTER);