feat!: Provide logger through depinject (#15818)

Co-authored-by: Julien Robert <julien@rbrt.fr>
This commit is contained in:
Facundo Medica
2023-04-24 09:42:55 +00:00
committed by GitHub
co-authored by Julien Robert
parent 8e896f4d31
commit af3122aa6c
58 changed files with 503 additions and 176 deletions
+11 -3
View File
@@ -182,7 +182,11 @@ func DefaultConfigWithAppConfig(appConfig depinject.Config) (Config, error) {
interfaceRegistry codectypes.InterfaceRegistry
)
if err := depinject.Inject(appConfig,
if err := depinject.Inject(
depinject.Configs(
appConfig,
depinject.Supply(log.NewNopLogger()),
),
&appBuilder,
&txConfig,
&cdc,
@@ -203,11 +207,15 @@ func DefaultConfigWithAppConfig(appConfig depinject.Config) (Config, error) {
cfg.AppConstructor = func(val ValidatorI) servertypes.Application {
// we build a unique app instance for every validator here
var appBuilder *runtime.AppBuilder
if err := depinject.Inject(appConfig, &appBuilder); err != nil {
if err := depinject.Inject(
depinject.Configs(
appConfig,
depinject.Supply(val.GetCtx().Logger),
),
&appBuilder); err != nil {
panic(err)
}
app := appBuilder.Build(
val.GetCtx().Logger,
dbm.NewMemDB(),
nil,
baseapp.SetPruning(pruningtypes.NewPruningOptionsFromString(val.GetAppConfig().Pruning)),
+3 -7
View File
@@ -13,7 +13,6 @@ import (
cmttypes "github.com/cometbft/cometbft/types"
dbm "github.com/cosmos/cosmos-db"
"cosmossdk.io/log"
"github.com/cosmos/cosmos-sdk/client/flags"
"github.com/cosmos/cosmos-sdk/codec"
codectypes "github.com/cosmos/cosmos-sdk/codec/types"
@@ -118,17 +117,14 @@ func SetupWithConfiguration(appConfig depinject.Config, startupConfig StartupCon
codec codec.Codec
)
if err := depinject.Inject(
appConfig,
append(extraOutputs, &appBuilder, &codec)...,
); err != nil {
if err := depinject.Inject(appConfig, append(extraOutputs, &appBuilder, &codec)...); err != nil {
return nil, fmt.Errorf("failed to inject dependencies: %w", err)
}
if startupConfig.BaseAppOption != nil {
app = appBuilder.Build(log.NewNopLogger(), startupConfig.DB, nil, startupConfig.BaseAppOption)
app = appBuilder.Build(startupConfig.DB, nil, startupConfig.BaseAppOption)
} else {
app = appBuilder.Build(log.NewNopLogger(), startupConfig.DB, nil)
app = appBuilder.Build(startupConfig.DB, nil)
}
if err := app.Load(true); err != nil {
return nil, fmt.Errorf("failed to load app: %w", err)