mirror of
https://github.com/luckfox-eng29/kvm.git
synced 2026-01-18 03:28:19 +01:00
network enhanecment / refactor (#361)
* chore(network): improve connectivity check * refactor(network): rewrite network and timesync component * feat(display): show cloud connection status * chore: change logging verbosity * chore(websecure): update log message * fix(ota): validate root certificate when downloading update * feat(ui): add network settings tab * fix(display): cloud connecting animation * fix: golintci issues * feat: add network settings tab * feat(timesync): query servers in parallel * refactor(network): move to internal/network package * feat(timesync): add metrics * refactor(log): move log to internal/logging package * refactor(mdms): move mdns to internal/mdns package * feat(developer): add pprof endpoint * feat(logging): add a simple logging streaming endpoint * fix(mdns): do not start mdns until network is up * feat(network): allow users to update network settings from ui * fix(network): handle errors when net.IPAddr is nil * fix(mdns): scopedLogger SIGSEGV * fix(dhcp): watch directory instead of file to catch fsnotify.Create event * refactor(nbd): move platform-specific code to different files * refactor(native): move platform-specific code to different files * chore: fix linter issues * chore(dev_deploy): allow to override PION_LOG_TRACE
This commit is contained in:
38
main.go
38
main.go
@@ -15,28 +15,54 @@ var appCtx context.Context
|
||||
|
||||
func Main() {
|
||||
LoadConfig()
|
||||
logger.Debug().Msg("config loaded")
|
||||
|
||||
var cancel context.CancelFunc
|
||||
appCtx, cancel = context.WithCancel(context.Background())
|
||||
defer cancel()
|
||||
logger.Info().Msg("starting JetKvm")
|
||||
|
||||
systemVersionLocal, appVersionLocal, err := GetLocalVersion()
|
||||
if err != nil {
|
||||
logger.Warn().Err(err).Msg("failed to get local version")
|
||||
}
|
||||
|
||||
logger.Info().
|
||||
Interface("system_version", systemVersionLocal).
|
||||
Interface("app_version", appVersionLocal).
|
||||
Msg("starting JetKVM")
|
||||
|
||||
go runWatchdog()
|
||||
go confirmCurrentSystem()
|
||||
|
||||
http.DefaultClient.Timeout = 1 * time.Minute
|
||||
|
||||
err := rootcerts.UpdateDefaultTransport()
|
||||
err = rootcerts.UpdateDefaultTransport()
|
||||
if err != nil {
|
||||
logger.Warn().Err(err).Msg("failed to load CA certs")
|
||||
logger.Warn().Err(err).Msg("failed to load Root CA certificates")
|
||||
}
|
||||
logger.Info().
|
||||
Int("ca_certs_loaded", len(rootcerts.Certs())).
|
||||
Msg("loaded Root CA certificates")
|
||||
|
||||
// Initialize network
|
||||
if err := initNetwork(); err != nil {
|
||||
logger.Error().Err(err).Msg("failed to initialize network")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
initNetwork()
|
||||
// Initialize time sync
|
||||
initTimeSync()
|
||||
timeSync.Start()
|
||||
|
||||
go TimeSyncLoop()
|
||||
// Initialize mDNS
|
||||
if err := initMdns(); err != nil {
|
||||
logger.Error().Err(err).Msg("failed to initialize mDNS")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
// Initialize native ctrl socket server
|
||||
StartNativeCtrlSocketServer()
|
||||
|
||||
// Initialize native video socket server
|
||||
StartNativeVideoSocketServer()
|
||||
|
||||
initPrometheus()
|
||||
|
||||
Reference in New Issue
Block a user