Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 0d9985f

Browse files
committedMar 1, 2024·
add debug
Signed-off-by: Mikhail Scherba <[email protected]>
1 parent 54be687 commit 0d9985f

File tree

4 files changed

+23
-2
lines changed

4 files changed

+23
-2
lines changed
 

‎pkg/module_manager/models/hooks/kind/shellhook.go

+5
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,11 @@ func (sh *ShellHook) WithHookController(hookController controller.HookController
4545
sh.HookController = hookController
4646
}
4747

48+
// HookControllerIsSet checks dependency "hook controller" for shell-operator
49+
func (sh *ShellHook) HookControllerIsSet() bool {
50+
return sh.HookController != nil
51+
}
52+
4853
// WithTmpDir injects temp directory from operator
4954
func (sh *ShellHook) WithTmpDir(tmpDir string) {
5055
sh.TmpDir = tmpDir

‎pkg/module_manager/models/modules/basic.go

+13-1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ type BasicModule struct {
5050

5151
hooks *HooksStorage
5252

53+
hooksReady bool
54+
5355
// dependency
5456
dc *hooks.HookExecutionDependencyContainer
5557
}
@@ -67,7 +69,7 @@ func NewBasicModule(name, path string, order uint32, staticValues utils.Values,
6769
hookErrors: make(map[string]error),
6870
synchronizationState: NewSynchronizationState(),
6971
},
70-
hooks: newHooksStorage(),
72+
hooks: newHooksStorage(),
7173
}
7274
}
7375

@@ -110,6 +112,16 @@ func (bm *BasicModule) ResetState() {
110112
}
111113
}
112114

115+
// HooksReady sets hooksReady flag to true
116+
func (bm *BasicModule) SetHooksReady() {
117+
bm.hooksReady = true
118+
}
119+
120+
// HooksAreReady checks if hooksReady flag is set to true
121+
func (bm *BasicModule) HooksAreReady() bool {
122+
return bm.hooksReady
123+
}
124+
113125
// RegisterHooks find and registers all module hooks from a filesystem or GoHook Registry
114126
func (bm *BasicModule) RegisterHooks(logger *log.Entry) ([]*hooks.ModuleHook, error) {
115127
if bm.hooks.registered {

‎pkg/module_manager/module_manager.go

+3
Original file line numberDiff line numberDiff line change
@@ -964,6 +964,9 @@ func (mm *ModuleManager) LoopByBinding(binding BindingType, fn func(gh *hooks.Gl
964964

965965
for _, moduleName := range mm.enabledModules.GetAll() {
966966
m := mm.GetModule(moduleName)
967+
if !m.HooksAreReady() {
968+
continue
969+
}
967970
moduleHooks := m.GetHooks(binding)
968971
for _, mh := range moduleHooks {
969972
if mh == nil {

‎pkg/module_manager/module_manager_hooks.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,9 @@ func (mm *ModuleManager) RegisterModuleHooks(ml *modules.BasicModule, logLabels
133133
log.Infof("module %s, hook %v controller not attached", ml.GetName(), hk)
134134

135135
hk.WithHookController(hookCtrl)
136+
ml.SetHooksReady()
136137
hk.WithTmpDir(mm.TempDir)
137-
log.Infof("module %s, hook %v controller not attached", ml.GetName(), hk)
138+
log.Infof("module %s, hook %v controller attached", ml.GetName(), hk)
138139

139140
mm.dependencies.MetricStorage.GaugeSet(
140141
"{PREFIX}binding_count",

0 commit comments

Comments
 (0)
Please sign in to comment.