Replace all usage of CopyOnWriteFs with OverlayFs

Fixes #9761
This commit is contained in:
Bjørn Erik Pedersen
2022-04-08 15:15:26 +02:00
parent 3117e58595
commit 30c2e54c25
13 changed files with 307 additions and 264 deletions

View File

@@ -21,6 +21,7 @@ import (
_os "os"
"path/filepath"
"github.com/bep/overlayfs"
"github.com/gohugoio/hugo/deps"
"github.com/spf13/afero"
"github.com/spf13/cast"
@@ -32,7 +33,12 @@ func New(d *deps.Deps) *Namespace {
// The docshelper script does not have or need all the dependencies set up.
if d.PathSpec != nil {
readFileFs = afero.NewReadOnlyFs(afero.NewCopyOnWriteFs(d.PathSpec.BaseFs.Content.Fs, d.PathSpec.BaseFs.Work))
readFileFs = overlayfs.New(overlayfs.Options{
Fss: []afero.Fs{
d.PathSpec.BaseFs.Work,
d.PathSpec.BaseFs.Content.Fs,
},
})
// See #9599
workFs = d.PathSpec.BaseFs.WorkDir
}