Adds Server.ID/Name, ServerInterface.Name, Client.ServerID, and a new ServerSetting type as additive fields so existing single-server code paths keep working unchanged. jsondb.Init() now detects a pre-existing single-server db/server/ layout and mirrors it into new servers/, server_settings/, server_hashes/ collections plus backfills ServerID on existing clients, without touching/removing the legacy files yet.
29 lines
1017 B
Go
29 lines
1017 B
Go
package model
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
// GlobalSetting model
|
|
type GlobalSetting struct {
|
|
EndpointAddress string `json:"endpoint_address"`
|
|
DNSServers []string `json:"dns_servers"`
|
|
MTU int `json:"mtu,string"`
|
|
PersistentKeepalive int `json:"persistent_keepalive,string"`
|
|
FirewallMark string `json:"firewall_mark"`
|
|
Table string `json:"table"`
|
|
ConfigFilePath string `json:"config_file_path"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|
|
|
|
// ServerSetting model holds the per-server-interface subset of settings
|
|
// that used to live in the single global GlobalSetting. Introduced for the
|
|
// multi-server extension; not yet wired into store/handler layers.
|
|
type ServerSetting struct {
|
|
EndpointAddress string `json:"endpoint_address"`
|
|
FirewallMark string `json:"firewall_mark"`
|
|
Table string `json:"table"`
|
|
ConfigFilePath string `json:"config_file_path"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|