@@ -65,7 +65,6 @@ type ScanJobResult struct {
6565type ScanJobRequest struct {
6666 Workload client.Object
6767 Context context.Context
68- ContainerImages kube.ContainerImages
6968 ClusterSbomReport map [string ]v1alpha1.SbomReportData
7069}
7170
@@ -206,7 +205,7 @@ func (r *WorkloadController) reconcileWorkload(workloadKind kube.Kind) reconcile
206205 }
207206 log .V (1 ).Info ("Submitting a scan for the workload" , "workload" , workloadRef .Name )
208207 // sync all potential workload for scanning
209- r .SubmitScanJobChan <- ScanJobRequest {Workload : workloadObj , Context : ctx , ContainerImages : containerImages , ClusterSbomReport : reportsData }
208+ r .SubmitScanJobChan <- ScanJobRequest {Workload : workloadObj , Context : ctx , ClusterSbomReport : reportsData }
210209 // collect scan job processing results
211210 scanJobResult := <- r .ResultScanJobChan
212211 return scanJobResult .Result , scanJobResult .Error
@@ -228,7 +227,7 @@ func (r *WorkloadController) ProcessScanJob() {
228227 r .ResultScanJobChan <- ScanJobResult {Result : ctrl.Result {RequeueAfter : r .Config .ScanJobRetryAfter }, Error : nil }
229228 continue
230229 }
231- err = r .SubmitScanJob (workloadRequest .Context , workloadRequest .Workload , workloadRequest .ContainerImages , workloadRequest . ClusterSbomReport )
230+ err = r .SubmitScanJob (workloadRequest .Context , workloadRequest .Workload , workloadRequest .ClusterSbomReport )
232231 r .ResultScanJobChan <- ScanJobResult {Result : ctrl.Result {}, Error : err }
233232 }
234233}
@@ -249,12 +248,19 @@ func (r *WorkloadController) hasActiveScanJob(ctx context.Context, owner kube.Ob
249248 return false , nil , nil
250249}
251250
252- func (r * WorkloadController ) SubmitScanJob (ctx context.Context , owner client.Object , containerImages kube. ContainerImages , reusedReports map [string ]v1alpha1.SbomReportData ) error {
251+ func (r * WorkloadController ) SubmitScanJob (ctx context.Context , owner client.Object , reusedReports map [string ]v1alpha1.SbomReportData ) error {
253252
254253 log := r .Logger .WithValues ("kind" , owner .GetObjectKind ().GroupVersionKind ().Kind ,
255254 "name" , owner .GetName (), "namespace" , owner .GetNamespace ())
256255 var err error
257256
257+ podSpec , err := kube .GetPodSpec (owner )
258+ if err != nil {
259+ return err
260+ }
261+
262+ containerImages := kube .GetContainerImagesFromPodSpec (podSpec , r .GetSkipInitContainers ())
263+
258264 credentials := make (map [string ]docker.Auth , 0 )
259265 if len (reusedReports ) != len (containerImages ) {
260266 privateRegistrySecrets , err := r .Config .GetPrivateRegistryScanSecretsNames ()
0 commit comments