You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

config.go 1.2 kB

2 years ago
12345678910111213141516171819202122232425262728293031323334
  1. package config
  2. import (
  3. "gitlink.org.cn/cloudream/common/pkgs/distlock"
  4. "gitlink.org.cn/cloudream/common/pkgs/ipfs"
  5. log "gitlink.org.cn/cloudream/common/pkgs/logger"
  6. c "gitlink.org.cn/cloudream/common/utils/config"
  7. stgmodels "gitlink.org.cn/cloudream/storage/common/models"
  8. "gitlink.org.cn/cloudream/storage/common/pkgs/grpc"
  9. stgmq "gitlink.org.cn/cloudream/storage/common/pkgs/mq"
  10. )
  11. type Config struct {
  12. ID int64 `json:"id"`
  13. Local stgmodels.LocalMachineInfo `json:"local"`
  14. GRPC *grpc.Config `json:"grpc"`
  15. ECPacketSize int64 `json:"ecPacketSize"`
  16. StorageBaseDir string `json:"storageBaseDir"`
  17. TempFileLifetime int `json:"tempFileLifetime"` // temp状态的副本最多能保持多久时间,单位:秒
  18. Logger log.Config `json:"logger"`
  19. RabbitMQ stgmq.Config `json:"rabbitMQ"`
  20. IPFS ipfs.Config `json:"ipfs"`
  21. DistLock distlock.Config `json:"distlock"`
  22. }
  23. var cfg Config
  24. func Init() error {
  25. return c.DefaultLoad("agent", &cfg)
  26. }
  27. func Cfg() *Config {
  28. return &cfg
  29. }

本项目旨在将云际存储公共基础设施化,使个人及企业可低门槛使用高效的云际存储服务(安装开箱即用云际存储客户端即可,无需关注其他组件的部署),同时支持用户灵活便捷定制云际存储的功能细节。