@@ -52,35 +52,23 @@ func init() {
5252 viper .BindEnv ("general.log_level" , "LOG_LEVEL" )
5353 viper .BindEnv ("packet_forwarder.udp_bind" , "UDP_BIND" )
5454 viper .BindEnv ("packet_forwarder.skip_crc_check" , "SKIP_CRC_CHECK" )
55- viper .BindEnv ("backend.mqtt.server" , "MQTT_SERVER" )
56- viper .BindEnv ("backend.mqtt.username" , "MQTT_USERNAME" )
57- viper .BindEnv ("backend.mqtt.password" , "MQTT_PASSWORD" )
58- viper .BindEnv ("backend.mqtt.ca_cert" , "MQTT_CA_CERT" )
59- viper .BindEnv ("backend.mqtt.tls_cert" , "MQTT_TLS_CERT" )
60- viper .BindEnv ("backend.mqtt.tls_key" , "MQTT_TLS_KEY" )
55+ viper .BindEnv ("backend.mqtt.auth.generic. server" , "MQTT_SERVER" )
56+ viper .BindEnv ("backend.mqtt.auth.generic. username" , "MQTT_USERNAME" )
57+ viper .BindEnv ("backend.mqtt.auth.generic. password" , "MQTT_PASSWORD" )
58+ viper .BindEnv ("backend.mqtt.auth.generic. ca_cert" , "MQTT_CA_CERT" )
59+ viper .BindEnv ("backend.mqtt.auth.generic. tls_cert" , "MQTT_TLS_CERT" )
60+ viper .BindEnv ("backend.mqtt.auth.generic. tls_key" , "MQTT_TLS_KEY" )
6161
6262 // for backwards compatibility
6363 viper .BindPFlag ("general.log_level" , rootCmd .PersistentFlags ().Lookup ("log-level" ))
6464 viper .BindPFlag ("packet_forwarder.udp_bind" , rootCmd .PersistentFlags ().Lookup ("udp-bind" ))
6565 viper .BindPFlag ("packet_forwarder.skip_crc_check" , rootCmd .PersistentFlags ().Lookup ("skip-crc-check" ))
66- viper .BindPFlag ("backend.mqtt.server" , rootCmd .PersistentFlags ().Lookup ("mqtt-server" ))
67- viper .BindPFlag ("backend.mqtt.username" , rootCmd .PersistentFlags ().Lookup ("mqtt-username" ))
68- viper .BindPFlag ("backend.mqtt.password" , rootCmd .PersistentFlags ().Lookup ("mqtt-password" ))
69- viper .BindPFlag ("backend.mqtt.ca_cert" , rootCmd .PersistentFlags ().Lookup ("mqtt-ca-cert" ))
70- viper .BindPFlag ("backend.mqtt.tls_cert" , rootCmd .PersistentFlags ().Lookup ("mqtt-tls-cert" ))
71- viper .BindPFlag ("backend.mqtt.tls_key" , rootCmd .PersistentFlags ().Lookup ("mqtt-tls-key" ))
72-
73- // aliases 2.4.x -> 2.5.0
74- viper .RegisterAlias ("backend.mqtt.auth.generic.server" , "backend.mqtt.server" )
75- viper .RegisterAlias ("backend.mqtt.auth.generic.username" , "backend.mqtt.username" )
76- viper .RegisterAlias ("backend.mqtt.auth.generic.password" , "backend.mqtt.password" )
77- viper .RegisterAlias ("backend.mqtt.auth.generic.ca_cert" , "backend.mqtt.ca_cert" )
78- viper .RegisterAlias ("backend.mqtt.auth.generic.tls_cert" , "backend.mqtt.tls_cert" )
79- viper .RegisterAlias ("backend.mqtt.auth.generic.tls_key" , "backend.mqtt.tls_key" )
80- viper .RegisterAlias ("backend.mqtt.auth.generic.qos" , "backend.mqtt.qos" )
81- viper .RegisterAlias ("backend.mqtt.auth.generic.clean_session" , "backend.mqtt.clean_session" )
82- viper .RegisterAlias ("backend.mqtt.auth.generic.client_id" , "backend.mqtt.client_id" )
83- viper .RegisterAlias ("backend.mqtt.auth.generic.max_reconnect_interval" , "backend.mqtt.max_reconnect_interval" )
66+ viper .BindPFlag ("backend.mqtt.auth.generic.server" , rootCmd .PersistentFlags ().Lookup ("mqtt-server" ))
67+ viper .BindPFlag ("backend.mqtt.auth.generic.username" , rootCmd .PersistentFlags ().Lookup ("mqtt-username" ))
68+ viper .BindPFlag ("backend.mqtt.auth.generic.password" , rootCmd .PersistentFlags ().Lookup ("mqtt-password" ))
69+ viper .BindPFlag ("backend.mqtt.auth.generic.ca_cert" , rootCmd .PersistentFlags ().Lookup ("mqtt-ca-cert" ))
70+ viper .BindPFlag ("backend.mqtt.auth.generic.tls_cert" , rootCmd .PersistentFlags ().Lookup ("mqtt-tls-cert" ))
71+ viper .BindPFlag ("backend.mqtt.auth.generic.tls_key" , rootCmd .PersistentFlags ().Lookup ("mqtt-tls-key" ))
8472
8573 // default values
8674 viper .SetDefault ("packet_forwarder.udp_bind" , "0.0.0.0:1700" )
@@ -145,4 +133,39 @@ func initConfig() {
145133 log .WithError (err ).Fatal ("unmarshal config error" )
146134 }
147135 }
136+
137+ // migrate config
138+ if v := config .C .Backend .MQTT .Server ; v != "" {
139+ config .C .Backend .MQTT .Auth .Generic .Server = v
140+ }
141+ if v := config .C .Backend .MQTT .Username ; v != "" {
142+ config .C .Backend .MQTT .Auth .Generic .Username = v
143+ }
144+ if v := config .C .Backend .MQTT .Password ; v != "" {
145+ config .C .Backend .MQTT .Auth .Generic .Password = v
146+ }
147+ if v := config .C .Backend .MQTT .Password ; v != "" {
148+ config .C .Backend .MQTT .Auth .Generic .Password = v
149+ }
150+ if v := config .C .Backend .MQTT .CACert ; v != "" {
151+ config .C .Backend .MQTT .Auth .Generic .CACert = v
152+ }
153+ if v := config .C .Backend .MQTT .TLSCert ; v != "" {
154+ config .C .Backend .MQTT .Auth .Generic .TLSCert = v
155+ }
156+ if v := config .C .Backend .MQTT .TLSKey ; v != "" {
157+ config .C .Backend .MQTT .Auth .Generic .TLSKey = v
158+ }
159+ if v := config .C .Backend .MQTT .QOS ; v != 0 {
160+ config .C .Backend .MQTT .Auth .Generic .QOS = v
161+ }
162+ if v := config .C .Backend .MQTT .CleanSession ; v {
163+ config .C .Backend .MQTT .Auth .Generic .CleanSession = v
164+ }
165+ if v := config .C .Backend .MQTT .ClientID ; v != "" {
166+ config .C .Backend .MQTT .Auth .Generic .ClientID = v
167+ }
168+ if v := config .C .Backend .MQTT .MaxReconnectInterval ; v != 0 {
169+ config .C .Backend .MQTT .Auth .Generic .MaxReconnectInterval = v
170+ }
148171}
0 commit comments