mirror of
https://github.com/netbirdio/management-refactor.git
synced 2026-05-22 17:12:59 -07:00
make project build
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
log_levels:
|
||||
default: debug
|
||||
github.com/netbirdio/management-refactor/internals/shared/activity: error
|
||||
github.com/netbirdio/management-refactor/internals/shared/db: debug
|
||||
github.com/netbirdio/management-refactor/internals/shared/permissions: debug
|
||||
github.com/netbirdio/management-refactor/internals/modules/peers/manager: warn
|
||||
+2
-2
@@ -17,10 +17,10 @@ var log = logging.LoggerForThisPackage()
|
||||
var mgmtCmd = &cobra.Command{
|
||||
Use: "management",
|
||||
Short: "start NetBird Management Server",
|
||||
PreRunE: func(cmd *cobra.Command, args []string) error {
|
||||
RunE: func(cmd *cobra.Command, args []string) error {
|
||||
err := logging.Init("logging.yaml")
|
||||
if err != nil {
|
||||
log.Fatalf("Failed to init logging: %v", err)
|
||||
log.Debugf("Failed to init logging: %v", err)
|
||||
}
|
||||
|
||||
srv := server.NewServer()
|
||||
|
||||
@@ -2,7 +2,7 @@ module github.com/netbirdio/management-refactor
|
||||
|
||||
go 1.23.0
|
||||
|
||||
toolchain go1.23.8
|
||||
toolchain go1.23.1
|
||||
|
||||
require (
|
||||
github.com/c-robinson/iplib v1.0.3
|
||||
|
||||
@@ -10,6 +10,8 @@ import (
|
||||
"github.com/netbirdio/netbird/management/server/activity"
|
||||
nbpeer "github.com/netbirdio/netbird/management/server/peer"
|
||||
"github.com/netbirdio/netbird/management/server/store"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/modules/peers"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -33,7 +35,7 @@ type ephemeralPeer struct {
|
||||
// Controller keep a list of ephemeral peers. After ephemeralLifeTime inactivity the peer will be deleted
|
||||
// automatically. Inactivity means the peer disconnected from the Management server.
|
||||
type Controller struct {
|
||||
store store.Store
|
||||
peersManager peers.Manager
|
||||
|
||||
headPeer *ephemeralPeer
|
||||
tailPeer *ephemeralPeer
|
||||
@@ -42,9 +44,9 @@ type Controller struct {
|
||||
}
|
||||
|
||||
// NewEphemeralManager instantiate new Controller
|
||||
func NewEphemeralManager(peersManager) *Controller {
|
||||
func NewEphemeralManager(peersManager peers.Manager) *Controller {
|
||||
return &Controller{
|
||||
store: store,
|
||||
peersManager: peersManager,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,7 +121,7 @@ func (e *Controller) OnPeerDisconnected(ctx context.Context, peer *nbpeer.Peer)
|
||||
}
|
||||
|
||||
func (e *Controller) loadEphemeralPeers(ctx context.Context) {
|
||||
peers, err := e.store.GetAllEphemeralPeers(ctx, store.LockingStrengthShare)
|
||||
peers, err := e.peersManager.GetAllEphemeralPeers(ctx, store.LockingStrengthShare)
|
||||
if err != nil {
|
||||
log.WithContext(ctx).Debugf("failed to load ephemeral peers: %s", err)
|
||||
return
|
||||
@@ -163,7 +165,7 @@ func (e *Controller) cleanup(ctx context.Context) {
|
||||
|
||||
for id, p := range deletePeers {
|
||||
log.WithContext(ctx).Debugf("delete ephemeral peer: %s", id)
|
||||
err := e.accountManager.DeletePeer(ctx, p.accountID, id, activity.SystemInitiator)
|
||||
err := e.peersManager.DeletePeer(ctx, p.accountID, id, activity.SystemInitiator)
|
||||
if err != nil {
|
||||
log.WithContext(ctx).Errorf("failed to delete ephemeral peer: %s", err)
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ func NewController(store *db.Store, metrics *appmetrics.AppMetrics) *Controller
|
||||
}
|
||||
|
||||
func (c *Controller) UpdatePeers(accountID string) error {
|
||||
data, err := c.repo.GetNetworkMapData(accountID)
|
||||
_, err := c.repo.GetNetworkMapData(accountID)
|
||||
if err != nil {
|
||||
return fmt.Errorf("get network map data: %w", err)
|
||||
}
|
||||
|
||||
@@ -55,9 +55,9 @@ func (r *repository) GetNetworkMapData(accountID string) (*NetworkMapData, error
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if err := r.store.Load(&networkMapData, "Peers", "Groups", "Policies", "Networks", "NetworkRouters", "NetworkResources"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
// if err := r.store.Load(&networkMapData, "Peers", "Groups", "Policies", "Networks", "NetworkRouters", "NetworkResources"); err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
|
||||
r.metrics.RecordDBAccessDuration(time.Since(start))
|
||||
|
||||
|
||||
@@ -5,11 +5,15 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/netbirdio/netbird/management/server/groups"
|
||||
log "github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/netbirdio/netbird/management/proto"
|
||||
"github.com/netbirdio/netbird/management/server/telemetry"
|
||||
"github.com/netbirdio/netbird/management/server/types"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/modules/peers"
|
||||
"github.com/netbirdio/management-refactor/internals/modules/policies"
|
||||
)
|
||||
|
||||
const channelBufferSize = 100
|
||||
@@ -17,9 +21,9 @@ const channelBufferSize = 100
|
||||
type UpdateMessage struct {
|
||||
Update *proto.SyncResponse
|
||||
NetworkMap *types.NetworkMap
|
||||
PeerManager *nbpeer.Manager
|
||||
PolicyManager *nbpeer.PolicyManager
|
||||
GroupManager *nbpeer.GroupManager
|
||||
PeerManager *peers.Manager
|
||||
PolicyManager *policies.Manager
|
||||
GroupManager *groups.Manager
|
||||
}
|
||||
|
||||
type UpdateChannel struct {
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
package accounts
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/netbirdio/netbird/management/server/integrations/extra_settings"
|
||||
"github.com/netbirdio/netbird/management/server/types"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
)
|
||||
|
||||
type Manager interface {
|
||||
GetExtraSettingsManager() extra_settings.Manager
|
||||
GetSettings(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID string) (*types.Settings, error)
|
||||
GetExtraSettings(ctx context.Context, tx db.Transaction, accountID string) (*types.ExtraSettings, error)
|
||||
UpdateExtraSettings(ctx context.Context, accountID, userID string, extraSettings *types.ExtraSettings) (bool, error)
|
||||
UpdateSettings(ctx context.Context, tx db.Transaction, settings *types.Settings) (*types.Settings, error)
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
package accounts
|
||||
@@ -8,7 +8,6 @@ import (
|
||||
"github.com/netbirdio/netbird/management/server/integrations/extra_settings"
|
||||
types2 "github.com/netbirdio/netbird/management/server/types"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/modules/accounts/settings/types"
|
||||
"github.com/netbirdio/management-refactor/internals/modules/users"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/activity"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package manager
|
||||
|
||||
import (
|
||||
"github.com/netbirdio/management-refactor/internals/modules/accounts/settings/types"
|
||||
"github.com/netbirdio/management-refactor/internals/modules/accounts/settings"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
)
|
||||
|
||||
type Repository interface {
|
||||
RunInTx(fn func(tx db.Transaction) error) error
|
||||
GetAccountSettings(tx db.Transaction, strength db.LockingStrength, accountID string) (*types.Settings, error)
|
||||
UpdateSettings(tx db.Transaction, settings *types.Settings) (*types.Settings, error)
|
||||
GetAccountSettings(tx db.Transaction, strength db.LockingStrength, accountID string) (*settings.Settings, error)
|
||||
UpdateSettings(tx db.Transaction, settings *settings.Settings) (*settings.Settings, error)
|
||||
}
|
||||
|
||||
type repository struct {
|
||||
@@ -23,13 +23,13 @@ func (r *repository) RunInTx(fn func(tx db.Transaction) error) error {
|
||||
return r.store.RunInTx(fn)
|
||||
}
|
||||
|
||||
func (r *repository) GetAccountSettings(tx db.Transaction, strength db.LockingStrength, accountID string) (*types.Settings, error) {
|
||||
var settings types.Settings
|
||||
func (r *repository) GetAccountSettings(tx db.Transaction, strength db.LockingStrength, accountID string) (*settings.Settings, error) {
|
||||
var settings settings.Settings
|
||||
err := r.store.GetOne(tx, strength, &settings, "account_id = ?", accountID)
|
||||
return &settings, err
|
||||
}
|
||||
|
||||
func (r *repository) UpdateSettings(tx db.Transaction, settings *types.Settings) (*types.Settings, error) {
|
||||
func (r *repository) UpdateSettings(tx db.Transaction, settings *settings.Settings) (*settings.Settings, error) {
|
||||
err := r.store.Update(tx, settings)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
||||
@@ -1,94 +0,0 @@
|
||||
package peers
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
nbcontext "github.com/netbirdio/netbird/management/server/context"
|
||||
"github.com/netbirdio/netbird/management/server/groups"
|
||||
"github.com/netbirdio/netbird/management/server/http/api"
|
||||
"github.com/netbirdio/netbird/management/server/http/util"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/permissions"
|
||||
)
|
||||
|
||||
type handler struct {
|
||||
manager *Manager
|
||||
permissionsManager permissions.Manager
|
||||
}
|
||||
|
||||
func newHandler(manager *Manager, permissionsManager permissions.Manager) *handler {
|
||||
return &handler{
|
||||
manager: manager,
|
||||
permissionsManager: permissionsManager,
|
||||
}
|
||||
}
|
||||
|
||||
func (h *handler) RegisterEndpoints(router *mux.Router) {
|
||||
router.HandleFunc("/peers", h.getAllPeers).Methods("GET", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}", h.getPeer).Methods("GET", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}", h.updatePeer).Methods("PUT", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}", h.deletePeer).Methods("DELETE", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}/accessible-peers", h.getAccessiblePeers).Methods("GET", "OPTIONS")
|
||||
}
|
||||
|
||||
func (h *handler) getAllPeers(w http.ResponseWriter, r *http.Request) {
|
||||
userAuth, err := nbcontext.GetUserAuthFromContext(r.Context())
|
||||
if err != nil {
|
||||
util.WriteError(r.Context(), err, w)
|
||||
return
|
||||
}
|
||||
|
||||
nameFilter := r.URL.Query().Get("name")
|
||||
ipFilter := r.URL.Query().Get("ip")
|
||||
|
||||
peers, err := h.manager.GetFilteredPeers(r.Context(), nil, db.LockingStrengthShare, userAuth.AccountId, nameFilter, ipFilter)
|
||||
if err != nil {
|
||||
util.WriteError(r.Context(), err, w)
|
||||
return
|
||||
}
|
||||
|
||||
dnsDomain := h.accountManager.GetDNSDomain()
|
||||
|
||||
grps, _ := h.accountManager.GetAllGroups(r.Context(), accountID, userID)
|
||||
|
||||
grpsInfoMap := groups.ToGroupsInfoMap(grps, len(peers))
|
||||
respBody := make([]*api.PeerBatch, 0, len(peers))
|
||||
for _, peer := range peers {
|
||||
peerToReturn, err := h.checkPeerStatus(peer)
|
||||
if err != nil {
|
||||
util.WriteError(r.Context(), err, w)
|
||||
return
|
||||
}
|
||||
|
||||
respBody = append(respBody, toPeerListItemResponse(peerToReturn, grpsInfoMap[peer.ID], dnsDomain, 0))
|
||||
}
|
||||
|
||||
validPeersMap, err := h.accountManager.GetValidatedPeers(r.Context(), accountID)
|
||||
if err != nil {
|
||||
log.WithContext(r.Context()).Errorf("failed to list appreoved peers: %v", err)
|
||||
util.WriteError(r.Context(), fmt.Errorf("internal error"), w)
|
||||
return
|
||||
}
|
||||
h.setApprovalRequiredFlag(respBody, validPeersMap)
|
||||
|
||||
util.WriteJSONObject(r.Context(), w, respBody)
|
||||
}
|
||||
|
||||
func (h *handler) getPeer(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
|
||||
func (h *handler) updatePeer(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
|
||||
func (h *handler) deletePeer(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
|
||||
func (h *handler) getAccessiblePeers(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package peers
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
)
|
||||
|
||||
type Manager interface {
|
||||
GetPeer(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID, peerID string) (*Peer, error)
|
||||
GetPeers(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID string) ([]*Peer, error)
|
||||
GetFilteredPeers(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID, nameFilter, ipFilter string) ([]*Peer, error)
|
||||
UpdatePeer(ctx context.Context, tx db.Transaction, peer *Peer) error
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package manager
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/shared/permissions"
|
||||
)
|
||||
|
||||
type handler struct {
|
||||
manager *Manager
|
||||
permissionsManager permissions.Manager
|
||||
}
|
||||
|
||||
func newHandler(manager *Manager, permissionsManager permissions.Manager) *handler {
|
||||
return &handler{
|
||||
manager: manager,
|
||||
permissionsManager: permissionsManager,
|
||||
}
|
||||
}
|
||||
|
||||
func (h *handler) RegisterEndpoints(router *mux.Router) {
|
||||
router.HandleFunc("/peers", h.getAllPeers).Methods("GET", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}", h.getPeer).Methods("GET", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}", h.updatePeer).Methods("PUT", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}", h.deletePeer).Methods("DELETE", "OPTIONS")
|
||||
router.HandleFunc("/peers/{peerId}/accessible-peers", h.getAccessiblePeers).Methods("GET", "OPTIONS")
|
||||
}
|
||||
|
||||
func (h *handler) getAllPeers(w http.ResponseWriter, r *http.Request) {}
|
||||
|
||||
func (h *handler) getPeer(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
|
||||
func (h *handler) updatePeer(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
|
||||
func (h *handler) deletePeer(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
|
||||
func (h *handler) getAccessiblePeers(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
}
|
||||
@@ -1,11 +1,11 @@
|
||||
package peers
|
||||
package manager
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
|
||||
"github.com/netbirdio/management-refactor/internals/modules/peers/types"
|
||||
"github.com/netbirdio/management-refactor/internals/modules/peers"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/activity"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/permissions"
|
||||
@@ -14,6 +14,8 @@ import (
|
||||
|
||||
var log = logging.LoggerForThisPackage()
|
||||
|
||||
var _ peers.Manager = (*Manager)(nil)
|
||||
|
||||
type Manager struct {
|
||||
repo Repository
|
||||
eventManager *activity.Manager
|
||||
@@ -27,33 +29,18 @@ func NewManager(store *db.Store, router *mux.Router, permissionsManager permissi
|
||||
return m
|
||||
}
|
||||
|
||||
func (m *Manager) GetPeer(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID, peerID string) (*types.Peer, error) {
|
||||
func (m *Manager) GetPeer(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID, peerID string) (*peers.Peer, error) {
|
||||
return m.repo.GetPeerByID(tx, strength, accountID, peerID)
|
||||
}
|
||||
|
||||
func (m *Manager) GetPeers(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID string) ([]*types.Peer, error) {
|
||||
func (m *Manager) GetPeers(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID string) ([]*peers.Peer, error) {
|
||||
return m.repo.GetPeers(tx, strength, accountID)
|
||||
}
|
||||
|
||||
func (m *Manager) GetFilteredPeers(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID, nameFilter, ipFilter string) ([]*types.Peer, error) {
|
||||
func (m *Manager) GetFilteredPeers(ctx context.Context, tx db.Transaction, strength db.LockingStrength, accountID, nameFilter, ipFilter string) ([]*peers.Peer, error) {
|
||||
return m.repo.GetFilteredPeers(tx, strength, accountID, nameFilter, ipFilter)
|
||||
}
|
||||
|
||||
func (m *Manager) UpdatePeer(ctx context.Context, tx db.Transaction, peer *types.Peer) error {
|
||||
validateInput
|
||||
validatePermissions
|
||||
err := m.repo.RunInTx(func(tx db.Transaction) error {
|
||||
othermanager.UpdatePeers
|
||||
ourmanager.UpdateGroup
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err := sendPeerUpdateEvent(tx, peer) // -> goes to peerUpdtaeChannel
|
||||
if err != nil {
|
||||
log.Errorf("Failed to send peer update event: %v", err)
|
||||
}
|
||||
|
||||
func (m *Manager) UpdatePeer(ctx context.Context, tx db.Transaction, peer *peers.Peer) error {
|
||||
return m.repo.UpdatePeer(tx, peer)
|
||||
}
|
||||
+13
-13
@@ -1,16 +1,16 @@
|
||||
package peers
|
||||
package manager
|
||||
|
||||
import (
|
||||
"github.com/netbirdio/management-refactor/internals/modules/peers/types"
|
||||
"github.com/netbirdio/management-refactor/internals/modules/peers"
|
||||
"github.com/netbirdio/management-refactor/internals/shared/db"
|
||||
)
|
||||
|
||||
type Repository interface {
|
||||
RunInTx(fn func(tx db.Transaction) error) error
|
||||
GetPeerByID(tx db.Transaction, strength db.LockingStrength, accountID, peerId string) (*types.Peer, error)
|
||||
GetPeers(tx db.Transaction, strength db.LockingStrength, accountID string) ([]*types.Peer, error)
|
||||
GetFilteredPeers(tx db.Transaction, strength db.LockingStrength, accountID string, nameFilter, ipFilter string) ([]*types.Peer, error)
|
||||
UpdatePeer(tx db.Transaction, peer *types.Peer) error
|
||||
GetPeerByID(tx db.Transaction, strength db.LockingStrength, accountID, peerId string) (*peers.Peer, error)
|
||||
GetPeers(tx db.Transaction, strength db.LockingStrength, accountID string) ([]*peers.Peer, error)
|
||||
GetFilteredPeers(tx db.Transaction, strength db.LockingStrength, accountID string, nameFilter, ipFilter string) ([]*peers.Peer, error)
|
||||
UpdatePeer(tx db.Transaction, peer *peers.Peer) error
|
||||
}
|
||||
|
||||
type repository struct {
|
||||
@@ -25,8 +25,8 @@ func (r *repository) RunInTx(fn func(tx db.Transaction) error) error {
|
||||
return r.store.RunInTx(fn)
|
||||
}
|
||||
|
||||
func (r *repository) GetPeerByID(tx db.Transaction, strength db.LockingStrength, accountID, peerId string) (*types.Peer, error) {
|
||||
var peer types.Peer
|
||||
func (r *repository) GetPeerByID(tx db.Transaction, strength db.LockingStrength, accountID, peerId string) (*peers.Peer, error) {
|
||||
var peer peers.Peer
|
||||
err := r.store.GetOne(tx, strength, &peer, "account_id = ? AND id = ?", accountID, peerId)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -34,8 +34,8 @@ func (r *repository) GetPeerByID(tx db.Transaction, strength db.LockingStrength,
|
||||
return &peer, nil
|
||||
}
|
||||
|
||||
func (r *repository) GetPeers(tx db.Transaction, strength db.LockingStrength, accountID string) ([]*types.Peer, error) {
|
||||
var peers []*types.Peer
|
||||
func (r *repository) GetPeers(tx db.Transaction, strength db.LockingStrength, accountID string) ([]*peers.Peer, error) {
|
||||
var peers []*peers.Peer
|
||||
err := r.store.GetMany(tx, strength, &peers, "account_id = ?", accountID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -43,7 +43,7 @@ func (r *repository) GetPeers(tx db.Transaction, strength db.LockingStrength, ac
|
||||
return peers, nil
|
||||
}
|
||||
|
||||
func (r *repository) GetFilteredPeers(tx db.Transaction, strength db.LockingStrength, accountID string, nameFilter, ipFilter string) ([]*types.Peer, error) {
|
||||
func (r *repository) GetFilteredPeers(tx db.Transaction, strength db.LockingStrength, accountID string, nameFilter, ipFilter string) ([]*peers.Peer, error) {
|
||||
query := "account_id = ?"
|
||||
args := []interface{}{accountID}
|
||||
|
||||
@@ -57,7 +57,7 @@ func (r *repository) GetFilteredPeers(tx db.Transaction, strength db.LockingStre
|
||||
args = append(args, ipFilter)
|
||||
}
|
||||
|
||||
var peers []*types.Peer
|
||||
var peers []*peers.Peer
|
||||
err := r.store.GetMany(tx, strength, &peers, query, args)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -65,6 +65,6 @@ func (r *repository) GetFilteredPeers(tx db.Transaction, strength db.LockingStre
|
||||
return peers, nil
|
||||
}
|
||||
|
||||
func (r *repository) UpdatePeer(tx db.Transaction, peer *types.Peer) error {
|
||||
func (r *repository) UpdatePeer(tx db.Transaction, peer *peers.Peer) error {
|
||||
return r.store.Update(tx, peer)
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package types
|
||||
package peers
|
||||
|
||||
import (
|
||||
"net"
|
||||
@@ -1,4 +1,4 @@
|
||||
package types
|
||||
package peers
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
@@ -0,0 +1,4 @@
|
||||
package policies
|
||||
|
||||
type Manager interface {
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
package setup_keys
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user