Merge remote-tracking branch 'origin/main' into feature/iam-u4-role-authority
# Conflicts: # pkg/extension/extension.go # pkg/extension/surface.txt
This commit is contained in:
@@ -15,6 +15,7 @@ import (
|
||||
"agent-system-backend/internal/app"
|
||||
"agent-system-backend/internal/config"
|
||||
"agent-system-backend/internal/store"
|
||||
"agent-system-backend/pkg/extension"
|
||||
"agent-system-backend/pkg/identity"
|
||||
)
|
||||
|
||||
@@ -73,7 +74,19 @@ func main() {
|
||||
pgIdleSec := fs.Int("pg-conn-max-idle-sec", 0, "PG 空闲连接回收秒数(0=默认 300)")
|
||||
pgLifetimeSec := fs.Int("pg-conn-max-lifetime-sec", 0, "PG 连接最长生命周期秒数(0=不限)")
|
||||
pgQueryTimeoutSec := fs.Int("pg-query-timeout-sec", 0, "PG statement_timeout 秒数(0=不限;覆盖全部业务查询)")
|
||||
extension.RegisterCLIFlags(fs)
|
||||
fs.Parse(os.Args[1:])
|
||||
handled, hookErr := extension.RunCLIHooks(extension.Options{
|
||||
Addr: *addr, DataDir: *data, PluginsDir: *pluginsDir, Mock: *mock,
|
||||
StorageDSN: *dsn, AuthMode: *auth, DisableExecTools: *noExec, ExecBackend: *execBackend,
|
||||
})
|
||||
if hookErr != nil {
|
||||
fmt.Fprintln(os.Stderr, "agent-system:", hookErr)
|
||||
os.Exit(1)
|
||||
}
|
||||
if handled {
|
||||
return
|
||||
}
|
||||
cliSet := visited(fs)
|
||||
|
||||
resolved, err := config.Load(*cfgFile, os.LookupEnv, config.Config{
|
||||
@@ -94,11 +107,36 @@ func main() {
|
||||
}
|
||||
os.Exit(1)
|
||||
}
|
||||
pluginDefaults, merr := extension.MergeHostOptions(extension.Options{})
|
||||
if merr != nil {
|
||||
fmt.Fprintln(os.Stderr, "agent-system:", merr)
|
||||
os.Exit(1)
|
||||
}
|
||||
disableExec := resolved.DisableExecTools
|
||||
if !cliSet["disableExecTools"] {
|
||||
disableExec = disableExec || pluginDefaults.DisableExecTools
|
||||
}
|
||||
execBackendResolved := resolved.ExecBackend
|
||||
if !cliSet["execBackend"] && execBackendResolved == "" {
|
||||
execBackendResolved = pluginDefaults.ExecBackend
|
||||
}
|
||||
extOpt := extension.Options{
|
||||
Addr: resolved.Addr, DataDir: resolved.DataDir, PluginsDir: resolved.PluginsDir,
|
||||
DisableUploadIndexing: pluginDefaults.DisableUploadIndexing,
|
||||
DisableConvCardMirror: pluginDefaults.DisableConvCardMirror,
|
||||
DisableExecTools: disableExec, ExecBackend: execBackendResolved,
|
||||
}
|
||||
if err := extension.PrepareCompiled(&extOpt); err != nil {
|
||||
fmt.Fprintln(os.Stderr, "agent-system:", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
if err := app.Run(app.Options{
|
||||
Addr: resolved.Addr, DataDir: resolved.DataDir, PluginsDir: resolved.PluginsDir, ForceMock: resolved.Mock,
|
||||
StorageDSN: resolved.StorageDSN, ArtifactsDir: resolved.ArtifactsDir, AuthMode: resolved.AuthMode,
|
||||
InstanceID: resolved.Instance, InsecureListen: resolved.InsecureListen, AllowedHosts: resolved.AllowedHosts(),
|
||||
DisableExecTools: resolved.DisableExecTools, ExecBackend: resolved.ExecBackend, ExecDepsDir: resolved.ExecDepsDir,
|
||||
DisableUploadIndexing: extOpt.DisableUploadIndexing,
|
||||
DisableConvCardMirror: extOpt.DisableConvCardMirror,
|
||||
DisableExecTools: extOpt.DisableExecTools, ExecBackend: extOpt.ExecBackend, ExecDepsDir: resolved.ExecDepsDir,
|
||||
ExecWorkspace: resolved.ExecWorkspace,
|
||||
Tier: resolved.Tier,
|
||||
PGPool: store.PoolOptions{
|
||||
|
||||
Reference in New Issue
Block a user