feat(ingestion): wire watcher into server startup + fix Procfile env vars
- Start background watcher on startup when INGEST_WATCH_INTERVAL > 0 - Procfile: add INGEST_WATCH_INTERVAL=30 and INGEST_SVC_URL for supervisor Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
4
Procfile
4
Procfile
@@ -1,2 +1,2 @@
|
|||||||
ingestion: cd ingestion && INGEST_BRAIN_DIR=../brain INGEST_PORT=3300 go run ./cmd/server/
|
ingestion: cd ingestion && INGEST_BRAIN_DIR=../brain INGEST_PORT=3300 INGEST_WATCH_INTERVAL=30 go run ./cmd/server/
|
||||||
supervisor: SUPERVISOR_CONFIG_DIR=./config/supervisor SUPERVISOR_MODELS_FILE=./config/models.yaml SUPERVISOR_SESSIONS_DIR=./brain/sessions INGEST_BASE_URL=http://localhost:3300 go run ./cmd/supervisor/
|
supervisor: SUPERVISOR_CONFIG_DIR=./config/supervisor SUPERVISOR_MODELS_FILE=./config/models.yaml SUPERVISOR_SESSIONS_DIR=./brain/sessions INGEST_BASE_URL=http://localhost:3300 INGEST_SVC_URL=http://localhost:3300 go run ./cmd/supervisor/
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"log/slog"
|
"log/slog"
|
||||||
"net/http"
|
"net/http"
|
||||||
@@ -12,6 +13,7 @@ import (
|
|||||||
"github.com/mathiasbq/hyperguild/ingestion/internal/api"
|
"github.com/mathiasbq/hyperguild/ingestion/internal/api"
|
||||||
"github.com/mathiasbq/hyperguild/ingestion/internal/llm"
|
"github.com/mathiasbq/hyperguild/ingestion/internal/llm"
|
||||||
"github.com/mathiasbq/hyperguild/ingestion/internal/pipeline"
|
"github.com/mathiasbq/hyperguild/ingestion/internal/pipeline"
|
||||||
|
"github.com/mathiasbq/hyperguild/ingestion/internal/watcher"
|
||||||
)
|
)
|
||||||
|
|
||||||
func envOr(key, fallback string) string {
|
func envOr(key, fallback string) string {
|
||||||
@@ -52,8 +54,14 @@ func main() {
|
|||||||
|
|
||||||
h := api.NewHandler(brainDir, logger, pipelineCfg)
|
h := api.NewHandler(brainDir, logger, pipelineCfg)
|
||||||
|
|
||||||
// TODO(task11): start watcher when INGEST_WATCH_INTERVAL > 0
|
ctx := context.Background()
|
||||||
_ = watchInterval
|
if watchInterval > 0 {
|
||||||
|
watcher.Start(ctx, watcher.Config{
|
||||||
|
BrainDir: brainDir,
|
||||||
|
Interval: time.Duration(watchInterval) * time.Second,
|
||||||
|
Pipeline: pipelineCfg,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
mux := http.NewServeMux()
|
mux := http.NewServeMux()
|
||||||
mux.HandleFunc("POST /query", h.Query)
|
mux.HandleFunc("POST /query", h.Query)
|
||||||
@@ -64,7 +72,7 @@ func main() {
|
|||||||
addr := ":" + port
|
addr := ":" + port
|
||||||
watchIntervalLog := "disabled"
|
watchIntervalLog := "disabled"
|
||||||
if watchInterval > 0 {
|
if watchInterval > 0 {
|
||||||
watchIntervalLog = fmt.Sprintf("%ds (pending task11 wiring)", watchInterval)
|
watchIntervalLog = fmt.Sprintf("%ds", watchInterval)
|
||||||
}
|
}
|
||||||
logger.Info("ingestion server starting",
|
logger.Info("ingestion server starting",
|
||||||
"addr", addr,
|
"addr", addr,
|
||||||
|
|||||||
Reference in New Issue
Block a user