add snapshot size to data mover CRs

Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
This commit is contained in:
Lyndon-Li
2025-10-21 14:13:59 +08:00
parent 9b02402631
commit 166f50d776
21 changed files with 110 additions and 24 deletions

View File

@@ -608,7 +608,7 @@ func getBackupRepositoryConfig(ctx context.Context, ctrlClient client.Client, co
jsonData, found := loc.Data[repoType]
if !found {
log.Info("No data for repo type %s in config map %s", repoType, configName)
log.Infof("No data for repo type %s in config map %s", repoType, configName)
return nil, nil
}

View File

@@ -493,6 +493,7 @@ func (r *DataUploadReconciler) OnDataUploadCompleted(ctx context.Context, namesp
du.Status.Path = result.Backup.Source.ByPath
du.Status.Phase = velerov2alpha1api.DataUploadPhaseCompleted
du.Status.SnapshotID = result.Backup.SnapshotID
du.Status.SnapshotSize = result.Backup.TotalBytes
du.Status.CompletionTimestamp = &metav1.Time{Time: r.Clock.Now()}
if result.Backup.EmptySnapshot {
du.Status.Message = "volume was empty so no data was upload"

View File

@@ -850,11 +850,22 @@ func TestOnDataUploadCompleted(t *testing.T) {
// Add the DataUpload object to the fake client
require.NoError(t, r.client.Create(ctx, du))
r.snapshotExposerList = map[velerov2alpha1api.SnapshotType]exposer.SnapshotExposer{velerov2alpha1api.SnapshotTypeCSI: exposer.NewCSISnapshotExposer(r.kubeClient, r.csiSnapshotClient, velerotest.NewLogger())}
r.OnDataUploadCompleted(ctx, namespace, duName, datapath.Result{})
r.OnDataUploadCompleted(ctx, namespace, duName, datapath.Result{
Backup: datapath.BackupResult{
SnapshotID: "fake-id",
Source: datapath.AccessPoint{
ByPath: "fake-path",
},
TotalBytes: int64(1000),
},
})
updatedDu := &velerov2alpha1api.DataUpload{}
require.NoError(t, r.client.Get(ctx, types.NamespacedName{Name: duName, Namespace: namespace}, updatedDu))
assert.Equal(t, velerov2alpha1api.DataUploadPhaseCompleted, updatedDu.Status.Phase)
assert.False(t, updatedDu.Status.CompletionTimestamp.IsZero())
assert.Equal(t, "fake-id", updatedDu.Status.SnapshotID)
assert.Equal(t, "fake-path", updatedDu.Status.Path)
assert.Equal(t, int64(1000), updatedDu.Status.SnapshotSize)
}
func TestFindDataUploadForPod(t *testing.T) {

View File

@@ -525,6 +525,7 @@ func (r *PodVolumeBackupReconciler) OnDataPathCompleted(ctx context.Context, nam
pvb.Status.Path = result.Backup.Source.ByPath
pvb.Status.Phase = velerov1api.PodVolumeBackupPhaseCompleted
pvb.Status.SnapshotID = result.Backup.SnapshotID
pvb.Status.SnapshotSize = result.Backup.TotalBytes
pvb.Status.CompletionTimestamp = &completionTime
if result.Backup.EmptySnapshot {
pvb.Status.Message = "volume was empty so no snapshot was taken"