in pkg/fix_local_file.go [28:56]
func (lf *LocalFileFix) Apply() error {
fm, err := toDecimal(*lf.Mode)
if err != nil {
return err
}
fs := FsFactory()
for _, path := range lf.Paths {
dir := filepath.Dir(path)
dirExists, dirCheckErr := afero.DirExists(fs, dir)
if dirCheckErr != nil {
err = multierror.Append(err, dirCheckErr)
continue
}
if !dirExists {
mkDirErr := fs.MkdirAll(dir, 0755)
if mkDirErr != nil {
err = multierror.Append(err, mkDirErr)
continue
}
}
writeErr := afero.WriteFile(fs, path, []byte(lf.Content), fm)
if writeErr != nil {
err = multierror.Append(err, writeErr)
}
}
return err
}