package config import ( "cicv-data-closedloop/common/config/c_log" "gopkg.in/yaml.v2" "os" ) type node struct { Name string `yaml:"name"` Ip string `yaml:"ip"` } type restartCmd struct { Dir string `yaml:"dir"` Name string `yaml:"name"` Args []string `yaml:"args"` } type localConfig struct { Node node `yaml:"node"` // 节点信息 RosparamPath string `yaml:"rosparam-path"` // 获取oss配置的url UrlGetOssConfig string `yaml:"url-get-oss-config"` // 获取oss配置的url OssBasePrefix string `yaml:"oss-base-prefix"` // 云端配置文件的位置 CloudConfigFilename string `yaml:"cloud-config-filename"` // 云端配置文件名称 CloudConfigLocalPath string `yaml:"cloud-config-local-path"` // 将 oss 的配置文件下载到本地的位置 LocalWebsocketPort string `yaml:"local-websocket-port"` // websocket端口号 RestartCmd restartCmd `yaml:"restart-cmd"` // 重启命令 EquipmentNo string // 当前设备的编号 SecretKey string // 当前设备的密钥 } var ( LocalConfig localConfig ) func InitLocalConfig(localConfigPath string) { c_log.GlobalLogger.Info("初始化本地配置文件 - 开始:", localConfigPath) // 读取YAML文件内容 content, err := os.ReadFile(localConfigPath) if err != nil { c_log.GlobalLogger.Error("读取本地配置文件失败。", err) os.Exit(-1) } // 解析YAML内容 err = yaml.Unmarshal(content, &LocalConfig) if err != nil { c_log.GlobalLogger.Error("解析本地配置文件失败。", err) os.Exit(-1) } // history20240401:设备密钥需要获取sn码,设备编号同样。######由于执行命令需要环境变量,所以放到 c_cloud.go 中#### /* # 例如,数据闭环平台参数 equipment-no: pjibot-P1YNYD1M228000127 secret-key: P1YNYD1M228000127 */ c_log.GlobalLogger.Info("初始化本地配置文件 - 成功:", LocalConfig) }