diff --git a/pkg/snapshotter/btrfs.go b/pkg/snapshotter/btrfs.go index cfe6a7eff9d..0fa02a693f1 100644 --- a/pkg/snapshotter/btrfs.go +++ b/pkg/snapshotter/btrfs.go @@ -616,14 +616,14 @@ func (b *Btrfs) setBootloader() error { } func (b *Btrfs) configureSnapper(snapshot *v1.Snapshot) error { - defaultTmpl, err := utils.FindFile(b.cfg.Fs, snapshot.Path, configTemplatesPaths()...) + defaultTmpl, err := utils.FindFile(b.cfg.Fs, snapshot.WorkDir, configTemplatesPaths()...) if err != nil { b.cfg.Logger.Errorf("failed to find default snapper configuration template") return err } sysconfigData := map[string]string{} - sysconfig := filepath.Join(snapshot.Path, snapperSysconfig) + sysconfig := filepath.Join(snapshot.WorkDir, snapperSysconfig) if ok, _ := utils.Exists(b.cfg.Fs, sysconfig); ok { sysconfigData, err = utils.LoadEnvFile(b.cfg.Fs, sysconfig) if err != nil { @@ -633,6 +633,7 @@ func (b *Btrfs) configureSnapper(snapshot *v1.Snapshot) error { } sysconfigData["SNAPPER_CONFIGS"] = "root" + b.cfg.Logger.Debugf("Creating sysconfig snapper configuration at '%s'", sysconfig) err = utils.WriteEnvFile(b.cfg.Fs, sysconfigData, sysconfig) if err != nil { b.cfg.Logger.Errorf("failed writing snapper global configuration file: %v", err) @@ -650,7 +651,9 @@ func (b *Btrfs) configureSnapper(snapshot *v1.Snapshot) error { snapCfg["NUMBER_LIMIT"] = strconv.Itoa(b.snapshotterCfg.MaxSnaps) snapCfg["NUMBER_LIMIT_IMPORTANT"] = strconv.Itoa(b.snapshotterCfg.MaxSnaps) - err = utils.WriteEnvFile(b.cfg.Fs, snapCfg, filepath.Join(snapshot.Path, snapperRootConfig)) + rootCfg := filepath.Join(snapshot.WorkDir, snapperRootConfig) + b.cfg.Logger.Debugf("Creating 'root' snapper configuration at '%s'", rootCfg) + err = utils.WriteEnvFile(b.cfg.Fs, snapCfg, rootCfg) if err != nil { b.cfg.Logger.Errorf("failed writing snapper root configuration file: %v", err) return err diff --git a/pkg/snapshotter/btrfs_test.go b/pkg/snapshotter/btrfs_test.go index 6a2c7c31523..3e623b0545e 100644 --- a/pkg/snapshotter/btrfs_test.go +++ b/pkg/snapshotter/btrfs_test.go @@ -305,15 +305,15 @@ var _ = Describe("Btrfs", Label("snapshotter", " btrfs"), func() { {"snapper", "--no-dbus", "--root", "/some/root/.snapshots/1/snapshot", "create"}, })).To(Succeed()) - defaultTmpl := filepath.Join(snap.Path, "/etc/snapper/config-templates/default") + defaultTmpl := filepath.Join(snap.WorkDir, "/etc/snapper/config-templates/default") Expect(utils.MkdirAll(fs, filepath.Dir(defaultTmpl), constants.DirPerm)).To(Succeed()) Expect(fs.WriteFile(defaultTmpl, []byte{}, constants.FilePerm)).To(Succeed()) - snapperSysconfig := filepath.Join(snap.Path, "/etc/sysconfig/snapper") + snapperSysconfig := filepath.Join(snap.WorkDir, "/etc/sysconfig/snapper") Expect(utils.MkdirAll(fs, filepath.Dir(snapperSysconfig), constants.DirPerm)).To(Succeed()) Expect(fs.WriteFile(snapperSysconfig, []byte{}, constants.FilePerm)).To(Succeed()) - snapperCfg := filepath.Join(snap.Path, "/etc/snapper/configs") + snapperCfg := filepath.Join(snap.WorkDir, "/etc/snapper/configs") Expect(utils.MkdirAll(fs, snapperCfg, constants.DirPerm)).To(Succeed()) }) @@ -499,15 +499,15 @@ var _ = Describe("Btrfs", Label("snapshotter", " btrfs"), func() { {"snapper", "--no-dbus", "--root", "/some/root", "create", "--from"}, })).To(Succeed()) - defaultTmpl := filepath.Join(snap.Path, "/etc/snapper/config-templates/default") + defaultTmpl := filepath.Join(snap.WorkDir, "/etc/snapper/config-templates/default") Expect(utils.MkdirAll(fs, filepath.Dir(defaultTmpl), constants.DirPerm)).To(Succeed()) Expect(fs.WriteFile(defaultTmpl, []byte{}, constants.FilePerm)).To(Succeed()) - snapperSysconfig := filepath.Join(snap.Path, "/etc/sysconfig/snapper") + snapperSysconfig := filepath.Join(snap.WorkDir, "/etc/sysconfig/snapper") Expect(utils.MkdirAll(fs, filepath.Dir(snapperSysconfig), constants.DirPerm)).To(Succeed()) Expect(fs.WriteFile(snapperSysconfig, []byte{}, constants.FilePerm)).To(Succeed()) - snapperCfg := filepath.Join(snap.Path, "/etc/snapper/configs") + snapperCfg := filepath.Join(snap.WorkDir, "/etc/snapper/configs") Expect(utils.MkdirAll(fs, snapperCfg, constants.DirPerm)).To(Succeed()) })