From 5e85934e35cac989af13dc79b71482116c055235 Mon Sep 17 00:00:00 2001 From: tx7do Date: Tue, 14 May 2024 16:37:22 +0800 Subject: [PATCH] feat: refactor. --- bootstrap_test.go | 44 +++++++++++++++++++++++++++++++++++++++--- config/service_info.go | 8 ++++++++ tag.bat | 2 +- 3 files changed, 50 insertions(+), 4 deletions(-) diff --git a/bootstrap_test.go b/bootstrap_test.go index dfe1097..8e2c523 100644 --- a/bootstrap_test.go +++ b/bootstrap_test.go @@ -1,19 +1,57 @@ package bootstrap import ( + "testing" + "github.com/go-kratos/kratos/v2" "github.com/go-kratos/kratos/v2/log" "github.com/go-kratos/kratos/v2/registry" + v1 "github.com/tx7do/kratos-bootstrap/api/gen/go/conf/v1" - "testing" + "github.com/tx7do/kratos-bootstrap/config" ) -func initApp(logger log.Logger, registrar registry.Registrar, bootstrap *v1.Bootstrap) (*kratos.App, func(), error) { +func initApp(logger log.Logger, registrar registry.Registrar, _ *v1.Bootstrap) (*kratos.App, func(), error) { app := NewApp(logger, registrar) return app, func() { }, nil } func TestBootstrap(t *testing.T) { - Bootstrap(initApp) + serviceName := "test" + version := "v0.0.1" + Bootstrap(initApp, &serviceName, &version) +} + +type CustomConfig struct { + Cfg string `protobuf:"bytes,1,opt,name=cfg,proto3" json:"cfg,omitempty"` +} + +func initAppEx(logger log.Logger, registrar registry.Registrar, _ *v1.Bootstrap, _ *CustomConfig) (*kratos.App, func(), error) { + app := NewApp(logger, registrar) + return app, func() { + }, nil +} + +func TestCustomBootstrap(t *testing.T) { + customCfg := &CustomConfig{} + config.RegisterConfig(customCfg) + + Service.SetName("test") + Service.SetVersion("v0.0.1") + + // bootstrap + cfg, ll, reg := DoBootstrap(Service) + + // init app + app, cleanup, err := initAppEx(ll, reg, cfg, customCfg) + if err != nil { + panic(err) + } + defer cleanup() + + // run the app. + if err = app.Run(); err != nil { + panic(err) + } } diff --git a/config/service_info.go b/config/service_info.go index 73805d0..3f0ad1a 100644 --- a/config/service_info.go +++ b/config/service_info.go @@ -21,6 +21,14 @@ func NewServiceInfo(name, version, id string) *ServiceInfo { } } +func (s *ServiceInfo) SetName(name string) { + s.Name = name +} + +func (s *ServiceInfo) SetVersion(version string) { + s.Version = version +} + func (s *ServiceInfo) GetInstanceId() string { return s.Id + "." + s.Name } diff --git a/tag.bat b/tag.bat index ad7f2d4..37e4bd0 100644 --- a/tag.bat +++ b/tag.bat @@ -1,4 +1,4 @@ -git tag v0.3.8 +git tag v0.3.9 git tag api/v0.0.2 --force