@@ -113,43 +113,7 @@ func (r *ScanReconciler) Reconcile(req ctrl.Request) (ctrl.Result, error) {
113113 case "Parsing" :
114114 err = r .checkIfParsingIsCompleted (& scan )
115115 case "ParseCompleted" :
116- // Hook status erstellen
117-
118- var scanCompletionHooks executionv1.ScanCompletionHookList
119-
120- if err := r .List (ctx , & scanCompletionHooks , client .InNamespace (scan .Namespace )); err != nil {
121- r .Log .V (7 ).Info ("Unable to fetch ScanCompletionHooks" )
122- return ctrl.Result {}, err
123- }
124-
125- r .Log .Info ("Found ScanCompletionHooks" , "ScanCompletionHooks" , len (scanCompletionHooks .Items ))
126-
127- readAndWriteHooks := []executionv1.ScanCompletionHook {}
128- // filter all ReadAndWriteHooks in the scamCompletionHooks list
129- for _ , hook := range scanCompletionHooks .Items {
130- if hook .Spec .Type == executionv1 .ReadAndWrite {
131- readAndWriteHooks = append (readAndWriteHooks , hook )
132- }
133- }
134-
135- r .Log .Info ("Found ReadAndWriteHooks" , "ReadAndWriteHooks" , len (readAndWriteHooks ))
136-
137- hookStatus := []executionv1.HookStatus {}
138-
139- for _ , hook := range readAndWriteHooks {
140- hookStatus = append (hookStatus , executionv1.HookStatus {
141- HookName : hook .Name ,
142- State : executionv1 .Pending ,
143- })
144- }
145-
146- scan .Status .State = "ReadAndWriteHookProcessing"
147- scan .Status .ReadAndWriteHookStatus = hookStatus
148-
149- if err := r .Status ().Update (ctx , & scan ); err != nil {
150- r .Log .Error (err , "unable to update Scan status" )
151- return ctrl.Result {}, err
152- }
116+ err = r .setHookStatus (& scan )
153117 case "ReadAndWriteHookProcessing" :
154118 // First Array entry which is not Completed.
155119 var nonCompletedHook * executionv1.HookStatus
@@ -1191,3 +1155,45 @@ func (r *ScanReconciler) SetupWithManager(mgr ctrl.Manager) error {
11911155 Owns (& batch.Job {}).
11921156 Complete (r )
11931157}
1158+
1159+ func (r * ScanReconciler ) setHookStatus (scan * executionv1.Scan ) error {
1160+ // Set (pending) Hook status on the scan
1161+ ctx := context .Background ()
1162+ var scanCompletionHooks executionv1.ScanCompletionHookList
1163+
1164+ if err := r .List (ctx , & scanCompletionHooks , client .InNamespace (scan .Namespace )); err != nil {
1165+ r .Log .V (7 ).Info ("Unable to fetch ScanCompletionHooks" )
1166+ return err
1167+ }
1168+
1169+ r .Log .Info ("Found ScanCompletionHooks" , "ScanCompletionHooks" , len (scanCompletionHooks .Items ))
1170+
1171+ readAndWriteHooks := []executionv1.ScanCompletionHook {}
1172+ // filter all ReadAndWriteHooks in the scamCompletionHooks list
1173+ for _ , hook := range scanCompletionHooks .Items {
1174+ if hook .Spec .Type == executionv1 .ReadAndWrite {
1175+ readAndWriteHooks = append (readAndWriteHooks , hook )
1176+ }
1177+ }
1178+
1179+ r .Log .Info ("Found ReadAndWriteHooks" , "ReadAndWriteHooks" , len (readAndWriteHooks ))
1180+
1181+ hookStatus := []executionv1.HookStatus {}
1182+
1183+ for _ , hook := range readAndWriteHooks {
1184+ hookStatus = append (hookStatus , executionv1.HookStatus {
1185+ HookName : hook .Name ,
1186+ State : executionv1 .Pending ,
1187+ })
1188+ }
1189+
1190+ scan .Status .State = "ReadAndWriteHookProcessing"
1191+ scan .Status .ReadAndWriteHookStatus = hookStatus
1192+
1193+ if err := r .Status ().Update (ctx , scan ); err != nil {
1194+ r .Log .Error (err , "unable to update Scan status" )
1195+ return err
1196+ }
1197+
1198+ return nil
1199+ }
0 commit comments