Sfoglia il codice sorgente

test: gart多功能车

HeWang 2 mesi fa
parent
commit
2954163825

+ 23 - 0
aarch64/jili/Gart-test-local-config.yaml

@@ -0,0 +1,23 @@
+# 是否联通互联网
+internet: true
+# 节点名称和IP
+node:
+  name: node1
+  ip: 192.168.1.102
+# 数据闭环平台参数
+equipment-no: Gart
+secret-key: gart
+# 获取oss连接信息的接口url
+url-get-oss-config: http://36.110.106.156:18379/oss/config?token=nXonLUcMtGcrQqqKiyygIwyVbvizE0wD
+# 数据前缀
+oss-base-prefix: jili/
+# oss上的配置文件的名称
+cloud-config-filename: cloud-config.yaml
+# 将oss上的配置文件下载到本地的路径
+#cloud-config-local-path: /mnt/media/sda1/cicv-data-closedloop/config/cloud-config.yaml
+cloud-config-local-path: D:\Project\cicv_data_closed_loop\aarch64\jili\多功能车-cloud-config.yaml
+restart-cmd:
+  dir: "/mnt/media/sda1/cicv-data-closedloop/"
+  name: "sh"
+  args:
+    - "start-soc1.sh"

+ 53 - 53
aarch64/jili/common/config/c_cloud.go

