Skip to content

Commit de5bebc

Browse files
authored
Merge pull request #1805 from FabianKramm/master
fix: don't fail if folder doesn't exist & logging
2 parents f066974 + 2952d9c commit de5bebc

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

pkg/devspace/services/podreplace/persist.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func persistPaths(podName string, replacePod *latest.ReplacePod, copiedPod *core
7272
Name: fmt.Sprintf("path-%d-init", i),
7373
Image: container.Image,
7474
Command: []string{"sh"},
75-
Args: []string{"-c", fmt.Sprintf("if [ ! -d \"/devspace-persistence/.devspace/\" ]; then cp -a %s/. /devspace-persistence/ && mkdir /devspace-persistence/.devspace ; fi", path.Clean(p.Path))},
75+
Args: []string{"-c", fmt.Sprintf("if [ ! -d \"/devspace-persistence/.devspace/\" ] && [ -d \"%s\" ]; then cp -a %s/. /devspace-persistence/ && mkdir /devspace-persistence/.devspace ; fi", path.Clean(p.Path), path.Clean(p.Path))},
7676
VolumeMounts: []corev1.VolumeMount{
7777
{
7878
Name: "devspace-persistence",

pkg/devspace/services/podreplace/replace.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -458,7 +458,7 @@ func replace(ctx context.Context, client kubectl.Client, pod *selector.SelectedP
458458

459459
// create a pvc if needed
460460
if len(replacePod.PersistPaths) > 0 {
461-
err = createPVC(ctx, client, copiedPod, replicaSet, replacePod)
461+
err = createPVC(ctx, client, copiedPod, replicaSet, replacePod, log)
462462
if err != nil {
463463
if kerrors.IsAlreadyExists(err) {
464464
// delete the old one and wait
@@ -473,7 +473,7 @@ func replace(ctx context.Context, client kubectl.Client, pod *selector.SelectedP
473473
}
474474

475475
// create the new one
476-
err = createPVC(ctx, client, copiedPod, replicaSet, replacePod)
476+
err = createPVC(ctx, client, copiedPod, replicaSet, replacePod, log)
477477
if err != nil {
478478
return errors.Wrap(err, "create persistent volume claim")
479479
}
@@ -486,7 +486,7 @@ func replace(ctx context.Context, client kubectl.Client, pod *selector.SelectedP
486486
return nil
487487
}
488488

489-
func createPVC(ctx context.Context, client kubectl.Client, copiedPod *corev1.Pod, replicaSet *appsv1.ReplicaSet, replacePod *latest.ReplacePod) error {
489+
func createPVC(ctx context.Context, client kubectl.Client, copiedPod *corev1.Pod, replicaSet *appsv1.ReplicaSet, replacePod *latest.ReplacePod, log log.Logger) error {
490490
var err error
491491
size := resource.MustParse("10Gi")
492492
if replacePod.PersistenceOptions != nil && replacePod.PersistenceOptions.Size != "" {
@@ -540,12 +540,14 @@ func createPVC(ctx context.Context, client kubectl.Client, copiedPod *corev1.Pod
540540
}, metav1.CreateOptions{})
541541
if err != nil {
542542
if kerrors.IsAlreadyExists(err) && replacePod.PersistenceOptions != nil && replacePod.PersistenceOptions.Name != "" {
543+
log.Infof("PVC %s already exists for replaced pod %s", name, copiedPod.Name)
543544
return nil
544545
}
545546

546547
return err
547548
}
548549

550+
log.Donef("Created PVC %s for replaced pod %s", name, copiedPod.Name)
549551
return nil
550552
}
551553

0 commit comments

Comments
 (0)