working commit

This commit is contained in:
2026-06-05 18:29:35 +02:00
parent 7d8abba003
commit 5623efe825
8 changed files with 66 additions and 76 deletions
+6 -6
View File
@@ -5,21 +5,21 @@ SUFFIXES = .go
OBJEXT= none OBJEXT= none
sbin_PROGRAMS = mbased mbasedump mbaserestore mbaseadmin sbin_PROGRAMS = mbased mbasedump mbaseadmin
bin_PROGRAMS = mbasectl bin_PROGRAMS = mbasectl
mbased_SOURCES = cmd/mbased/main.go mbased_SOURCES = cmd/mbased/main.go
mbased$(EXEEXT): $(mbased_SOURCES) $(EXTRA_mbased_SOURCES) mbased$(EXEEXT): $(mbased_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbased$(EXEEXT) $(mbased_SOURCES) env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbased$(EXEEXT) $(mbased_SOURCES)
mbasedump_SOURCES = cmd/mbasedump/maindump.go mbasedump_SOURCES = \
cmd/mbasedump/printr.go \
cmd/mbasedump/main.go \
cmd/mbasedump/util.go
mbasedump$(EXEEXT): $(mbasedump_SOURCES) $(EXTRA_mbased_SOURCES) mbasedump$(EXEEXT): $(mbasedump_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbasedump$(EXEEXT) $(mbasedump_SOURCES) env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbasedump$(EXEEXT) $(mbasedump_SOURCES)
mbaserestore_SOURCES = cmd/mbaserestore/mainrestore.go
mbaserestore$(EXEEXT): $(mbaserestore_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbaserestore$(EXEEXT) $(mbaserestore_SOURCES)
mbasectl_SOURCES = cmd/mbasectl/main.go \ mbasectl_SOURCES = cmd/mbasectl/main.go \
cmd/mbasectl/account.go \ cmd/mbasectl/account.go \
cmd/mbasectl/grant.go \ cmd/mbasectl/grant.go \
+9 -13
View File
@@ -90,8 +90,7 @@ PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@ build_triplet = @build@
host_triplet = @host@ host_triplet = @host@
sbin_PROGRAMS = mbased$(EXEEXT) mbasedump$(EXEEXT) \ sbin_PROGRAMS = mbased$(EXEEXT) mbasedump$(EXEEXT) mbaseadmin$(EXEEXT)
mbaserestore$(EXEEXT) mbaseadmin$(EXEEXT)
bin_PROGRAMS = mbasectl$(EXEEXT) bin_PROGRAMS = mbasectl$(EXEEXT)
subdir = . subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -120,9 +119,6 @@ mbased_LDADD = $(LDADD)
am_mbasedump_OBJECTS = am_mbasedump_OBJECTS =
mbasedump_OBJECTS = $(am_mbasedump_OBJECTS) mbasedump_OBJECTS = $(am_mbasedump_OBJECTS)
mbasedump_LDADD = $(LDADD) mbasedump_LDADD = $(LDADD)
am_mbaserestore_OBJECTS =
mbaserestore_OBJECTS = $(am_mbaserestore_OBJECTS)
mbaserestore_LDADD = $(LDADD)
AM_V_P = $(am__v_P_@AM_V@) AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false am__v_P_0 = false
@@ -151,11 +147,9 @@ am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 = am__v_CCLD_1 =
SOURCES = $(mbaseadmin_SOURCES) $(mbasectl_SOURCES) $(mbased_SOURCES) \ SOURCES = $(mbaseadmin_SOURCES) $(mbasectl_SOURCES) $(mbased_SOURCES) \
$(EXTRA_mbased_SOURCES) $(mbasedump_SOURCES) \ $(EXTRA_mbased_SOURCES) $(mbasedump_SOURCES)
$(mbaserestore_SOURCES)
DIST_SOURCES = $(mbaseadmin_SOURCES) $(mbasectl_SOURCES) \ DIST_SOURCES = $(mbaseadmin_SOURCES) $(mbasectl_SOURCES) \
$(mbased_SOURCES) $(EXTRA_mbased_SOURCES) $(mbasedump_SOURCES) \ $(mbased_SOURCES) $(EXTRA_mbased_SOURCES) $(mbasedump_SOURCES)
$(mbaserestore_SOURCES)
am__can_run_installinfo = \ am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \ case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \ n|no|NO) false;; \
@@ -327,8 +321,11 @@ top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign no-dependencies no-installinfo AUTOMAKE_OPTIONS = foreign no-dependencies no-installinfo
SUFFIXES = .go SUFFIXES = .go
mbased_SOURCES = cmd/mbased/main.go mbased_SOURCES = cmd/mbased/main.go
mbasedump_SOURCES = cmd/mbasedump/maindump.go mbasedump_SOURCES = \
mbaserestore_SOURCES = cmd/mbaserestore/mainrestore.go cmd/mbasedump/printr.go \
cmd/mbasedump/main.go \
cmd/mbasedump/util.go
mbasectl_SOURCES = cmd/mbasectl/main.go \ mbasectl_SOURCES = cmd/mbasectl/main.go \
cmd/mbasectl/account.go \ cmd/mbasectl/account.go \
cmd/mbasectl/grant.go \ cmd/mbasectl/grant.go \
@@ -859,10 +856,9 @@ uninstall-am: uninstall-binPROGRAMS uninstall-sbinPROGRAMS
mbased$(EXEEXT): $(mbased_SOURCES) $(EXTRA_mbased_SOURCES) mbased$(EXEEXT): $(mbased_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbased$(EXEEXT) $(mbased_SOURCES) env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbased$(EXEEXT) $(mbased_SOURCES)
mbasedump$(EXEEXT): $(mbasedump_SOURCES) $(EXTRA_mbased_SOURCES) mbasedump$(EXEEXT): $(mbasedump_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbasedump$(EXEEXT) $(mbasedump_SOURCES) env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbasedump$(EXEEXT) $(mbasedump_SOURCES)
mbaserestore$(EXEEXT): $(mbaserestore_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=1 $(GO) build $(GOFLAGS) -o mbaserestore$(EXEEXT) $(mbaserestore_SOURCES)
mbasectl$(EXEEXT): $(mbasectl_SOURCES) $(EXTRA_mbased_SOURCES) mbasectl$(EXEEXT): $(mbasectl_SOURCES) $(EXTRA_mbased_SOURCES)
env CGO_ENABLED=0 $(GO) build $(GOFLAGS) -o mbasectl$(EXEEXT) $(mbasectl_SOURCES) env CGO_ENABLED=0 $(GO) build $(GOFLAGS) -o mbasectl$(EXEEXT) $(mbasectl_SOURCES)
+10 -10
View File
@@ -36,16 +36,16 @@ type ServiceConfig struct {
} }
type Config struct { type Config struct {
PackageVersion string `json:"packageVersion" yaml:"packageVersion"` PackageVersion string `json:"packageVersion" yaml:"packageVersion"`
Service ServiceConfig `json:"service" yaml:"service"` Service ServiceConfig `json:"service" yaml:"service"`
Networks Networks `json:"networks" yaml:"networks"` Networks Networks `json:"networks" yaml:"networks"`
Hostname string `json:"hostname" yaml:"hostname"` Hostname string `json:"hostname" yaml:"hostname"`
Debug bool `json:"debug" yaml:"debug"` Debug bool `json:"debug" yaml:"debug"`
Build string `json:"build" yaml:"build"` Build string `json:"build" yaml:"build"`
LogPath string `json:"logfile" yaml:"logfile"` LogPath string `json:"logfile" yaml:"logfile"`
RunPath string `json:"runfile" yaml:"runfile"` RunPath string `json:"runfile" yaml:"runfile"`
DataDir string `json:"datadir" yaml:"datadir"` DataDir string `json:"datadir" yaml:"datadir"`
Daemon bool `json:"daemon" yaml:"daemon"` Daemon bool `json:"daemon" yaml:"daemon"`
} }
var ( var (
+1 -1
View File
@@ -2,8 +2,8 @@ package handler
import ( import (
"mbase/app/logic" "mbase/app/logic"
"mbase/pkg/mbctl"
"mbase/pkg/logger" "mbase/pkg/logger"
"mbase/pkg/mbctl"
"google.golang.org/grpc" "google.golang.org/grpc"
) )
+5 -5
View File
@@ -25,12 +25,12 @@ import (
) )
type Server struct { type Server struct {
conf *config.Config conf *config.Config
lg *logic.Logic lg *logic.Logic
svc *service.Service svc *service.Service
hand *handler.Handler hand *handler.Handler
log *logger.Logger log *logger.Logger
nacl *netacl.NetACL nacl *netacl.NetACL
db *database.Database db *database.Database
x509cert []byte x509cert []byte
@@ -215,7 +215,7 @@ func (srv *Server) Build() error {
Logic: srv.lg, Logic: srv.lg,
X509Cert: srv.x509cert, X509Cert: srv.x509cert,
X509Key: srv.x509key, X509Key: srv.x509key,
NetACL: srv.nacl, NetACL: srv.nacl,
} }
srv.svc = service.NewService(serviceConfig) srv.svc = service.NewService(serviceConfig)
if err != nil { if err != nil {
+25 -30
View File
@@ -4,25 +4,25 @@
package main package main
import ( import (
"bytes"
"context"
"io"
"os" "os"
"path/filepath" "path/filepath"
"context"
"io"
"bytes"
"mbase/app/config" "mbase/app/config"
"mbase/app/database" "mbase/app/database"
"mbase/app/descriptor" "mbase/app/descriptor"
"mbase/pkg/auxtool" "mbase/pkg/auxtool"
"mbase/pkg/logger" "mbase/pkg/logger"
"go.yaml.in/yaml/v4"
"github.com/spf13/cobra" "github.com/spf13/cobra"
"go.yaml.in/yaml/v4"
) )
type Util struct { type Util struct {
rootCmd *cobra.Command rootCmd *cobra.Command
dumpDatabaseParams dumpDatabaseParams dumpDatabaseParams dumpDatabaseParams
restoreDatabaseParams restoreDatabaseParams restoreDatabaseParams restoreDatabaseParams
} }
@@ -73,20 +73,20 @@ func (util *Util) Exec(args []string) error {
} }
func (util *Util) DumpDatabase(cmd *cobra.Command, args []string) { func (util *Util) DumpDatabase(cmd *cobra.Command, args []string) {
util.dumpDatabaseParams.Filename = args[0] util.dumpDatabaseParams.Filename = args[0]
res, err := util.dumpDatabase(util.dumpDatabaseParams) res, err := util.dumpDatabase(util.dumpDatabaseParams)
printResponse(res, err) printResponse(res, err)
} }
type dumpDatabaseParams struct { type dumpDatabaseParams struct {
Filename string Filename string
} }
type dumpDatabaseResult struct {} type dumpDatabaseResult struct{}
func (util *Util) dumpDatabase(params dumpDatabaseParams) (dumpDatabaseResult, error) { func (util *Util) dumpDatabase(params dumpDatabaseParams) (dumpDatabaseResult, error) {
var err error var err error
res := dumpDatabaseResult{} res := dumpDatabaseResult{}
ctx := context.Background() ctx := context.Background()
conf := config.NewConfig() conf := config.NewConfig()
err = conf.ReadFile() err = conf.ReadFile()
@@ -137,24 +137,23 @@ func (util *Util) dumpDatabase(params dumpDatabaseParams) (dumpDatabaseResult, e
return res, err return res, err
} }
func (util *Util) RestoreDatabase(cmd *cobra.Command, args []string) { func (util *Util) RestoreDatabase(cmd *cobra.Command, args []string) {
util.restoreDatabaseParams.Filename = args[0] util.restoreDatabaseParams.Filename = args[0]
res, err := util.restoreDatabase(util.restoreDatabaseParams) res, err := util.restoreDatabase(util.restoreDatabaseParams)
printResponse(res, err) printResponse(res, err)
} }
type restoreDatabaseParams struct { type restoreDatabaseParams struct {
Filename string Filename string
DeleteAllRecords bool DeleteAllRecords bool
} }
type restoreDatabaseResult struct {} type restoreDatabaseResult struct{}
func (util *Util) restoreDatabase(params restoreDatabaseParams) (restoreDatabaseResult, error) { func (util *Util) restoreDatabase(params restoreDatabaseParams) (restoreDatabaseResult, error) {
var err error var err error
res := restoreDatabaseResult{} res := restoreDatabaseResult{}
ctx := context.Background() ctx := context.Background()
log := logger.NewLogger("restore") log := logger.NewLogger("restore")
conf := config.NewConfig() conf := config.NewConfig()
err = conf.ReadFile() err = conf.ReadFile()
@@ -214,7 +213,3 @@ func (util *Util) restoreDatabase(params restoreDatabaseParams) (restoreDatabase
} }
return res, err return res, err
} }
-1
View File
@@ -31,7 +31,6 @@ func NewLogger(subj string) *Logger {
} }
} }
func SetWriter(newOut io.WriteCloser) { func SetWriter(newOut io.WriteCloser) {
mtx.Lock() mtx.Lock()
output = newOut output = newOut
+10 -10
View File
@@ -4,24 +4,24 @@
package logger package logger
import ( import (
"os"
"testing" "testing"
"os"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )
func TestLogger(t *testing.T) { func TestLogger(t *testing.T) {
devNull, err := os.OpenFile("/dev/null", os.O_RDWR, 0666) devNull, err := os.OpenFile("/dev/null", os.O_RDWR, 0666)
require.NoError(t, err) require.NoError(t, err)
SetWriter(devNull) SetWriter(devNull)
logg := NewLogger("test") logg := NewLogger("test")
logg.Debugf("foo: %s", "bar") logg.Debugf("foo: %s", "bar")
} }
func BenchmarkLoggerL(b *testing.B) { func BenchmarkLoggerL(b *testing.B) {
devNull, err := os.OpenFile("/dev/null", os.O_RDWR, 0666) devNull, err := os.OpenFile("/dev/null", os.O_RDWR, 0666)
require.NoError(b, err) require.NoError(b, err)
SetWriter(devNull) SetWriter(devNull)
logg := NewLogger("test") logg := NewLogger("test")
for i := 0; i < b.N; i++ { for i := 0; i < b.N; i++ {
logg.Debugf("foo: %s", "bar") logg.Debugf("foo: %s", "bar")
@@ -29,8 +29,8 @@ func BenchmarkLoggerL(b *testing.B) {
} }
func BenchmarkLoggerP(b *testing.B) { func BenchmarkLoggerP(b *testing.B) {
devNull, err := os.OpenFile("/dev/null", os.O_RDWR, 0666) devNull, err := os.OpenFile("/dev/null", os.O_RDWR, 0666)
require.NoError(b, err) require.NoError(b, err)
logg := NewLogger("test") logg := NewLogger("test")
b.ResetTimer() b.ResetTimer()
b.RunParallel(func(pb *testing.PB) { b.RunParallel(func(pb *testing.PB) {