[agent-go]-简化Agent 剔除Harbor K8s Image相关的内容
This commit is contained in:
@@ -1,346 +1,340 @@
|
||||
package a_executor
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"wdd.io/agent-common/image"
|
||||
)
|
||||
|
||||
var LocalGzipImageFolderPrefix = "/var/lib/docker/image_sync/"
|
||||
var DefaultSocks5ProxyUser = "zeaslity"
|
||||
var DefaultSocks5ProxyPass = "password"
|
||||
|
||||
func (op *AgentOsOperator) Sync(baseFuncName string, funcArgs ...string) (bool, []string) {
|
||||
resultOk := false
|
||||
var errorLog []string
|
||||
|
||||
switch baseFuncName {
|
||||
|
||||
case "DOWNLOAD_DOCKER_IMAGE":
|
||||
resultOk, errorLog = op.downloadDockerImage(funcArgs)
|
||||
break
|
||||
case "COMPRESS_IMAGE_TO_GZIP":
|
||||
resultOk, errorLog = op.compressImageToGzip(funcArgs)
|
||||
break
|
||||
case "UPLOAD_GZIP_TO_OSS":
|
||||
resultOk, errorLog = op.uploadGzipFileToOss(funcArgs)
|
||||
break
|
||||
case "DOWNLOAD_GZIP_IMAGE_FILE":
|
||||
resultOk, errorLog = op.downloadGzipImageFile(funcArgs)
|
||||
break
|
||||
case "LOAD_DOCKER_IMAGE_FROM_GZIP":
|
||||
resultOk, errorLog = op.loadDockerImageFromGzip(funcArgs)
|
||||
break
|
||||
case "PUSH_IMAGE_TO_TARGET_HARBOR":
|
||||
resultOk, errorLog = op.pushImageToTargetHarbor(funcArgs)
|
||||
break
|
||||
case "UPDATE_IMAGE_TAG":
|
||||
resultOk, errorLog = op.updateImageTag(funcArgs)
|
||||
break
|
||||
default:
|
||||
resultOk, errorLog = op.okExec(funcArgs)
|
||||
}
|
||||
|
||||
return resultOk, errorLog
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) downloadDockerImage(funcArgs []string) (bool, []string) {
|
||||
// funcArgs are imageFullName gzipFolderPrefix gzipFileName ossUrlPrefix namespace newImageTag
|
||||
|
||||
if !BasicCommandExistByPath("docker") {
|
||||
return false, []string{
|
||||
"docker not exits !",
|
||||
}
|
||||
}
|
||||
imageFullName := funcArgs[0]
|
||||
log.InfoF("[downloadDockerImage]- start to pull docker image %s", imageFullName)
|
||||
|
||||
// login
|
||||
if strings.HasPrefix(imageFullName, image.CmiiHarborPrefix) {
|
||||
HardCodeCommandExecutor("docker login -u rad02_drone -p Drone@1234 harbor.cdcyy.com.cn")
|
||||
}
|
||||
|
||||
if !PureResultSingleExecute([]string{
|
||||
"docker",
|
||||
"pull",
|
||||
imageFullName,
|
||||
}) {
|
||||
return false, []string{
|
||||
"docker pull failed of " + imageFullName,
|
||||
}
|
||||
}
|
||||
|
||||
if !BasicDockerImageExistByFullName(funcArgs[0]) {
|
||||
return false, []string{
|
||||
"image not exits ! unknown error happened!",
|
||||
}
|
||||
}
|
||||
return true, []string{
|
||||
imageFullName,
|
||||
}
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) compressImageToGzip(funcArgs []string) (bool, []string) {
|
||||
if !BasicCommandExistByPath("docker") {
|
||||
return false, []string{
|
||||
"docker not exits !",
|
||||
}
|
||||
}
|
||||
if !BasicCommandExistByPath("gzip") {
|
||||
return false, []string{
|
||||
"gzip not exits !",
|
||||
}
|
||||
}
|
||||
|
||||
gzipFolderPrefix := funcArgs[1]
|
||||
if !BasicFolderExists(gzipFolderPrefix) {
|
||||
BasicCreateFolder(gzipFolderPrefix)
|
||||
}
|
||||
|
||||
imageFullName := funcArgs[0]
|
||||
if !BasicDockerImageExistByFullName(imageFullName) {
|
||||
return false, []string{
|
||||
"image not exits !",
|
||||
}
|
||||
}
|
||||
|
||||
if !strings.HasSuffix(gzipFolderPrefix, "/") {
|
||||
gzipFolderPrefix += "/"
|
||||
}
|
||||
|
||||
gzipImageFromFullName := image.ImageFullNameToGzipFileName(imageFullName)
|
||||
dockerSaveCommand := "docker save " + imageFullName + " | gzip > " + gzipFolderPrefix + gzipImageFromFullName
|
||||
|
||||
executor, i := HardCodeCommandExecutor(dockerSaveCommand)
|
||||
if !executor {
|
||||
return false, i
|
||||
}
|
||||
|
||||
if !BasicFileExistAndNotNull(gzipFolderPrefix + gzipImageFromFullName) {
|
||||
return false, []string{
|
||||
"gzip of ile error ",
|
||||
}
|
||||
}
|
||||
|
||||
return true, []string{
|
||||
gzipImageFromFullName,
|
||||
}
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) uploadGzipFileToOss(funcArgs []string) (bool, []string) {
|
||||
|
||||
if !BasicCommandExistByPath("mc") {
|
||||
return false, []string{
|
||||
"mc not exits!",
|
||||
}
|
||||
}
|
||||
|
||||
gzipFolderPrefix := funcArgs[1]
|
||||
gzipImageFromFullName := funcArgs[2]
|
||||
|
||||
ok, resultLog := HardCodeCommandExecutor("mc --insecure alias set demo https://oss.ig-demo.uavcmlc.com cmii B#923fC7mk")
|
||||
//ok, resultLog = HardCodeCommandExecutor("mc alias list")
|
||||
|
||||
PureResultSingleExecute([]string{
|
||||
"mc",
|
||||
"rm",
|
||||
"demo/cmlc-installation/tmp/" + gzipImageFromFullName,
|
||||
})
|
||||
|
||||
ok, resultLog = AllCommandExecutor([]string{
|
||||
"mc",
|
||||
"cp",
|
||||
gzipFolderPrefix + gzipImageFromFullName,
|
||||
"demo/cmlc-installation/tmp/" + gzipImageFromFullName,
|
||||
})
|
||||
if !ok {
|
||||
return false, resultLog
|
||||
}
|
||||
|
||||
find, _ := BasicFindContentInCommandOutput("mc ls demo/cmlc-installation/tmp/", gzipImageFromFullName)
|
||||
if !find {
|
||||
return false, []string{
|
||||
"demo oss can't find gzip file !",
|
||||
}
|
||||
}
|
||||
|
||||
return true, []string{
|
||||
gzipImageFromFullName,
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) downloadGzipImageFile(funcArgs []string) (bool, []string) {
|
||||
|
||||
ossUrlPrefix := funcArgs[3]
|
||||
gzipImageFromFullName := funcArgs[2]
|
||||
proxyUrl := funcArgs[4]
|
||||
|
||||
// create folder
|
||||
BasicCreateFolder(LocalGzipImageFolderPrefix)
|
||||
|
||||
// remove file
|
||||
desFile := LocalGzipImageFolderPrefix + gzipImageFromFullName
|
||||
|
||||
if !BasicRemoveFileOrFolder(desFile) {
|
||||
return false, []string{
|
||||
"file already exits ! can't remove it!",
|
||||
}
|
||||
}
|
||||
|
||||
//var download bool
|
||||
//var downloadLog []string
|
||||
//if proxyUrl == "" {
|
||||
// download, downloadLog = BasicDownloadFileByCurl(ossUrlPrefix+gzipImageFromFullName, desFile)
|
||||
//} else {
|
||||
// = BasicDownloadFileWithProxy(ossUrlPrefix+gzipImageFromFullName, proxyUrl, desFile)
|
||||
//}
|
||||
|
||||
download, downloadLog := BasicDownloadFile(ossUrlPrefix+gzipImageFromFullName, proxyUrl, DefaultSocks5ProxyUser, DefaultSocks5ProxyPass, desFile)
|
||||
if !download {
|
||||
return false, downloadLog
|
||||
}
|
||||
|
||||
return true, []string{
|
||||
desFile,
|
||||
}
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) loadDockerImageFromGzip(funcArgs []string) (bool, []string) {
|
||||
gzipImageFromFullName := funcArgs[2]
|
||||
|
||||
if !BasicFileExistAndNotNull(LocalGzipImageFolderPrefix + gzipImageFromFullName) {
|
||||
return false, []string{
|
||||
LocalGzipImageFolderPrefix + gzipImageFromFullName,
|
||||
"local gzip file not exits!",
|
||||
}
|
||||
}
|
||||
|
||||
hardCodeCommand := "docker load < " + LocalGzipImageFolderPrefix + gzipImageFromFullName
|
||||
executor, i := HardCodeCommandExecutor(hardCodeCommand)
|
||||
if !executor {
|
||||
return false, i
|
||||
}
|
||||
|
||||
if !BasicDockerImageExistByFullName(funcArgs[0]) {
|
||||
return false, []string{
|
||||
"docker load from gzip file error ! image not exits!",
|
||||
funcArgs[0],
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
func (op *AgentOsOperator) pushImageToTargetHarbor(funcArgs []string) (bool, []string) {
|
||||
|
||||
targetHarborHost := funcArgs[5]
|
||||
imageFullName := funcArgs[0]
|
||||
|
||||
if !strings.Contains(targetHarborHost, "8033") {
|
||||
targetHarborHost += ":8033"
|
||||
}
|
||||
|
||||
targetImageFullName := image.ImageNameToTargetImageFullName(imageFullName, targetHarborHost)
|
||||
|
||||
if !PureResultSingleExecute([]string{
|
||||
"docker",
|
||||
"tag",
|
||||
imageFullName,
|
||||
targetImageFullName,
|
||||
}) {
|
||||
return false, []string{
|
||||
"docker tag error!",
|
||||
}
|
||||
}
|
||||
if strings.HasPrefix(targetImageFullName, image.CmiiHarborPrefix) {
|
||||
HardCodeCommandExecutor("docker login -u rad02_drone -p Drone@1234 harbor.cdcyy.com.cn")
|
||||
} else {
|
||||
HardCodeCommandExecutor("docker login -u admin -p V2ryStr@ngPss " + targetHarborHost)
|
||||
}
|
||||
|
||||
ok, resultLog := AllCommandExecutor([]string{
|
||||
"docker",
|
||||
"push",
|
||||
targetImageFullName,
|
||||
})
|
||||
if !ok {
|
||||
return false, resultLog
|
||||
}
|
||||
|
||||
return true, []string{
|
||||
targetImageFullName,
|
||||
}
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) updateImageTag(funcArgs []string) (bool, []string) {
|
||||
namespace := funcArgs[6]
|
||||
imageFullName := funcArgs[0]
|
||||
if !strings.HasPrefix(imageFullName, image.CmiiHarborPrefix) {
|
||||
return false, []string{
|
||||
"cant update this image !",
|
||||
}
|
||||
}
|
||||
appName := image.ImageFullNameToAppName(imageFullName)
|
||||
newTag := image.ImageFullNameToImageTag(imageFullName)
|
||||
|
||||
sprintf := fmt.Sprintf("start to update [%s] image tag [%s] to [%s]", namespace, appName, newTag)
|
||||
log.Info(sprintf)
|
||||
|
||||
update, resultLog := K8sDeploymentUpdateTag(namespace, appName, newTag)
|
||||
if !update {
|
||||
return false, []string{
|
||||
sprintf,
|
||||
}
|
||||
}
|
||||
return true, []string{
|
||||
resultLog,
|
||||
}
|
||||
}
|
||||
|
||||
func (op *AgentOsOperator) updateImageTagByFile(funcArgs []string) (bool, []string) {
|
||||
namespace := funcArgs[6]
|
||||
//targetImageFullName := funcArgs[7]
|
||||
proxyUrl := funcArgs[4]
|
||||
if !BasicCommandExistByPath("kubectl") {
|
||||
return false, []string{
|
||||
"kubectl not exits !",
|
||||
}
|
||||
}
|
||||
imageFullName := funcArgs[0]
|
||||
if !strings.HasPrefix(imageFullName, image.CmiiHarborPrefix) {
|
||||
return false, []string{
|
||||
"cant update this image !",
|
||||
}
|
||||
}
|
||||
appName := image.ImageFullNameToAppName(imageFullName)
|
||||
|
||||
// 2024年4月7日 修改为 exec file的模式
|
||||
folderPrefix := "/root/wdd/update/"
|
||||
BasicCreateFolder(folderPrefix)
|
||||
|
||||
updateFileName := "update-app-tag.sh"
|
||||
if !BasicFileExistAndNotNull(folderPrefix + updateFileName) {
|
||||
// kubectl update tag file not exits!
|
||||
download, downloadLog := BasicDownloadFile(AgentOsOperatorCache.OssOfflinePrefix+updateFileName, proxyUrl, DefaultSocks5ProxyUser, DefaultSocks5ProxyPass, folderPrefix+updateFileName)
|
||||
|
||||
if !download {
|
||||
return false, downloadLog
|
||||
}
|
||||
}
|
||||
|
||||
PureResultSingleExecute([]string{
|
||||
"chomd",
|
||||
"+x",
|
||||
folderPrefix + updateFileName,
|
||||
})
|
||||
|
||||
newTag := image.ImageFullNameToImageTag(imageFullName)
|
||||
log.InfoF("start do update %s %s to %s", namespace, appName, newTag)
|
||||
updateCommand := "bash " + folderPrefix + updateFileName + namespace + appName + newTag
|
||||
executor, i := HardCodeCommandExecutor(updateCommand)
|
||||
if !executor {
|
||||
return false, i
|
||||
}
|
||||
|
||||
return true, i
|
||||
}
|
||||
//var LocalGzipImageFolderPrefix = "/var/lib/docker/image_sync/"
|
||||
//var DefaultSocks5ProxyUser = "zeaslity"
|
||||
//var DefaultSocks5ProxyPass = "password"
|
||||
//
|
||||
//func (op *AgentOsOperator) Sync(baseFuncName string, funcArgs ...string) (bool, []string) {
|
||||
// resultOk := false
|
||||
// var errorLog []string
|
||||
//
|
||||
// switch baseFuncName {
|
||||
//
|
||||
// case "DOWNLOAD_DOCKER_IMAGE":
|
||||
// resultOk, errorLog = op.downloadDockerImage(funcArgs)
|
||||
// break
|
||||
// case "COMPRESS_IMAGE_TO_GZIP":
|
||||
// resultOk, errorLog = op.compressImageToGzip(funcArgs)
|
||||
// break
|
||||
// case "UPLOAD_GZIP_TO_OSS":
|
||||
// resultOk, errorLog = op.uploadGzipFileToOss(funcArgs)
|
||||
// break
|
||||
// case "DOWNLOAD_GZIP_IMAGE_FILE":
|
||||
// resultOk, errorLog = op.downloadGzipImageFile(funcArgs)
|
||||
// break
|
||||
// case "LOAD_DOCKER_IMAGE_FROM_GZIP":
|
||||
// resultOk, errorLog = op.loadDockerImageFromGzip(funcArgs)
|
||||
// break
|
||||
// case "PUSH_IMAGE_TO_TARGET_HARBOR":
|
||||
// resultOk, errorLog = op.pushImageToTargetHarbor(funcArgs)
|
||||
// break
|
||||
// case "UPDATE_IMAGE_TAG":
|
||||
// resultOk, errorLog = op.updateImageTag(funcArgs)
|
||||
// break
|
||||
// default:
|
||||
// resultOk, errorLog = op.okExec(funcArgs)
|
||||
// }
|
||||
//
|
||||
// return resultOk, errorLog
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) downloadDockerImage(funcArgs []string) (bool, []string) {
|
||||
// // funcArgs are imageFullName gzipFolderPrefix gzipFileName ossUrlPrefix namespace newImageTag
|
||||
//
|
||||
// if !BasicCommandExistByPath("docker") {
|
||||
// return false, []string{
|
||||
// "docker not exits !",
|
||||
// }
|
||||
// }
|
||||
// imageFullName := funcArgs[0]
|
||||
// log.InfoF("[downloadDockerImage]- start to pull docker image %s", imageFullName)
|
||||
//
|
||||
// // login
|
||||
// if strings.HasPrefix(imageFullName, image.CmiiHarborPrefix) {
|
||||
// HardCodeCommandExecutor("docker login -u rad02_drone -p Drone@1234 harbor.cdcyy.com.cn")
|
||||
// }
|
||||
//
|
||||
// if !PureResultSingleExecute([]string{
|
||||
// "docker",
|
||||
// "pull",
|
||||
// imageFullName,
|
||||
// }) {
|
||||
// return false, []string{
|
||||
// "docker pull failed of " + imageFullName,
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// if !BasicDockerImageExistByFullName(funcArgs[0]) {
|
||||
// return false, []string{
|
||||
// "image not exits ! unknown error happened!",
|
||||
// }
|
||||
// }
|
||||
// return true, []string{
|
||||
// imageFullName,
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) compressImageToGzip(funcArgs []string) (bool, []string) {
|
||||
// if !BasicCommandExistByPath("docker") {
|
||||
// return false, []string{
|
||||
// "docker not exits !",
|
||||
// }
|
||||
// }
|
||||
// if !BasicCommandExistByPath("gzip") {
|
||||
// return false, []string{
|
||||
// "gzip not exits !",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// gzipFolderPrefix := funcArgs[1]
|
||||
// if !BasicFolderExists(gzipFolderPrefix) {
|
||||
// BasicCreateFolder(gzipFolderPrefix)
|
||||
// }
|
||||
//
|
||||
// imageFullName := funcArgs[0]
|
||||
// if !BasicDockerImageExistByFullName(imageFullName) {
|
||||
// return false, []string{
|
||||
// "image not exits !",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// if !strings.HasSuffix(gzipFolderPrefix, "/") {
|
||||
// gzipFolderPrefix += "/"
|
||||
// }
|
||||
//
|
||||
// gzipImageFromFullName := image.ImageFullNameToGzipFileName(imageFullName)
|
||||
// dockerSaveCommand := "docker save " + imageFullName + " | gzip > " + gzipFolderPrefix + gzipImageFromFullName
|
||||
//
|
||||
// executor, i := HardCodeCommandExecutor(dockerSaveCommand)
|
||||
// if !executor {
|
||||
// return false, i
|
||||
// }
|
||||
//
|
||||
// if !BasicFileExistAndNotNull(gzipFolderPrefix + gzipImageFromFullName) {
|
||||
// return false, []string{
|
||||
// "gzip of ile error ",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return true, []string{
|
||||
// gzipImageFromFullName,
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) uploadGzipFileToOss(funcArgs []string) (bool, []string) {
|
||||
//
|
||||
// if !BasicCommandExistByPath("mc") {
|
||||
// return false, []string{
|
||||
// "mc not exits!",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// gzipFolderPrefix := funcArgs[1]
|
||||
// gzipImageFromFullName := funcArgs[2]
|
||||
//
|
||||
// ok, resultLog := HardCodeCommandExecutor("mc --insecure alias set demo https://oss.ig-demo.uavcmlc.com cmii B#923fC7mk")
|
||||
// //ok, resultLog = HardCodeCommandExecutor("mc alias list")
|
||||
//
|
||||
// PureResultSingleExecute([]string{
|
||||
// "mc",
|
||||
// "rm",
|
||||
// "demo/cmlc-installation/tmp/" + gzipImageFromFullName,
|
||||
// })
|
||||
//
|
||||
// ok, resultLog = AllCommandExecutor([]string{
|
||||
// "mc",
|
||||
// "cp",
|
||||
// gzipFolderPrefix + gzipImageFromFullName,
|
||||
// "demo/cmlc-installation/tmp/" + gzipImageFromFullName,
|
||||
// })
|
||||
// if !ok {
|
||||
// return false, resultLog
|
||||
// }
|
||||
//
|
||||
// find, _ := BasicFindContentInCommandOutput("mc ls demo/cmlc-installation/tmp/", gzipImageFromFullName)
|
||||
// if !find {
|
||||
// return false, []string{
|
||||
// "demo oss can't find gzip file !",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return true, []string{
|
||||
// gzipImageFromFullName,
|
||||
// }
|
||||
//
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) downloadGzipImageFile(funcArgs []string) (bool, []string) {
|
||||
//
|
||||
// ossUrlPrefix := funcArgs[3]
|
||||
// gzipImageFromFullName := funcArgs[2]
|
||||
// proxyUrl := funcArgs[4]
|
||||
//
|
||||
// // create folder
|
||||
// BasicCreateFolder(LocalGzipImageFolderPrefix)
|
||||
//
|
||||
// // remove file
|
||||
// desFile := LocalGzipImageFolderPrefix + gzipImageFromFullName
|
||||
//
|
||||
// if !BasicRemoveFileOrFolder(desFile) {
|
||||
// return false, []string{
|
||||
// "file already exits ! can't remove it!",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// //var download bool
|
||||
// //var downloadLog []string
|
||||
// //if proxyUrl == "" {
|
||||
// // download, downloadLog = BasicDownloadFileByCurl(ossUrlPrefix+gzipImageFromFullName, desFile)
|
||||
// //} else {
|
||||
// // = BasicDownloadFileWithProxy(ossUrlPrefix+gzipImageFromFullName, proxyUrl, desFile)
|
||||
// //}
|
||||
//
|
||||
// download, downloadLog := BasicDownloadFile(ossUrlPrefix+gzipImageFromFullName, proxyUrl, DefaultSocks5ProxyUser, DefaultSocks5ProxyPass, desFile)
|
||||
// if !download {
|
||||
// return false, downloadLog
|
||||
// }
|
||||
//
|
||||
// return true, []string{
|
||||
// desFile,
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) loadDockerImageFromGzip(funcArgs []string) (bool, []string) {
|
||||
// gzipImageFromFullName := funcArgs[2]
|
||||
//
|
||||
// if !BasicFileExistAndNotNull(LocalGzipImageFolderPrefix + gzipImageFromFullName) {
|
||||
// return false, []string{
|
||||
// LocalGzipImageFolderPrefix + gzipImageFromFullName,
|
||||
// "local gzip file not exits!",
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// hardCodeCommand := "docker load < " + LocalGzipImageFolderPrefix + gzipImageFromFullName
|
||||
// executor, i := HardCodeCommandExecutor(hardCodeCommand)
|
||||
// if !executor {
|
||||
// return false, i
|
||||
// }
|
||||
//
|
||||
// if !BasicDockerImageExistByFullName(funcArgs[0]) {
|
||||
// return false, []string{
|
||||
// "docker load from gzip file error ! image not exits!",
|
||||
// funcArgs[0],
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return true, nil
|
||||
//}
|
||||
//func (op *AgentOsOperator) pushImageToTargetHarbor(funcArgs []string) (bool, []string) {
|
||||
//
|
||||
// targetHarborHost := funcArgs[5]
|
||||
// imageFullName := funcArgs[0]
|
||||
//
|
||||
// if !strings.Contains(targetHarborHost, "8033") {
|
||||
// targetHarborHost += ":8033"
|
||||
// }
|
||||
//
|
||||
// targetImageFullName := image.ImageNameToTargetImageFullName(imageFullName, targetHarborHost)
|
||||
//
|
||||
// if !PureResultSingleExecute([]string{
|
||||
// "docker",
|
||||
// "tag",
|
||||
// imageFullName,
|
||||
// targetImageFullName,
|
||||
// }) {
|
||||
// return false, []string{
|
||||
// "docker tag error!",
|
||||
// }
|
||||
// }
|
||||
// if strings.HasPrefix(targetImageFullName, image.CmiiHarborPrefix) {
|
||||
// HardCodeCommandExecutor("docker login -u rad02_drone -p Drone@1234 harbor.cdcyy.com.cn")
|
||||
// } else {
|
||||
// HardCodeCommandExecutor("docker login -u admin -p V2ryStr@ngPss " + targetHarborHost)
|
||||
// }
|
||||
//
|
||||
// ok, resultLog := AllCommandExecutor([]string{
|
||||
// "docker",
|
||||
// "push",
|
||||
// targetImageFullName,
|
||||
// })
|
||||
// if !ok {
|
||||
// return false, resultLog
|
||||
// }
|
||||
//
|
||||
// return true, []string{
|
||||
// targetImageFullName,
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) updateImageTag(funcArgs []string) (bool, []string) {
|
||||
// namespace := funcArgs[6]
|
||||
// imageFullName := funcArgs[0]
|
||||
// if !strings.HasPrefix(imageFullName, image.CmiiHarborPrefix) {
|
||||
// return false, []string{
|
||||
// "cant update this image !",
|
||||
// }
|
||||
// }
|
||||
// appName := image.ImageFullNameToAppName(imageFullName)
|
||||
// newTag := image.ImageFullNameToImageTag(imageFullName)
|
||||
//
|
||||
// sprintf := fmt.Sprintf("start to update [%s] image tag [%s] to [%s]", namespace, appName, newTag)
|
||||
// log.Info(sprintf)
|
||||
//
|
||||
// update, resultLog := K8sDeploymentUpdateTag(namespace, appName, newTag)
|
||||
// if !update {
|
||||
// return false, []string{
|
||||
// sprintf,
|
||||
// }
|
||||
// }
|
||||
// return true, []string{
|
||||
// resultLog,
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//func (op *AgentOsOperator) updateImageTagByFile(funcArgs []string) (bool, []string) {
|
||||
// namespace := funcArgs[6]
|
||||
// //targetImageFullName := funcArgs[7]
|
||||
// proxyUrl := funcArgs[4]
|
||||
// if !BasicCommandExistByPath("kubectl") {
|
||||
// return false, []string{
|
||||
// "kubectl not exits !",
|
||||
// }
|
||||
// }
|
||||
// imageFullName := funcArgs[0]
|
||||
// if !strings.HasPrefix(imageFullName, image.CmiiHarborPrefix) {
|
||||
// return false, []string{
|
||||
// "cant update this image !",
|
||||
// }
|
||||
// }
|
||||
// appName := image.ImageFullNameToAppName(imageFullName)
|
||||
//
|
||||
// // 2024年4月7日 修改为 exec file的模式
|
||||
// folderPrefix := "/root/wdd/update/"
|
||||
// BasicCreateFolder(folderPrefix)
|
||||
//
|
||||
// updateFileName := "update-app-tag.sh"
|
||||
// if !BasicFileExistAndNotNull(folderPrefix + updateFileName) {
|
||||
// // kubectl update tag file not exits!
|
||||
// download, downloadLog := BasicDownloadFile(AgentOsOperatorCache.OssOfflinePrefix+updateFileName, proxyUrl, DefaultSocks5ProxyUser, DefaultSocks5ProxyPass, folderPrefix+updateFileName)
|
||||
//
|
||||
// if !download {
|
||||
// return false, downloadLog
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// PureResultSingleExecute([]string{
|
||||
// "chomd",
|
||||
// "+x",
|
||||
// folderPrefix + updateFileName,
|
||||
// })
|
||||
//
|
||||
// newTag := image.ImageFullNameToImageTag(imageFullName)
|
||||
// log.InfoF("start do update %s %s to %s", namespace, appName, newTag)
|
||||
// updateCommand := "bash " + folderPrefix + updateFileName + namespace + appName + newTag
|
||||
// executor, i := HardCodeCommandExecutor(updateCommand)
|
||||
// if !executor {
|
||||
// return false, i
|
||||
// }
|
||||
//
|
||||
// return true, i
|
||||
//}
|
||||
|
||||
Reference in New Issue
Block a user