feat: CI/CD pipeline + Learning/Medicine/Travel services
- Add Gitea Actions workflow for automated build & deploy - Add K8s manifests: webui, travel-svc, medicine-svc, sandbox-svc - Update kustomization for localhost:5000 registry - Add ingress for gooseek.ru and api.gooseek.ru - Learning cabinet with onboarding, courses, sandbox integration - Medicine service with symptom analysis and doctor matching - Travel service with itinerary planning - Server setup scripts (NVIDIA/CUDA, K3s, Gitea runner) Made-with: Cursor
This commit is contained in:
@@ -18,6 +18,7 @@ import (
|
||||
"github.com/gooseek/backend/pkg/config"
|
||||
"github.com/gooseek/backend/pkg/middleware"
|
||||
"github.com/gooseek/backend/pkg/ndjson"
|
||||
"github.com/gooseek/backend/pkg/storage"
|
||||
)
|
||||
|
||||
type SearchRequest struct {
|
||||
@@ -55,6 +56,24 @@ func main() {
|
||||
|
||||
searchClient := search.NewSearXNGClient(cfg)
|
||||
|
||||
var photoCache *agent.PhotoCacheService
|
||||
if cfg.MinioEndpoint != "" {
|
||||
minioStorage, err := storage.NewMinioStorage(storage.MinioConfig{
|
||||
Endpoint: cfg.MinioEndpoint,
|
||||
AccessKey: cfg.MinioAccessKey,
|
||||
SecretKey: cfg.MinioSecretKey,
|
||||
Bucket: cfg.MinioBucket,
|
||||
UseSSL: cfg.MinioUseSSL,
|
||||
PublicURL: cfg.MinioPublicURL,
|
||||
})
|
||||
if err != nil {
|
||||
log.Printf("Warning: MinIO init failed (photo cache disabled): %v", err)
|
||||
} else {
|
||||
photoCache = agent.NewPhotoCacheService(minioStorage)
|
||||
log.Printf("Photo cache enabled: MinIO at %s, bucket=%s, publicURL=%s", cfg.MinioEndpoint, cfg.MinioBucket, cfg.MinioPublicURL)
|
||||
}
|
||||
}
|
||||
|
||||
app := fiber.New(fiber.Config{
|
||||
StreamRequestBody: true,
|
||||
BodyLimit: 10 * 1024 * 1024,
|
||||
@@ -166,6 +185,7 @@ func main() {
|
||||
TravelSvcURL: cfg.TravelSvcURL,
|
||||
TravelPayoutsToken: cfg.TravelPayoutsToken,
|
||||
TravelPayoutsMarker: cfg.TravelPayoutsMarker,
|
||||
PhotoCache: photoCache,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user