package config type AgentConfig struct { ReconciliationInterval InterpolatedInt `yaml:"reconciliationInterval"` Controllers ControllersConfig `yaml:"controllers"` } type ControllersConfig struct { Persistence PersistenceControllerConfig `yaml:"persistence"` Spec SpecControllerConfig `yaml:"spec"` Gateway GatewayControllerConfig `yaml:"gateway"` UCI UCIControllerConfig `yaml:"uci"` } type PersistenceControllerConfig struct { Enabled InterpolatedBool `yaml:"enabled"` StateFile InterpolatedString `yaml:"stateFile"` } type SpecControllerConfig struct { Enabled InterpolatedBool `yaml:"enabled"` ServerURL InterpolatedString `yaml:"serverUrl"` } type GatewayControllerConfig struct { Enabled InterpolatedBool `yaml:"enabled"` } type UCIControllerConfig struct { Enabled InterpolatedBool `yaml:"enabled"` BinPath InterpolatedString `yaml:"binPath"` ConfigBackupFile InterpolatedString `yaml:"configBackupFile"` } func NewDefaultAgentConfig() AgentConfig { return AgentConfig{ ReconciliationInterval: 5, Controllers: ControllersConfig{ Spec: SpecControllerConfig{ Enabled: true, ServerURL: "http://127.0.0.1:3000", }, Persistence: PersistenceControllerConfig{ Enabled: true, StateFile: "state.json", }, Gateway: GatewayControllerConfig{ Enabled: true, }, UCI: UCIControllerConfig{ Enabled: true, ConfigBackupFile: "uci-backup.conf", BinPath: "uci", }, }, } }