local_cfg.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package cfg
  2. import (
  3. "cicv-data-closedloop/kinglong/common/log"
  4. "gopkg.in/yaml.v2"
  5. "os"
  6. )
  7. type node struct {
  8. Name string `yaml:"name"`
  9. Ip string `yaml:"ip"`
  10. }
  11. type restartCmd struct {
  12. Dir string `yaml:"dir"`
  13. Name string `yaml:"name"`
  14. Args []string `yaml:"args"`
  15. }
  16. type localConfig struct {
  17. Node node `yaml:"node"` // 获取oss配置的url
  18. UrlGetOssConfig string `yaml:"url-get-oss-config"` // 获取oss配置的url
  19. OssBasePrefix string `yaml:"oss-base-prefix"` // 云端配置文件的位置
  20. EquipmentNo string `yaml:"equipment-no"` // 当前设备的编号
  21. CloudConfigFilename string `yaml:"cloud-config-filename"` // 云端配置文件名称
  22. CloudConfigLocalPath string `yaml:"cloud-config-local-path"` // 将 oss 的配置文件下载到本地的位置
  23. SecretKey string `yaml:"secret-key"` // 当前设备的密钥
  24. RestartCmd restartCmd `yaml:"restart-cmd"` // 重启命令
  25. }
  26. var (
  27. LocalConfig localConfig
  28. localConfigPath = "/mnt/media/sda1/rosbag-handle/config/local-config.yaml"
  29. )
  30. func InitLocalConfig() {
  31. log.GlobalLogger.Info("初始化本地配置文件 - 开始:", localConfigPath)
  32. // 读取YAML文件内容
  33. content, err := os.ReadFile(localConfigPath)
  34. if err != nil {
  35. log.GlobalLogger.Error("读取本地配置文件失败。", err)
  36. os.Exit(-1)
  37. }
  38. // 解析YAML内容
  39. err = yaml.Unmarshal(content, &LocalConfig)
  40. if err != nil {
  41. log.GlobalLogger.Error("解析本地配置文件失败。", err)
  42. os.Exit(-1)
  43. }
  44. log.GlobalLogger.Info("初始化本地配置文件 - 成功:", LocalConfig)
  45. }