default.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package app
  2. import "golang.org/x/exp/constraints"
  3. func (config *Config) SetDefault() {
  4. setDefaultInt(&config.ServerPort, 5002)
  5. setDefaultInt(&config.RoutinePoolSize, 1000)
  6. setDefaultInt(&config.LifetimeCollectionGCInterval, 60)
  7. setDefaultInt(&config.LifetimeCollectionHeartbeatInterval, 5)
  8. setDefaultInt(&config.LifetimeStateGCInterval, 300)
  9. setDefaultInt(&config.DifyInvocationConnectionIdleTimeout, 120)
  10. setDefaultInt(&config.PluginRemoteInstallServerEventLoopNums, 8)
  11. setDefaultInt(&config.PluginRemoteInstallingMaxConn, 128)
  12. setDefaultInt(&config.MaxPluginPackageSize, 52428800)
  13. setDefaultInt(&config.MaxAWSLambdaTransactionTimeout, 150)
  14. setDefaultInt(&config.PluginMaxExecutionTimeout, 240)
  15. setDefaultInt(&config.PluginMediaCacheSize, 1024)
  16. setDefaultBool(&config.PluginRemoteInstallingEnabled, true)
  17. setDefaultBool(&config.PluginEndpointEnabled, true)
  18. setDefaultString(&config.DBSslMode, "disable")
  19. setDefaultString(&config.PluginMediaCachePath, "./storage/assets")
  20. setDefaultString(&config.PersistenceStorageLocalPath, "./storage/persistence")
  21. setDefaultString(&config.ProcessCachingPath, "./storage/subprocesses")
  22. }
  23. func setDefaultInt[T constraints.Integer](value *T, defaultValue T) {
  24. if *value == 0 {
  25. *value = defaultValue
  26. }
  27. }
  28. func setDefaultString(value *string, defaultValue string) {
  29. if *value == "" {
  30. *value = defaultValue
  31. }
  32. }
  33. func setDefaultBool(value *bool, defaultValue bool) {
  34. if !*value {
  35. *value = defaultValue
  36. }
  37. }