Files

64 lines
1.8 KiB
Go
Raw Permalink Normal View History

2023-10-17 10:02:07 +02:00
package integrations
import (
2024-02-12 11:54:49 +01:00
"context"
2023-10-17 10:02:07 +02:00
"github.com/gorilla/mux"
log "github.com/sirupsen/logrus"
"go.opentelemetry.io/otel/metric"
"github.com/netbirdio/netbird/management/server/store"
"github.com/netbirdio/netbird/management/server/telemetry"
2025-02-26 17:42:45 +01:00
"github.com/netbirdio/netbird/management/server/account"
2023-12-30 20:19:00 +01:00
"github.com/netbirdio/netbird/management/server/activity"
activitystore "github.com/netbirdio/netbird/management/server/activity/store"
"github.com/netbirdio/netbird/management/server/integrations/integrated_validator"
2025-01-31 13:34:35 +01:00
"github.com/netbirdio/netbird/management/server/integrations/port_forwarding"
"github.com/netbirdio/netbird/management/server/peers"
"github.com/netbirdio/netbird/management/server/permissions"
2025-02-26 17:57:36 +01:00
"github.com/netbirdio/netbird/management/server/settings"
2023-10-17 10:02:07 +02:00
)
2023-10-27 16:32:00 +02:00
func RegisterHandlers(
2024-02-12 11:54:49 +01:00
ctx context.Context,
prefix string,
2023-10-27 16:32:00 +02:00
router *mux.Router,
2025-03-10 15:56:12 +03:00
accountManager account.Manager,
integratedValidator integrated_validator.IntegratedValidator,
meter metric.Meter,
2025-01-31 13:34:35 +01:00
permissionsManager permissions.Manager,
peersManager peers.Manager,
proxyController port_forwarding.Controller,
2025-02-26 17:57:36 +01:00
settingsManager settings.Manager,
2024-02-12 11:54:49 +01:00
) (*mux.Router, error) {
return router, nil
2023-10-17 10:02:07 +02:00
}
2023-12-30 20:19:00 +01:00
2025-06-12 17:21:48 +01:00
func InitEventStore(ctx context.Context, dataDir string, key string, _ *Metrics) (activity.Store, string, error) {
2023-12-30 20:19:00 +01:00
var err error
if key == "" {
log.Debugf("generate new activity store encryption key")
key, err = activitystore.GenerateKey()
2023-12-30 20:19:00 +01:00
if err != nil {
return nil, "", err
}
}
store, err := activitystore.NewSqlStore(ctx, dataDir, key)
2023-12-30 20:19:00 +01:00
return store, key, err
}
2025-03-30 15:37:13 +01:00
func InitPermissionsManager(store store.Store) permissions.Manager {
return permissions.NewManager(store)
}
type Metrics struct {
telemetry.AppMetrics
}
func InitIntegrationMetrics(ctx context.Context, metrics telemetry.AppMetrics) (*Metrics, error) {
return &Metrics{
AppMetrics: metrics,
}, nil
}