[Agent][Deploy] - cmii deploy template rearrange

This commit is contained in:
zeaslity
2024-06-18 09:52:28 +08:00
parent 51fbb2027d
commit 6b2dc33a34
46 changed files with 12655 additions and 13960 deletions

View File

@@ -1,6 +1,7 @@
package main
import (
"fmt"
"os"
"path/filepath"
"strings"
@@ -11,16 +12,16 @@ import (
"wdd.io/agent-operator/image"
)
func CmiiEnvDeploy() {
func CmiiEnvDeploy(shouldDoCompleteDeploy bool) {
// 部署的环境
cmiiNamespace := dev
// 完整部署
shouldDoCompleteDeploy := true
//shouldDoCompleteDeploy := false
// 输出特定版本的Tag 或者 从DEMO环境拉取
DeploySpecificTag := "5.5.0"
DeploySpecificTag := "5.6.0"
folderPrefix := "/home/wdd/IdeaProjects/ProjectOctopus/agent-deploy/" + cmiiNamespace + "/"
@@ -58,6 +59,8 @@ func CmiiEnvDeploy() {
utils.BeautifulPrintWithTitle(frontendMap, "frontendMap")
utils.BeautifulPrintWithTitle(srsMap, "srsMap")
common.GenerateApplyFilePath()
// generate and get all old stuff
agent_deploy.CmiiEnvironmentDeploy(shouldDoCompleteDeploy, common, backendMap, frontendMap)
@@ -65,11 +68,15 @@ func CmiiEnvDeploy() {
//GetNodeWideByKubectl(cmiiNamespace)
// clear old apply file
//clearOldApplyStuff(applyYamlFolder+"old/", cmiiNamespace)
//clearOldApplyStuff(common, shouldDoCompleteDeploy)
// apply new app
//applyNewAppStuff(common, shouldDoCompleteDeploy)
fmt.Println()
fmt.Println("-------------------- all done ---------------------")
fmt.Println()
}
func applyNewAppStuff(common *z_dep.CommonEnvironmentConfig, shouldDoCompleteDeploy bool) bool {
@@ -87,6 +94,9 @@ func applyNewAppStuff(common *z_dep.CommonEnvironmentConfig, shouldDoCompleteDep
if shouldDoCompleteDeploy {
// pvc
ApplyByKubectl(z_dep.PVCApplyFilePath, namespace)
// mysql
ApplyByKubectl(z_dep.MySQLApplyFilePath, namespace)
if !DefaultCmiiOperator.PodStatusCheckTimeout("helm-mysql-0", namespace, 180) {
@@ -133,21 +143,44 @@ func applyNewAppStuff(common *z_dep.CommonEnvironmentConfig, shouldDoCompleteDep
return true
}
func clearOldApplyStuff(oldApplyYamlFolder string, cmiiEnv string) bool {
func clearOldApplyStuff(common *z_dep.CommonEnvironmentConfig, shouldDoCompleteDeploy bool) bool {
files, err := os.ReadDir(oldApplyYamlFolder)
oldApplyFilePath := filepath.Join(common.ApplyFilePrefix, "old")
files, err := os.ReadDir(oldApplyFilePath)
if err != nil {
log.ErrorF("failed to read directory: %v", err)
return false
}
if len(files) == 0 {
log.WarnF("no apply file found in %s", common.ApplyFilePrefix)
return false
}
// rearrange
//rearrangeCmiiDeploySequence(files)
namespace := common.Namespace
for _, file := range files {
if filepath.Ext(file.Name()) == ".yaml" || filepath.Ext(file.Name()) == ".yml" {
filePath := filepath.Join(oldApplyYamlFolder, file.Name())
DeleteByKubectl(filePath, cmiiEnv)
for _, fileEntry := range files {
switch fileEntry.Name() {
case z_dep.PVCApplyFileName:
continue
case z_dep.MySQLApplyFileName:
continue
case z_dep.MongoApplyFileName:
continue
case z_dep.RedisApplyFileName:
continue
case z_dep.RabbitMQApplyFileName:
continue
case z_dep.EmqxApplyFileName:
continue
case z_dep.NacosApplyFileName:
continue
case z_dep.ConfigMapApplyFileName:
continue
case z_dep.IngresApplyFileName:
continue
default:
log.InfoF("[clearOldApplyStuff] - delete %s", fileEntry.Name())
DeleteByKubectl(filepath.Join(oldApplyFilePath, fileEntry.Name()), namespace)
}
}

View File

@@ -4,5 +4,5 @@ import "testing"
func TestCmiiEnvDeploy(t *testing.T) {
CmiiEnvDeploy()
CmiiEnvDeploy(true)
}

View File

@@ -7,7 +7,7 @@ import (
"time"
image2 "wdd.io/agent-common/image"
"wdd.io/agent-common/utils"
"wdd.io/agent-operator/config"
"wdd.io/agent-deploy/d_app"
)
var DefaultCmiiOperator = CmiiK8sOperator{}
@@ -194,7 +194,7 @@ func FindCmiiMiddlewarePodInterface(cmiiEnv string) (podList []CmiiPodInterface)
cmiiPodInterfaces := DefaultCmiiOperator.PodAllInterface(cmiiEnv)
for _, podInterface := range cmiiPodInterfaces {
for key := range config.CmiiMiddlewareNameMap {
for key := range d_app.CmiiMiddlewareNameMap {
if strings.Contains(podInterface.Name, key) {
podList = append(podList, podInterface)
}
@@ -205,8 +205,8 @@ func FindCmiiMiddlewarePodInterface(cmiiEnv string) (podList []CmiiPodInterface)
}
func ScaleCmiiFrontendDeploymentToDesiredReplicas(cmiiEnv string, desiredReplicas int32) (errorUpdateMap map[string]int32) {
frontMap := make(map[string]int32, len(config.CmiiFrontendAppMap))
for aooName := range config.CmiiFrontendAppMap {
frontMap := make(map[string]int32, len(d_app.CmiiFrontendAppMap))
for aooName := range d_app.CmiiFrontendAppMap {
frontMap[aooName] = desiredReplicas
}
@@ -214,8 +214,8 @@ func ScaleCmiiFrontendDeploymentToDesiredReplicas(cmiiEnv string, desiredReplica
}
func ScaleCmiiBackendDeploymentToDesiredReplicas(cmiiEnv string, desiredReplicas int32) (errorUpdateMap map[string]int32) {
backMap := make(map[string]int32, len(config.CmiiBackendAppMap))
for aooName := range config.CmiiBackendAppMap {
backMap := make(map[string]int32, len(d_app.CmiiBackendAppMap))
for aooName := range d_app.CmiiBackendAppMap {
backMap[aooName] = desiredReplicas
}
@@ -284,7 +284,7 @@ func RestartCmiiFrontendDeployment(cmiiEnv string) {
cmiiDeploymentInterfaces := DefaultCmiiOperator.DeploymentAllInterface(cmiiEnv)
for _, deploymentInterface := range cmiiDeploymentInterfaces {
_, ok := config.CmiiFrontendAppMap[deploymentInterface.Name]
_, ok := d_app.CmiiFrontendAppMap[deploymentInterface.Name]
if ok {
if !DefaultCmiiOperator.DeploymentRestart(deploymentInterface.Namespace, deploymentInterface.Name) {
log.ErrorF("[RestartCmiiFrontendDeployment] - restart of [%s] [%s] failed !", deploymentInterface.Namespace, deploymentInterface.Name)
@@ -486,7 +486,7 @@ func BackupAllCmiiDeploymentToMap(cmiiEnv string) (backendMap, frontendMap, srsM
}
// add srs part
for key, value := range config.CmiiSrsAppMap {
for key, value := range d_app.CmiiSrsAppMap {
var app *CmiiDeploymentInterface
if strings.Contains(value, "deployment") {
app = DefaultCmiiOperator.DeploymentOneInterface(cmiiEnv, key)
@@ -546,7 +546,7 @@ func BackUpAllCmiiAppImageNameFromEnv(cmiiEnv string) {
only := make(map[string]string, 150)
// front
utils.AppendContentToFile("---\n", filePath)
for key, value := range config.CmiiFrontendAppMap {
for key, value := range d_app.CmiiFrontendAppMap {
_, ok := only[key]
if !ok {
deploy := DefaultCmiiOperator.DeploymentOneInterface(cmiiEnv, key)
@@ -557,7 +557,7 @@ func BackUpAllCmiiAppImageNameFromEnv(cmiiEnv string) {
}
}
utils.AppendContentToFile("---\n", filePath)
for key, value := range config.CmiiBackendAppMap {
for key, value := range d_app.CmiiBackendAppMap {
_, ok := only[key]
if !ok {
deploy := DefaultCmiiOperator.DeploymentOneInterface(cmiiEnv, key)
@@ -570,7 +570,7 @@ func BackUpAllCmiiAppImageNameFromEnv(cmiiEnv string) {
// backend
utils.AppendContentToFile("---\n", filePath)
// gis server
for key, value := range config.CmiiGISAppMap {
for key, value := range d_app.CmiiGISAppMap {
_, ok := only[key]
if !ok {
deploy := DefaultCmiiOperator.DeploymentOneInterface(cmiiEnv, key)
@@ -582,7 +582,7 @@ func BackUpAllCmiiAppImageNameFromEnv(cmiiEnv string) {
}
// srs
utils.AppendContentToFile("---\n", filePath)
for key, value := range config.CmiiSrsAppMap {
for key, value := range d_app.CmiiSrsAppMap {
_, ok := only[key]
if !ok {
var app *CmiiDeploymentInterface
@@ -609,9 +609,9 @@ func BackUpAllCmiiAppImageNameFromEnv(cmiiEnv string) {
func FilterAllCmiiAppStrict(source []CmiiDeploymentInterface) (result []CmiiDeploymentInterface) {
for _, c := range source {
_, ok := config.CmiiBackendAppMap[c.ContainerName]
_, ok := d_app.CmiiBackendAppMap[c.ContainerName]
if !ok {
_, ok = config.CmiiFrontendAppMap[c.ContainerName]
_, ok = d_app.CmiiFrontendAppMap[c.ContainerName]
if !ok {
log.WarnF("[FilterAllCmiiAppStrict] - [%s] not cmii pod ", c.ContainerName)
continue
@@ -663,9 +663,9 @@ func FilterAllCmiiAppSoft(source []CmiiDeploymentInterface) (result []CmiiDeploy
func FilterAllCmiiPodStrict(podList []CmiiPodInterface) (result []CmiiPodInterface) {
for _, c := range podList {
_, ok := config.CmiiBackendAppMap[c.ContainerName]
_, ok := d_app.CmiiBackendAppMap[c.ContainerName]
if !ok {
_, ok = config.CmiiFrontendAppMap[c.ContainerName]
_, ok = d_app.CmiiFrontendAppMap[c.ContainerName]
if !ok {
log.WarnF("[FilterAllCmiiPodStrict] - [%s] not cmii pod ", c.ContainerName)
continue
@@ -735,9 +735,9 @@ func FilterAllCmiiNodeSoft(nodeList []CmiiNodeInterface) (result []CmiiNodeInter
}
func AppNameBelongsToCmiiImage(appName string) bool {
_, ok := config.CmiiBackendAppMap[appName]
_, ok := d_app.CmiiBackendAppMap[appName]
if !ok {
_, ok = config.CmiiFrontendAppMap[appName]
_, ok = d_app.CmiiFrontendAppMap[appName]
if !ok {
log.WarnF("[AppNameBelongsToCmiiImage] - [%s] not cmii app ", appName)
return false

View File

@@ -253,7 +253,7 @@ func TestUpdateCmiiDeploymentImageTag(t *testing.T) {
// 计算20:00的时间
now := time.Now()
targetTime := time.Date(now.Year(), now.Month(), now.Day(), 17, 34, 00, 0, now.Location())
targetTime := time.Date(now.Year(), now.Month(), now.Day(), 9, 13, 00, 0, now.Location())
duration := time.Duration(0)
@@ -278,9 +278,9 @@ func TestUpdateCmiiDeploymentImageTag(t *testing.T) {
//"cmii-uav-multilink": "5.5.0",
//"cmii-uav-process": "5.6.0-060601",
//"cmii-uav-industrial-portfolio": "5.6.0-061303",
"cmii-uav-industrial-portfolio": "5.6.0-061401",
"cmii-uav-industrial-portfolio": "5.6.0-061801",
//"cmii-uas-lifecycle": "5.6.0",
"cmii-uas-lifecycle": "5.6.0-061401",
//"cmii-uas-lifecycle": "5.6.0-061401",
}
for appName, newTag := range appNameTagMap {

View File

@@ -5,10 +5,9 @@ import (
"os"
"slices"
"strings"
"wdd.io/agent-operator/config"
image2 "wdd.io/agent-common/image"
"wdd.io/agent-common/utils"
"wdd.io/agent-deploy/d_app"
"wdd.io/agent-operator/image"
)
@@ -422,8 +421,8 @@ func buildAllCmiiImageNameListFromVersion(cmiiVersion string) []string {
var realCmiiImageName []string
backendMap := config.CmiiBackendAppMap
frontendMap := config.CmiiFrontendAppMap
backendMap := d_app.CmiiBackendAppMap
frontendMap := d_app.CmiiFrontendAppMap
for app := range backendMap {
backendMap[app] = cmiiVersion
@@ -435,7 +434,7 @@ func buildAllCmiiImageNameListFromVersion(cmiiVersion string) []string {
realCmiiImageName = append(realCmiiImageName, image.CmiiImageMapToFullNameList(backendMap)...)
realCmiiImageName = append(realCmiiImageName, image.CmiiImageMapToFullNameList(frontendMap)...)
for key, value := range config.CmiiSrsAppMap {
for key, value := range d_app.CmiiSrsAppMap {
var app *CmiiDeploymentInterface
if strings.Contains(value, "deployment") {
app = DefaultCmiiOperator.DeploymentOneInterface(demo, key)
@@ -470,12 +469,12 @@ func DownloadCompressUploadDependency(shouldGzip bool, shouldOss bool, shouldDow
if isRKE {
log.Info("DCU for rke!")
fulleImageNameList = config.Rancher1204Amd64
fulleImageNameList = d_app.Rancher1204Amd64
gzipFolderPrefix = image.OfflineImageGzipFolderPrefix + "rke/"
} else {
log.Info("DCU for middle!")
fulleImageNameList = config.MiddlewareAmd64
fulleImageNameList = d_app.MiddlewareAmd64
gzipFolderPrefix = image.OfflineImageGzipFolderPrefix + "middle/"
}
@@ -488,7 +487,7 @@ func LoadSplitCmiiGzipImageToTargetHarbor(projectName, targetHarborHost string)
projectGzipFolder := image.OfflineImageGzipFolderPrefix + projectName
errorLoadImageNameList = append(errorLoadImageNameList, image.LoadFromFolderPath(projectGzipFolder)...)
// read from json
errorPushImageNameList = append(errorPushImageNameList, image.TagFromListAndPushToCHarbor(config.Cmii520DemoImageList, targetHarborHost)...)
errorPushImageNameList = append(errorPushImageNameList, image.TagFromListAndPushToCHarbor(d_app.Cmii520DemoImageList, targetHarborHost)...)
// re-tag
// push
@@ -506,8 +505,8 @@ func LoadSplitDepGzipImageToTargetHarbor(targetHarborHost string) (errorLoadImag
//errorLoadImageNameList = append(errorLoadImageNameList, ImageLoadFromFolderPath(middle)...)
//errorLoadImageNameList = append(errorLoadImageNameList, ImageLoadFromFolderPath(rke)...)
errorPushImageNameList = append(errorPushImageNameList, image.TagFromListAndPushToCHarbor(config.MiddlewareAmd64, targetHarborHost)...)
errorPushImageNameList = append(errorPushImageNameList, image.TagFromListAndPushToCHarbor(config.Rancher1204Amd64, targetHarborHost)...)
errorPushImageNameList = append(errorPushImageNameList, image.TagFromListAndPushToCHarbor(d_app.MiddlewareAmd64, targetHarborHost)...)
errorPushImageNameList = append(errorPushImageNameList, image.TagFromListAndPushToCHarbor(d_app.Rancher1204Amd64, targetHarborHost)...)
return errorLoadImageNameList, errorPushImageNameList

View File

@@ -102,7 +102,8 @@ func DeleteByKubectl(applyFilePath string, cmiiEnv string) bool {
return false
}
log.InfoF("successfully deleted resources in file %s\n%s", applyFilePath, output)
log.InfoF("successfully deleted resources in file %s", applyFilePath)
fmt.Println(string(output))
return true
}
@@ -114,7 +115,7 @@ func ApplyByKubectl(applyFilePath string, cmiiEnv string) bool {
cmd.Env = append(os.Environ(), fmt.Sprintf("KUBECONFIG=%s", kubeconfig))
output, err := cmd.CombinedOutput()
if err != nil {
log.ErrorF("failed to apply resources in file %s: %v\n%s", applyFilePath, err, output)
log.ErrorF("failed to apply resources in file %s: %v \n %s", applyFilePath, err, output)
return false
}

View File

@@ -1,325 +0,0 @@
package config
var CmiiBackendAppMap = map[string]string{
"cmii-admin-data": "5.2.0",
"cmii-admin-gateway": "5.2.0",
"cmii-admin-user": "5.2.0",
"cmii-app-release": "4.2.0-validation",
"cmii-open-gateway": "5.2.0",
"cmii-suav-supervision": "5.2.0",
"cmii-uav-airspace": "5.2.0",
"cmii-uav-alarm": "5.2.0",
"cmii-uav-autowaypoint": "4.1.6-cm-0828",
"cmii-uav-brain": "5.2.0",
"cmii-uav-cloud-live": "5.2.0",
"cmii-uav-clusters": "5.2.0",
"cmii-uav-cms": "5.2.0",
"cmii-uav-data-post-process": "5.2.0",
"cmii-uav-depotautoreturn": "4.2.0",
"cmii-uav-developer": "5.2.0-25858",
"cmii-uav-device": "5.2.0",
"cmii-uav-emergency": "5.2.0",
"cmii-uav-gateway": "5.2.0",
"cmii-uav-industrial-portfolio": "5.2.0-25268-10",
"cmii-uav-integration": "5.2.0-25447",
"cmii-uav-kpi-monitor": "5.2.0",
"cmii-uav-logger": "5.2.0",
"cmii-uav-material-warehouse": "5.2.0",
"cmii-uav-mission": "5.2.0-25840",
"cmii-uav-mqtthandler": "5.2.0-25340",
"cmii-uav-notice": "5.2.0",
"cmii-uav-oauth": "5.2.0",
"cmii-uav-process": "5.2.0",
"cmii-uav-surveillance": "5.2.0-25854",
"cmii-uav-threedsimulation": "5.2.0",
"cmii-uav-tower": "5.2.0",
"cmii-uav-user": "5.2.0",
"cmii-uav-waypoint": "5.2.0",
"cmii-uav-multilink": "5.2.0",
"cmii-uav-bridge": "5.2.0",
"cmii-uas-lifecycle": "5.2.0",
"cmii-uas-gateway": "5.2.0",
}
var CmiiFrontendAppMap = map[string]string{
"cmii-suav-platform-supervision": "5.2.0",
"cmii-suav-platform-supervisionh5": "5.2.0",
"cmii-uav-platform": "5.2.0-011004",
"cmii-uav-platform-ai-brain": "5.2.0",
"cmii-uav-platform-armypeople": "5.2.0-24538",
"cmii-uav-platform-base": "5.2.0",
"cmii-uav-platform-cms-portal": "5.2.0",
"cmii-uav-platform-detection": "5.2.0",
"cmii-uav-platform-emergency-rescue": "5.2.0",
"cmii-uav-platform-hljtt": "5.2.0",
"cmii-uav-platform-jiangsuwenlv": "4.1.3-jiangsu-0427",
"cmii-uav-platform-logistics": "5.2.0",
"cmii-uav-platform-media": "5.2.0",
"cmii-uav-platform-multiterminal": "5.2.0",
"cmii-uav-platform-mws": "5.2.0",
"cmii-uav-platform-oms": "5.2.0",
"cmii-uav-platform-open": "5.2.0",
"cmii-uav-platform-qingdao": "4.1.6-24238-qingdao",
"cmii-uav-platform-qinghaitourism": "4.1.0-21377-0508",
"cmii-uav-platform-security": "4.1.6",
"cmii-uav-platform-securityh5": "5.2.0",
"cmii-uav-platform-seniclive": "5.2.0",
"cmii-uav-platform-share": "5.2.0",
"cmii-uav-platform-splice": "5.2.0",
"cmii-uav-platform-threedsimulation": "5.2.0-21392",
"cmii-uav-platform-visualization": "5.2.0",
}
var CmiiMiddlewareNameMap = map[string]string{
"helm-nacos": "single",
"helm-emqxs": "single",
"helm-mysql": "single",
"helm-redis": "replication",
"helm-rabbitmq": "single",
}
var CmiiSrsAppMap = map[string]string{
"helm-live-op-v2": "deployment",
"helm-live-rtsp-op": "4.1.6",
"helm-live-srs-rtc": "statefulset",
}
var CmiiGISAppMap = map[string]string{
"cmii-uav-gis-server": "5.4.0",
"cmii-uav-grid-datasource": "5.4.0",
"cmii-uav-grid-engine": "5.4.0",
"cmii-uav-grid-manage": "5.4.0",
}
var MiddlewareAmd64 = []string{
"bitnami/redis:6.2.6-debian-10-r0",
"bitnami/redis:6.2.14-debian-11-r1",
"bitnami/mysql:8.0.35-debian-11-r1",
"bitnami/mysql:8.1.0-debian-11-r42",
"simonrupf/chronyd:0.4.3",
"bitnami/bitnami-shell:10-debian-10-r140",
"bitnami/bitnami-shell:11-debian-11-r136",
"bitnami/rabbitmq:3.9.12-debian-10-r3",
"bitnami/rabbitmq:3.11.26-debian-11-r2",
"ossrs/srs:v4.0.136",
"ossrs/srs:v5.0.195",
"ossrs/srs:v4.0-r3",
"emqx/emqx:4.2.12",
"emqx/emqx:5.5.1",
"nacos/nacos-server:v2.1.2",
"nacos/nacos-server:v2.1.2-slim",
"mongo:5.0",
"rabbitmq:3.9-management",
"bitnami/minio:2022.5.4",
"bitnami/minio:2023.5.4",
"kubernetesui/dashboard:v2.0.1",
"kubernetesui/metrics-scraper:v1.0.4",
"nginx:1.21.3",
"redis:6.0.20-alpine",
"dyrnq/nfs-subdir-external-provisioner:v4.0.2",
"jerrychina2020/rke-tools:v0.175-linux",
"busybox:latest",
}
var Rancher1204Amd64 = []string{
"rancher/backup-restore-operator:v1.0.3",
"rancher/calico-cni:v3.17.2",
"rancher/calico-ctl:v3.17.2",
"rancher/calico-kube-controllers:v3.17.2",
"rancher/calico-node:v3.17.2",
"rancher/calico-pod2daemon-flexvol:v3.17.2",
"rancher/cis-operator:v1.0.3",
"rancher/cluster-proportional-autoscaler:1.7.1",
"rancher/coredns-coredns:1.8.0",
"rancher/coreos-etcd:v3.4.14-rancher1",
"rancher/coreos-kube-state-metrics:v1.9.7",
"rancher/coreos-prometheus-config-reloader:v0.39.0",
"rancher/coreos-prometheus-operator:v0.39.0",
"rancher/externalip-webhook:v0.1.6",
"rancher/flannel-cni:v0.3.0-rancher6",
"rancher/coreos-flannel:v0.13.0-rancher1",
"rancher/fleet-agent:v0.3.4",
"rancher/fleet:v0.3.4",
"rancher/fluentd:v0.1.24",
"rancher/grafana-grafana:7.1.5",
"rancher/hyperkube:v1.20.4-rancher1",
"rancher/jimmidyson-configmap-reload:v0.3.0",
"rancher/k8s-dns-dnsmasq-nanny:1.15.2",
"rancher/k8s-dns-kube-dns:1.15.2",
"rancher/k8s-dns-node-cache:1.15.13",
"rancher/k8s-dns-sidecar:1.15.2",
"rancher/klipper-lb:v0.1.2",
"rancher/kube-api-auth:v0.1.4",
"rancher/kubectl:v1.20.4",
"rancher/kubernetes-external-dns:v0.7.3",
"rancher/cluster-proportional-autoscaler:1.8.1",
"rancher/library-busybox:1.31.1",
"rancher/library-busybox:1.32.1",
"rancher/library-nginx:1.19.2-alpine",
"rancher/library-traefik:1.7.19",
"rancher/local-path-provisioner:v0.0.11",
"rancher/local-path-provisioner:v0.0.14",
"rancher/local-path-provisioner:v0.0.19",
"rancher/log-aggregator:v0.1.7",
"rancher/istio-kubectl:1.5.10",
"rancher/metrics-server:v0.4.1",
"rancher/configmap-reload:v0.3.0-rancher4",
"rancher/nginx-ingress-controller-defaultbackend:1.5-rancher1",
"rancher/nginx-ingress-controller:nginx-0.43.0-rancher1",
"rancher/opa-gatekeeper:v3.1.0-beta.7",
"rancher/openzipkin-zipkin:2.14.2",
"rancher/pause:3.2",
"rancher/plugins-docker:18.09",
"rancher/prom-alertmanager:v0.21.0",
"rancher/prom-node-exporter:v1.0.1",
"rancher/prom-prometheus:v2.18.2",
"rancher/prometheus-auth:v0.2.1",
"rancher/rancher-agent:v2.5.7",
"rancher/rancher-webhook:v0.1.0-beta9",
"rancher/rancher:v2.5.7",
"rancher/rke-tools:v0.1.72",
"rancher/security-scan:v0.1.14",
"rancher/security-scan:v0.2.2",
"rancher/shell:v0.1.6",
"rancher/sonobuoy-sonobuoy:v0.16.3",
"rancher/system-upgrade-controller:v0.6.2",
}
var CmiiSRSImageList = []string{
"harbor.cdcyy.com.cn/cmii/cmii-live-operator:5.2.0",
"harbor.cdcyy.com.cn/cmii/cmii-srs-oss-adaptor:2023-SA",
}
var Cmii530DemoImageList = []string{
"cmii-admin-data:5.2.0",
"cmii-admin-gateway:5.2.0",
"cmii-admin-user:5.2.0",
"cmii-app-release:4.2.0-validation",
"cmii-open-gateway:5.2.0",
"cmii-suav-supervision:5.2.0",
"cmii-uav-airspace:5.2.0",
"cmii-uav-alarm:5.2.0",
"cmii-uav-autowaypoint:4.1.6-cm-0828",
"cmii-uav-brain:5.2.0",
"cmii-uav-cloud-live:5.2.0",
"cmii-uav-clusters:5.2.0",
"cmii-uav-cms:5.2.0",
"cmii-uav-data-post-process:5.2.0",
"cmii-uav-depotautoreturn:4.2.0",
"cmii-uav-developer:5.2.0-25858",
"cmii-uav-device:5.2.0",
"cmii-uav-emergency:5.2.0",
"cmii-uav-gateway:5.2.0",
"cmii-uav-gis-server:5.2.0",
"cmii-uav-grid-datasource:5.2.0-24810",
"cmii-uav-grid-engine:5.1.0",
"cmii-uav-grid-manage:5.1.0",
"cmii-uav-industrial-portfolio:5.2.0-25268-12",
"cmii-uav-integration:5.2.0-25447",
"cmii-uav-kpi-monitor:5.2.0",
"cmii-uav-logger:5.2.0",
"cmii-uav-material-warehouse:5.2.0",
"cmii-uav-mission:5.2.0-25840",
"cmii-uav-mqtthandler:5.2.0-25340-1",
"cmii-uav-notice:5.2.0",
"cmii-uav-oauth:5.2.0",
"cmii-uav-process:5.2.0",
"cmii-uav-surveillance:5.2.0-21794",
"cmii-uav-threedsimulation:5.2.0",
"cmii-uav-tower:5.3.0",
"cmii-uav-user:5.2.0",
"cmii-uav-waypoint:5.2.0-011102",
"cmii-suav-platform-supervision:5.2.0",
"cmii-suav-platform-supervisionh5:5.2.0",
"cmii-uav-platform:5.2.0",
"cmii-uav-platform-ai-brain:5.2.0",
"cmii-uav-platform-armypeople:5.2.0-24538",
"cmii-uav-platform-base:5.2.0",
"cmii-uav-platform-cms-portal:5.2.0",
"cmii-uav-platform-detection:5.2.0",
"cmii-uav-platform-emergency-rescue:5.2.0",
"cmii-uav-platform-hljtt:5.2.0",
"cmii-uav-platform-jiangsuwenlv:4.1.3-jiangsu-0427",
"cmii-uav-platform-logistics:5.2.0",
"cmii-uav-platform-media:5.2.0",
"cmii-uav-platform-multiterminal:5.2.0",
"cmii-uav-platform-mws:5.2.0",
"cmii-uav-platform-oms:5.2.0",
"cmii-uav-platform-open:5.2.0",
"cmii-uav-platform-qingdao:4.1.6-24238-qingdao",
"cmii-uav-platform-qinghaitourism:4.1.0-21377-0508",
"cmii-uav-platform-security:4.1.6",
"cmii-uav-platform-securityh5:5.2.0",
"cmii-uav-platform-seniclive:5.2.0",
"cmii-uav-platform-share:5.2.0",
"cmii-uav-platform-splice:5.2.0",
"cmii-uav-platform-threedsimulation:5.2.0-21392",
"cmii-uav-platform-visualization:5.2.0",
}
var Cmii520DemoImageList = []string{
"cmii-admin-data:5.2.0",
"cmii-admin-gateway:5.2.0",
"cmii-admin-user:5.2.0",
"cmii-app-release:4.2.0-validation",
"cmii-open-gateway:5.2.0",
"cmii-suav-supervision:5.2.0",
"cmii-uav-airspace:5.2.0",
"cmii-uav-alarm:5.2.0",
"cmii-uav-autowaypoint:4.1.6-cm-0828",
"cmii-uav-brain:5.2.0",
"cmii-uav-cloud-live:5.2.0",
"cmii-uav-clusters:5.2.0",
"cmii-uav-cms:5.2.0",
"cmii-uav-data-post-process:5.2.0",
"cmii-uav-depotautoreturn:4.2.0",
"cmii-uav-developer:5.2.0-25858",
"cmii-uav-device:5.2.0",
"cmii-uav-emergency:5.2.0",
"cmii-uav-gateway:5.2.0",
"cmii-uav-gis-server:5.2.0",
"cmii-uav-grid-datasource:5.2.0-24810",
"cmii-uav-grid-engine:5.1.0",
"cmii-uav-grid-manage:5.1.0",
"cmii-uav-industrial-portfolio:5.2.0-25268-12",
"cmii-uav-integration:5.2.0-25447",
"cmii-uav-kpi-monitor:5.2.0",
"cmii-uav-logger:5.2.0",
"cmii-uav-material-warehouse:5.2.0",
"cmii-uav-mission:5.2.0-25840",
"cmii-uav-mqtthandler:5.2.0-25340-1",
"cmii-uav-notice:5.2.0",
"cmii-uav-oauth:5.2.0",
"cmii-uav-process:5.2.0",
"cmii-uav-surveillance:5.2.0-21794",
"cmii-uav-threedsimulation:5.2.0",
"cmii-uav-tower:5.3.0",
"cmii-uav-user:5.2.0",
"cmii-uav-waypoint:5.2.0-011102",
"cmii-suav-platform-supervision:5.2.0",
"cmii-suav-platform-supervisionh5:5.2.0",
"cmii-uav-platform:5.2.0",
"cmii-uav-platform-ai-brain:5.2.0",
"cmii-uav-platform-armypeople:5.2.0-24538",
"cmii-uav-platform-base:5.2.0",
"cmii-uav-platform-cms-portal:5.2.0",
"cmii-uav-platform-detection:5.2.0",
"cmii-uav-platform-emergency-rescue:5.2.0",
"cmii-uav-platform-hljtt:5.2.0",
"cmii-uav-platform-jiangsuwenlv:4.1.3-jiangsu-0427",
"cmii-uav-platform-logistics:5.2.0",
"cmii-uav-platform-media:5.2.0",
"cmii-uav-platform-multiterminal:5.2.0",
"cmii-uav-platform-mws:5.2.0",
"cmii-uav-platform-oms:5.2.0",
"cmii-uav-platform-open:5.2.0",
"cmii-uav-platform-qingdao:4.1.6-24238-qingdao",
"cmii-uav-platform-qinghaitourism:4.1.0-21377-0508",
"cmii-uav-platform-security:4.1.6",
"cmii-uav-platform-securityh5:5.2.0",
"cmii-uav-platform-seniclive:5.2.0",
"cmii-uav-platform-share:5.2.0",
"cmii-uav-platform-splice:5.2.0",
"cmii-uav-platform-threedsimulation:5.2.0-21392",
"cmii-uav-platform-visualization:5.2.0",
}

View File

@@ -6,21 +6,20 @@ import (
"encoding/json"
"errors"
"fmt"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/client"
"github.com/klauspost/pgzip"
"io"
"io/fs"
"os"
"regexp"
"strconv"
"strings"
"wdd.io/agent-operator/config"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/client"
"github.com/klauspost/pgzip"
image2 "wdd.io/agent-common/image"
"wdd.io/agent-common/logger"
"wdd.io/agent-common/utils"
"wdd.io/agent-deploy/d_app"
)
var apiClient = newClient()
@@ -554,17 +553,17 @@ func GenerateCmiiTagVersionImageMap(specificTag string) (backendMap, frontendMap
}
backendMap = make(map[string]string, len(config.CmiiBackendAppMap))
frontendMap = make(map[string]string, len(config.CmiiFrontendAppMap))
srsMap = make(map[string]string, len(config.CmiiSrsAppMap))
backendMap = make(map[string]string, len(d_app.CmiiBackendAppMap))
frontendMap = make(map[string]string, len(d_app.CmiiFrontendAppMap))
srsMap = make(map[string]string, len(d_app.CmiiSrsAppMap))
for imageName, _ := range config.CmiiBackendAppMap {
for imageName, _ := range d_app.CmiiBackendAppMap {
backendMap[imageName] = specificTag
}
for imageName, _ := range config.CmiiFrontendAppMap {
for imageName, _ := range d_app.CmiiFrontendAppMap {
frontendMap[imageName] = specificTag
}
for imageName, imageTag := range config.CmiiSrsAppMap {
for imageName, imageTag := range d_app.CmiiSrsAppMap {
srsMap[imageName] = imageTag
}
@@ -595,13 +594,13 @@ func WriteDependencyImageToFile() {
middleFile := imageFilePrefix + "middle-image.txt"
_ = os.Remove(middleFile)
for _, image := range config.MiddlewareAmd64 {
for _, image := range d_app.MiddlewareAmd64 {
utils.AppendContentToFile(image+"\n", middleFile)
}
rkeFile := imageFilePrefix + "rke-image.txt"
_ = os.Remove(rkeFile)
for _, image := range config.Rancher1204Amd64 {
for _, image := range d_app.Rancher1204Amd64 {
utils.AppendContentToFile(image+"\n", rkeFile)
}
}

View File

@@ -8,7 +8,7 @@ import (
"wdd.io/agent-common/assert"
"wdd.io/agent-common/image"
"wdd.io/agent-common/utils"
"wdd.io/agent-operator/config"
"wdd.io/agent-deploy/d_app"
"wdd.io/agent-operator/real_project/zjjt"
)
@@ -129,7 +129,7 @@ func TestImageFullNameToGzipFileName(t *testing.T) {
"busybox",
}
test = append(test, config.MiddlewareAmd64...)
test = append(test, d_app.MiddlewareAmd64...)
for _, s := range test {
gzipFileName := image.ImageFullNameToGzipFileName(s)

View File

@@ -62,3 +62,4 @@
2024-06-14-17-45-15 uavcloud-demo cmii-uas-lifecycle 5.6.0-061401 5.6.0
2024-06-14-17-47-17 uavcloud-demo cmii-uav-industrial-portfolio 5.6.0-061303 5.6.0-061401
2024-06-14-17-49-53 uavcloud-demo cmii-uas-lifecycle 5.6.0 5.6.0-061401
2024-06-18-09-13-18 uavcloud-demo cmii-uav-industrial-portfolio 5.6.0-061602 5.6.0-061801