Code maintenance: OS package for file system

- OS custom internal package for file system interaction
- Remove fileManager external dependency
- Closer API to Go's native API on the OS
- Create directories at startup
- Better testability
- Move Unsetenv to os interface
This commit is contained in:
Quentin McGaw
2020-12-29 00:55:31 +00:00
parent f5366c33bc
commit 73479bab26
43 changed files with 923 additions and 353 deletions

15
internal/os/file.go Normal file
View File

@@ -0,0 +1,15 @@
package os
import (
"io"
nativeos "os"
)
//go:generate mockgen -destination=mock_$GOPACKAGE/$GOFILE . File
type File interface {
io.ReadWriteCloser
WriteString(s string) (int, error)
Chown(uid, gid int) error
Chmod(mode nativeos.FileMode) error
}