diff --git a/agent-go/a_init/BastionInitializaion.go b/agent-go/a_init/BastionInitializaion.go index dda49e2..d40ca91 100644 --- a/agent-go/a_init/BastionInitializaion.go +++ b/agent-go/a_init/BastionInitializaion.go @@ -1,15 +1,34 @@ package a_init import ( + "bufio" + "fmt" + "os" + "strings" "wdd.io/agent-go/a_agent" - "wdd.io/agent-go/a_executor" - "wdd.io/agent-go/a_status" ) +/* + 完全离线模式 + 交互模式 手动运行 接受输入并且执行指令 类似于cli + + 1. 环境信息检测打印输出 + + 2. 接受用户输入 执行指令 + + 3. 功能 + 3.1 安装docker + 3.2 安装docker-compose + 3.3 安装minio + 3.4 安装rabbitmq + 3.5 安装kubernetes +*/ + +// BastionModeInit 堡垒机模式 完全离线模式 func BastionModeInit() { // Build For Operator - agentServerInfo := &a_agent.AgentServerInfo{ + _ = &a_agent.AgentServerInfo{ ServerName: "BastionSingle", ServerIPPbV4: "127.0.0.1", ServerIPInV4: "127.0.0.1", @@ -40,16 +59,36 @@ func BastionModeInit() { } // re-get agentInfo from status module - agentInfo := a_status.ReportAgentInfo() - refreshAgentInfoByStatusInfo(agentInfo, agentServerInfo) - buildAgentOsOperator(agentInfo, agentServerInfo) + //agentInfo := a_status.ReportAgentInfo() + //refreshAgentInfoByStatusInfo(agentInfo, agentServerInfo) + //buildAgentOsOperator(agentInfo, agentServerInfo) // install docker - agentOsOperator := a_executor.AgentOsOperatorCache + //agentOsOperator := a_executor.AgentOsOperatorCache // boot up minio & rabbitmq - agentOsOperator.InstallDockerFromLocalExec(nil) - agentOsOperator.InstallDockerComposeFromLocalExec() + //agentOsOperator.InstallDockerFromLocalExec(nil) + //agentOsOperator.InstallDockerComposeFromLocalExec() // build for socks server + reader := bufio.NewReader(os.Stdin) + + for { + fmt.Print("> ") + text, _ := reader.ReadString('\n') + text = strings.TrimSpace(text) + + if text == "quit" { + break + } else if text == "help" { + fmt.Println("Available commands:") + fmt.Println("- help: show this help message") + fmt.Println("- quit: exit the program") + fmt.Println("- [command name]: execute a command") + } else { + // Execute the command + fmt.Println("Executing command:", text) + } + } + } diff --git a/agent-go/main.go b/agent-go/main.go index dfcfd2c..6aaf573 100644 --- a/agent-go/main.go +++ b/agent-go/main.go @@ -21,7 +21,10 @@ func main() { flag.Parse() if mode == "bastion" { + // 堡垒机模式 + // 初始化堡垒机模式 a_init.BastionModeInit() + flag.StringVar(&agentServerInfoConfFile, "agentServerInfoConfFile", "", "agent server info conf file") return } diff --git a/agent-go/tmp/test.go b/agent-go/tmp/test.go index 605d2d8..e8898c6 100644 --- a/agent-go/tmp/test.go +++ b/agent-go/tmp/test.go @@ -2,75 +2,9 @@ package main import ( "fmt" - "io" - "net/http" - "net/url" - "os" "strings" ) -func BasicDownloadFileHTTP(downloadUrl string, proxyUrl string, proxyUser string, proxyPass string, desFile string) (downloadOk bool, resultLog []string) { - // 解析下载URL - _, err := url.Parse(downloadUrl) - if err != nil { - resultLog = append(resultLog, "Error parsing download URL: "+err.Error()) - return false, resultLog - } - - // 创建文件 - out, err := os.Create(desFile) - if err != nil { - resultLog = append(resultLog, "Error creating file: "+err.Error()) - return false, resultLog - } - defer out.Close() - - // 创建HTTP客户端 - client := &http.Client{} - - // 如果提供了代理URL - if proxyUrl != "" { - // 解析代理URL - proxyURL, err := url.Parse(proxyUrl) - if err != nil { - resultLog = append(resultLog, "Error parsing proxy URL: "+err.Error()) - return false, resultLog - } - - // 设置HTTP代理 - transport := &http.Transport{ - Proxy: func(req *http.Request) (*url.URL, error) { - req.SetBasicAuth(proxyUser, proxyPass) - return proxyURL, nil - }, - } - client.Transport = transport - } - - // 发送HTTP GET请求 - resp, err := client.Get(downloadUrl) - if err != nil { - resultLog = append(resultLog, "Error making GET request: "+err.Error()) - return false, resultLog - } - defer resp.Body.Close() - - // 检查HTTP响应状态码 - if resp.StatusCode != http.StatusOK { - resultLog = append(resultLog, "Server returned HTTP status "+resp.Status) - return false, resultLog - } - - // 将HTTP响应内容写入文件 - _, err = io.Copy(out, resp.Body) - if err != nil { - resultLog = append(resultLog, "Error writing to file: "+err.Error()) - return false, resultLog - } - - return true, resultLog -} - func splitTest() { bucketName := "123" @@ -93,20 +27,4 @@ func main() { splitTest() - //socksProxyUrl := "socks5://192.168.35.71:22888" - //httpProxyUrl := "http://192.168.35.71:22808" - //downloadOk, resultLog := BasicDownloadFileHTTP( - // "https://happybirthday.107421.xyz/octopus-agent/octopus-agent_linux_amd64_2024-03-29-17-47-14", - // httpProxyUrl, - // "zeaslity", - // "password", - // "octopus-agent_linux_1232", - //) - //if downloadOk { - // println("File downloaded successfully") - //} else { - // for _, log := range resultLog { - // println(log) - // } - //} } diff --git a/server/src/test/java/io/wdd/server/func/TestImageSyncScheduler.java b/server/src/test/java/io/wdd/server/func/TestImageSyncScheduler.java index eacedd6..5277ca5 100644 --- a/server/src/test/java/io/wdd/server/func/TestImageSyncScheduler.java +++ b/server/src/test/java/io/wdd/server/func/TestImageSyncScheduler.java @@ -38,22 +38,21 @@ public class TestImageSyncScheduler { public void runImageSync() { ArrayList CmiiAppNameList = new ArrayList<>(List.of( - "cmii-uav-platform-armypeople:5.4.0-041201" +// "cmii-uav-platform-armypeople:5.4.0-041201" )); ArrayList ImageFullNameList = new ArrayList<>(List.of( // "harbor.cdcyy.com.cn/cmii/cmii-live-operator:5.2.0", // "harbor.cdcyy.com.cn/cmii/cmii/srs:v5.0.195" -// "harbor.cdcyy.com.cn/cmii/cmii-uav-industrial-portfolio:5.4.9-cqly-040901", -// "harbor.cdcyy.com.cn/cmii/cmii-uav-platform:5.3.0-cqly-040902" + "harbor.cdcyy.com.cn/cmii/cmii-uav-industrial-portfolio:5.54.0-cqly-041601" )); Boolean downloadAndCompressOnly = false; // String projectNamespace = "wdd"; // wdd -// String projectNamespace = "cqlyj"; // 重庆林业局 + String projectNamespace = "cqlyj"; // 重庆林业局 // String projectNamespace = "jlyd"; // 吉林移动 - String projectNamespace = "xmyd"; // 厦门移动 +// String projectNamespace = "xmyd"; // 厦门移动 // String innerWorkerAgentName = "Chengdu-amd64-65-lapwdd"; //wdd String innerWorkerAgentName = "Chengdu-amd64-71-3571gd"; //prod