@@ -83,63 +83,63 @@ func InitCloudConfig() {
 	var err error
 
 	// todo 测试时不从网上拉取配置文件,编译时需修改好下面内容
-	//if LocalConfig.Internet {
-	//	c_log.GlobalLogger.Info("车辆可以访问互联网。")
-	//	// 获取文件的目录
-	//	_ = util.CreateParentDir(LocalConfig.CloudConfigLocalPath)
-	//	// 3 ------- 获取 yaml 字符串 -------
-	//	cloudConfigObjectKey := LocalConfig.OssBasePrefix + LocalConfig.EquipmentNo + "/" + LocalConfig.CloudConfigFilename
-	//	// todo 等待时间同步
-	//	// 判断文件是否存在。如果不存在则使用默认的
-	//	isExist, err := OssBucket.IsObjectExist(cloudConfigObjectKey)
-	//	if err != nil {
-	//		c_log.GlobalLogger.Errorf("判断配置文件是否存在失败,错误信息为:%v", err)
-	//	}
-	//	if isExist {
-	//		c_log.GlobalLogger.Info("使用机器人自定义配置文件:", cloudConfigObjectKey)
-	//	} else {
-	//		cloudConfigObjectKey = LocalConfig.OssBasePrefix + LocalConfig.CloudConfigFilename // 默认配置文件路径
-	//		c_log.GlobalLogger.Info("使用默认配置文件:", cloudConfigObjectKey)
-	//	}
-	//	for {
-	//		OssMutex.Lock()
-	//		err := OssBucket.GetObjectToFile(cloudConfigObjectKey, LocalConfig.CloudConfigLocalPath)
-	//		OssMutex.Unlock()
-	//		if err != nil {
-	//			c_log.GlobalLogger.Error("下载oss上的配置文件 "+cloudConfigObjectKey+" 失败。网络授时未完成或者未配置阿里云网络映射到/etc/hosts:", err)
-	//			time.Sleep(time.Duration(2) * time.Second)
-	//			continue
-	//		}
-	//		break
-	//	}
-	//	if CloudConfig.RefreshCloudConfig {
-	//		go RefreshCloudConfig()
-	//	}
-	//} else {
-	//	c_log.GlobalLogger.Infof("车辆不可以访问互联网,请提前将配置文件放到【%v】。", LocalConfig.CloudConfigLocalPath)
-	//	for {
-	//		time.Sleep(time.Duration(1) * time.Second)
-	//		if util.FileExists(LocalConfig.CloudConfigLocalPath) {
-	//			c_log.GlobalLogger.Infof("配置文件【%v】已准备好。", LocalConfig.CloudConfigLocalPath)
-	//			break
-	//		} else {
-	//			c_log.GlobalLogger.Infof("配置文件【%v】没有准备好。", LocalConfig.CloudConfigLocalPath)
-	//			continue
-	//		}
-	//	}
-	//}
-
-	for {
-		time.Sleep(time.Duration(1) * time.Second)
-		if util.FileExists(LocalConfig.CloudConfigLocalPath) {
-			c_log.GlobalLogger.Infof("配置文件【%v】已准备好。", LocalConfig.CloudConfigLocalPath)
-			break
+	if LocalConfig.Internet {
+		c_log.GlobalLogger.Info("车辆可以访问互联网。")
+		// 获取文件的目录
+		_ = util.CreateParentDir(LocalConfig.CloudConfigLocalPath)
+		// 3 ------- 获取 yaml 字符串 -------
+		cloudConfigObjectKey := LocalConfig.OssBasePrefix + LocalConfig.EquipmentNo + "/" + LocalConfig.CloudConfigFilename
+		// todo 等待时间同步
+		// 判断文件是否存在。如果不存在则使用默认的
+		isExist, err := OssBucket.IsObjectExist(cloudConfigObjectKey)
+		if err != nil {
+			c_log.GlobalLogger.Errorf("判断配置文件是否存在失败,错误信息为:%v", err)
+		}
+		if isExist {
+			c_log.GlobalLogger.Info("使用机器人自定义配置文件:", cloudConfigObjectKey)
 		} else {
-			c_log.GlobalLogger.Infof("配置文件【%v】没有准备好。", LocalConfig.CloudConfigLocalPath)
-			continue
+			cloudConfigObjectKey = LocalConfig.OssBasePrefix + LocalConfig.CloudConfigFilename // 默认配置文件路径
+			c_log.GlobalLogger.Info("使用默认配置文件:", cloudConfigObjectKey)
+		}
+		for {
+			OssMutex.Lock()
+			err := OssBucket.GetObjectToFile(cloudConfigObjectKey, LocalConfig.CloudConfigLocalPath)
+			OssMutex.Unlock()
+			if err != nil {
+				c_log.GlobalLogger.Error("下载oss上的配置文件 "+cloudConfigObjectKey+" 失败。网络授时未完成或者未配置阿里云网络映射到/etc/hosts:", err)
+				time.Sleep(time.Duration(2) * time.Second)
+				continue
+			}
+			break
+		}
+		if CloudConfig.RefreshCloudConfig {
+			go RefreshCloudConfig()
+		}
+	} else {
+		c_log.GlobalLogger.Infof("车辆不可以访问互联网,请提前将配置文件放到【%v】。", LocalConfig.CloudConfigLocalPath)
+		for {
+			time.Sleep(time.Duration(1) * time.Second)
+			if util.FileExists(LocalConfig.CloudConfigLocalPath) {
+				c_log.GlobalLogger.Infof("配置文件【%v】已准备好。", LocalConfig.CloudConfigLocalPath)
+				break
+			} else {
+				c_log.GlobalLogger.Infof("配置文件【%v】没有准备好。", LocalConfig.CloudConfigLocalPath)
+				continue
+			}
 		}
 	}
 
+	//for {
+	//	time.Sleep(time.Duration(1) * time.Second)
+	//	if util.FileExists(LocalConfig.CloudConfigLocalPath) {
+	//		c_log.GlobalLogger.Infof("配置文件【%v】已准备好。", LocalConfig.CloudConfigLocalPath)
+	//		break
+	//	} else {
+	//		c_log.GlobalLogger.Infof("配置文件【%v】没有准备好。", LocalConfig.CloudConfigLocalPath)
+	//		continue
+	//	}
+	//}
+
 	content, err = os.ReadFile(LocalConfig.CloudConfigLocalPath)
 	if err != nil {
 		c_log.GlobalLogger.Error("程序退出。配置文件 ", LocalConfig.CloudConfigLocalPath, " 读取失败:", err)

+ 3 - 3
aarch64/jili/common/config/c_local.go

@@ -7,9 +7,9 @@ import (
 )
 
 var (
-	LocalConfig     localConfig
-	localConfigPath = "/mnt/media/sda1/cicv-data-closedloop/config/local-config.yaml"
-	//localConfigPath = "D:\\Project\\cicv_data_closed_loop\\aarch64\\jili\\多功能车-test-local-config.yaml"
+	LocalConfig localConfig
+	//localConfigPath = "/mnt/media/sda1/cicv-data-closedloop/config/local-config.yaml"
+	localConfigPath = "D:\\Project\\cicv_data_closed_loop\\aarch64\\jili\\Gart-test-local-config.yaml"
 	//localConfigPath = "/userdata/cicv-data-closedloop/config/local-config.yaml"
 	OssEquBasePrefix string
 )

+ 1 - 1
test/oss_test.go

@@ -90,7 +90,7 @@ func TestDeleteDir(t *testing.T) {
 
 func TestOssConnect(t *testing.T) {
 	// 1. 上传文件到oss
-	err := commonConfig.OssBucket.PutObjectFromFile("test/Brake.go", "D:\\\\cloud-config-2.yaml")
+	err := commonConfig.OssBucket.PutObjectFromFile("jili/cloud-config.yaml", "C:\\Users\\15701\\Desktop\\部署\\20250407\\cloud-config.yaml")
 	if err != nil {
 		panic(err)
 	}