mirror of
https://github.com/project-zot/zot.git
synced 2026-06-17 21:17:58 +08:00
fix: Add HTTP client timeouts to prevent indefinite hangs in sync operations (#3574)
This commit is contained in:
+10
-6
@@ -28,6 +28,7 @@ import (
|
||||
extconf "zotregistry.dev/zot/v2/pkg/extensions/config"
|
||||
eventsconf "zotregistry.dev/zot/v2/pkg/extensions/config/events"
|
||||
"zotregistry.dev/zot/v2/pkg/extensions/monitoring"
|
||||
syncConstants "zotregistry.dev/zot/v2/pkg/extensions/sync/constants"
|
||||
zlog "zotregistry.dev/zot/v2/pkg/log"
|
||||
storageConstants "zotregistry.dev/zot/v2/pkg/storage/constants"
|
||||
)
|
||||
@@ -663,15 +664,18 @@ func applyDefaultValues(config *config.Config, viperInstance *viper.Viper, logge
|
||||
config.Extensions.Sync.Enable = &defaultVal
|
||||
}
|
||||
|
||||
defaultSyncTimeout := 3 * time.Hour
|
||||
|
||||
for idx, regCfg := range config.Extensions.Sync.Registries {
|
||||
for idx := range config.Extensions.Sync.Registries {
|
||||
regCfg := &config.Extensions.Sync.Registries[idx]
|
||||
if regCfg.TLSVerify == nil {
|
||||
config.Extensions.Sync.Registries[idx].TLSVerify = &defaultVal
|
||||
regCfg.TLSVerify = &defaultVal
|
||||
}
|
||||
|
||||
if config.Extensions.Sync.Registries[idx].SyncTimeout == 0 {
|
||||
config.Extensions.Sync.Registries[idx].SyncTimeout = defaultSyncTimeout
|
||||
if regCfg.SyncTimeout == 0 {
|
||||
regCfg.SyncTimeout = syncConstants.DefaultSyncTimeout
|
||||
}
|
||||
|
||||
if regCfg.ResponseHeaderTimeout == 0 {
|
||||
regCfg.ResponseHeaderTimeout = syncConstants.DefaultResponseHeaderTimeout
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user