Skip to content
This repository was archived by the owner on Oct 14, 2020. It is now read-only.

Commit 3a4ee2a

Browse files
committed
Actually create the Scans for the ScheduledScans
1 parent f6d1ae4 commit 3a4ee2a

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

operator/controllers/execution/scheduledscan_controller.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package controllers
1818

1919
import (
2020
"context"
21+
"fmt"
2122
"time"
2223

2324
"github.com/go-logr/logr"
@@ -73,6 +74,24 @@ func (r *ScheduledScanReconciler) Reconcile(req ctrl.Request) (ctrl.Result, erro
7374
// It's time!
7475
log.Info("Should start scans here")
7576

77+
var scan = &executionv1.Scan{
78+
ObjectMeta: metav1.ObjectMeta{
79+
Namespace: scheduledScan.Namespace,
80+
Labels: scheduledScan.ObjectMeta.GetLabels(),
81+
},
82+
Spec: *scheduledScan.Spec.ScanSpec.DeepCopy(),
83+
}
84+
scan.Name = fmt.Sprintf("%s-%d", scheduledScan.Name, nextSchedule.Unix())
85+
if err := ctrl.SetControllerReference(&scheduledScan, scan, r.Scheme); err != nil {
86+
log.Error(err, "unable to set owner reference on scan")
87+
return ctrl.Result{}, err
88+
}
89+
90+
if err := r.Create(ctx, scan); err != nil {
91+
log.Error(err, "unable to create Scan for ScheduledScan", "scan", scan)
92+
return ctrl.Result{}, err
93+
}
94+
7695
var now metav1.Time = metav1.Now()
7796
scheduledScan.Status.LastScheduleTime = &now
7897
if err := r.Status().Update(ctx, &scheduledScan); err != nil {

0 commit comments

Comments
 (0)