package wkfs
import "go4.org/wkfs"
Package wkfs implements the pluggable "well-known filesystem" abstraction layer.
Instead of accessing files directly through the operating system using os.Open or os.Stat, code should use wkfs.Open or wkfs.Stat, which first try to intercept paths at well-known top-level directories representing previously-registered mount types, otherwise fall through to the operating system paths.
Example of top-level well-known directories that might be registered include /gcs/bucket/object for Google Cloud Storage or /s3/bucket/object for AWS S3.
Index ¶
- func Lstat(name string) (os.FileInfo, error)
- func MkdirAll(path string, perm os.FileMode) error
- func ReadFile(filename string) ([]byte, error)
- func RegisterFS(prefix string, fs FileSystem)
- func Remove(name string) error
- func Stat(name string) (os.FileInfo, error)
- func WriteFile(filename string, data []byte, perm os.FileMode) error
- type File
- type FileSystem
- type FileWriter
Functions ¶
func Lstat ¶
func MkdirAll ¶
func ReadFile ¶
func RegisterFS ¶
func RegisterFS(prefix string, fs FileSystem)
RegisterFS registers a well-known filesystem. It intercepts anything beginning with prefix (which must start and end with a forward slash) and forwards it to fs.
func Remove ¶
func Stat ¶
func WriteFile ¶
WriteFile writes data to a file named by filename. If the file does not exist, WriteFile creates it with permissions perm; otherwise WriteFile truncates it before writing.
Types ¶
type File ¶
type File interface { io.Reader io.ReaderAt io.Closer io.Seeker Name() string Stat() (os.FileInfo, error) }
func Open ¶
type FileSystem ¶
type FileSystem interface { Open(name string) (File, error) OpenFile(name string, flag int, perm os.FileMode) (FileWriter, error) Stat(name string) (os.FileInfo, error) Lstat(name string) (os.FileInfo, error) MkdirAll(path string, perm os.FileMode) error Remove(name string) error }
type FileWriter ¶
func Create ¶
func Create(name string) (FileWriter, error)
func OpenFile ¶
Source Files ¶
wkfs.go
Directories ¶
Path | Synopsis |
---|---|
wkfs/gcs | Package gcs registers a Google Cloud Storage filesystem at the well-known /gcs/ filesystem path if the current machine is running on Google Compute Engine. |
- Version
- v0.0.0-20230225012048-214862532bf5 (latest)
- Published
- Feb 25, 2023
- Platform
- linux/amd64
- Imports
- 4 packages
- Last checked
- 1 month ago –
Tools for package owners.