mirror of
https://github.com/vmware-tanzu/velero.git
synced 2026-01-05 04:55:22 +00:00
recall repo maintenance history on restart
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
This commit is contained in:
@@ -65,13 +65,13 @@ type BackupRepoReconciler struct {
|
||||
repositoryManager repomanager.Manager
|
||||
keepLatestMaintenanceJobs int
|
||||
repoMaintenanceConfig string
|
||||
podResources kube.PodResources
|
||||
maintenanceJobResources kube.PodResources
|
||||
logLevel logrus.Level
|
||||
logFormat *logging.FormatFlag
|
||||
}
|
||||
|
||||
func NewBackupRepoReconciler(namespace string, logger logrus.FieldLogger, client client.Client, repositoryManager repomanager.Manager,
|
||||
maintenanceFrequency time.Duration, backupRepoConfig string, keepLatestMaintenanceJobs int, repoMaintenanceConfig string, podResources kube.PodResources,
|
||||
maintenanceFrequency time.Duration, backupRepoConfig string, keepLatestMaintenanceJobs int, repoMaintenanceConfig string, maintenanceJobResources kube.PodResources,
|
||||
logLevel logrus.Level, logFormat *logging.FormatFlag) *BackupRepoReconciler {
|
||||
c := &BackupRepoReconciler{
|
||||
client,
|
||||
@@ -83,7 +83,7 @@ func NewBackupRepoReconciler(namespace string, logger logrus.FieldLogger, client
|
||||
repositoryManager,
|
||||
keepLatestMaintenanceJobs,
|
||||
repoMaintenanceConfig,
|
||||
podResources,
|
||||
maintenanceJobResources,
|
||||
logLevel,
|
||||
logFormat,
|
||||
}
|
||||
@@ -427,7 +427,7 @@ func (r *BackupRepoReconciler) runMaintenanceIfDue(ctx context.Context, req *vel
|
||||
|
||||
log.Info("Running maintenance on backup repository")
|
||||
|
||||
job, err := funcStartMaintenanceJob(r.Client, ctx, req, r.repoMaintenanceConfig, r.podResources, r.logLevel, r.logFormat, log)
|
||||
job, err := funcStartMaintenanceJob(r.Client, ctx, req, r.repoMaintenanceConfig, r.maintenanceJobResources, r.logLevel, r.logFormat, log)
|
||||
if err != nil {
|
||||
log.WithError(err).Warn("Starting repo maintenance failed")
|
||||
return r.patchBackupRepository(ctx, req, func(rr *velerov1api.BackupRepository) {
|
||||
|
||||
@@ -284,7 +284,7 @@ func WaitAllJobsComplete(ctx context.Context, cli client.Client, repo *velerov1a
|
||||
|
||||
history := []velerov1api.BackupRepositoryMaintenanceStatus{}
|
||||
|
||||
startPos := len(history) - limit
|
||||
startPos := len(jobList.Items) - limit
|
||||
if startPos < 0 {
|
||||
startPos = 0
|
||||
}
|
||||
|
||||
@@ -444,7 +444,7 @@ func TestGetJobConfig(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestWaitAlJobsComplete(t *testing.T) {
|
||||
func TestWaitAllJobsComplete(t *testing.T) {
|
||||
ctx, cancel := context.WithTimeout(context.Background(), time.Second*2)
|
||||
|
||||
veleroNamespace := "velero"
|
||||
@@ -680,11 +680,6 @@ func TestWaitAlJobsComplete(t *testing.T) {
|
||||
jobPodSucceeded3,
|
||||
},
|
||||
expectedStatus: []velerov1api.BackupRepositoryMaintenanceStatus{
|
||||
{
|
||||
Result: velerov1api.BackupRepositoryMaintenanceSucceeded,
|
||||
StartTimestamp: &metav1.Time{Time: now},
|
||||
CompleteTimestamp: &metav1.Time{Time: now.Add(time.Hour)},
|
||||
},
|
||||
{
|
||||
Result: velerov1api.BackupRepositoryMaintenanceFailed,
|
||||
StartTimestamp: &metav1.Time{Time: now.Add(time.Hour)},
|
||||
|
||||
Reference in New Issue
Block a user