feat: module circuit breaker (#14521)

Co-authored-by: Aaron Craelius <aaron@regen.network>
Co-authored-by: Julien Robert <julien@rbrt.fr>
Co-authored-by: Sam Ricotta <samanthalricotta@gmail.com>
Co-authored-by: samricotta <37125168+samricotta@users.noreply.github.com>
Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
This commit is contained in:
Marko
2023-05-15 14:38:48 +00:00
committed by GitHub
co-authored by Aaron Craelius Julien Robert Sam Ricotta samricotta Facundo Medica
parent d818a628a1
commit b8e15a7930
42 changed files with 2745 additions and 542 deletions
+13
View File
@@ -6,6 +6,7 @@ import (
authmodulev1 "cosmossdk.io/api/cosmos/auth/module/v1"
authzmodulev1 "cosmossdk.io/api/cosmos/authz/module/v1"
bankmodulev1 "cosmossdk.io/api/cosmos/bank/module/v1"
circuitmodulev1 "cosmossdk.io/api/cosmos/circuit/module/v1"
consensusmodulev1 "cosmossdk.io/api/cosmos/consensus/module/v1"
distrmodulev1 "cosmossdk.io/api/cosmos/distribution/module/v1"
evidencemodulev1 "cosmossdk.io/api/cosmos/evidence/module/v1"
@@ -43,6 +44,7 @@ var beginBlockOrder = []string{
"params",
"consensus",
"vesting",
"circuit",
}
var endBlockersOrder = []string{
@@ -64,6 +66,7 @@ var endBlockersOrder = []string{
"consensus",
"upgrade",
"vesting",
"circuit",
}
var initGenesisOrder = []string{
@@ -85,6 +88,7 @@ var initGenesisOrder = []string{
"consensus",
"upgrade",
"vesting",
"circuit",
}
type appConfig struct {
@@ -264,6 +268,15 @@ func NFTModule() ModuleOption {
}
}
func CircuitModule() ModuleOption {
return func(config *appConfig) {
config.moduleConfigs["circuit"] = &appv1alpha1.ModuleConfig{
Name: "circuit",
Config: appconfig.WrapAny(&circuitmodulev1.Module{}),
}
}
}
func OmitInitGenesis() ModuleOption {
return func(config *appConfig) {
config.setInitGenesis = false