fs

package
v0.46.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 1, 2021 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Copyright 2016 The Kubernetes Authors. Copyright 2021 The KubeVirt Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This file was originally copied from https://github.com/kubernetes/kubernetes/blob/e0a22acaa0c62f3e6f9dd37ab2a4e7d960528edc/pkg/util/filesystem/defaultfs.go

Copyright 2017 The Kubernetes Authors. Copyright 2021 The KubeVirt Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This file was originally copied from https://github.com/kubernetes/kubernetes/blob/e0a22acaa0c62f3e6f9dd37ab2a4e7d960528edc/pkg/util/filesystem/filesystem.go

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefaultFs

type DefaultFs struct {
	// contains filtered or unexported fields
}

DefaultFs implements Filesystem using same-named functions from "os" and "io/ioutil"

func New

func New() *DefaultFs

NewTempFs returns a fake Filesystem in temporary directory, useful for unit tests

func NewWithRootPath

func NewWithRootPath(rootPath string) *DefaultFs

NewTempFs returns a fake Filesystem in temporary directory, useful for unit tests

func (*DefaultFs) Chtimes

func (fs *DefaultFs) Chtimes(name string, atime time.Time, mtime time.Time) error

Chtimes via os.Chtimes

func (*DefaultFs) Create

func (fs *DefaultFs) Create(name string) (File, error)

Create via os.Create

func (*DefaultFs) MkdirAll

func (fs *DefaultFs) MkdirAll(path string, perm os.FileMode) error

MkdirAll via os.MkdirAll

func (*DefaultFs) ReadDir

func (fs *DefaultFs) ReadDir(dirname string) ([]os.FileInfo, error)

ReadDir via ioutil.ReadDir

func (*DefaultFs) ReadFile

func (fs *DefaultFs) ReadFile(filename string) ([]byte, error)

ReadFile via ioutil.ReadFile

func (*DefaultFs) Remove

func (fs *DefaultFs) Remove(name string) error

Remove via os.RemoveAll

func (*DefaultFs) RemoveAll

func (fs *DefaultFs) RemoveAll(path string) error

RemoveAll via os.RemoveAll

func (*DefaultFs) Rename

func (fs *DefaultFs) Rename(oldpath, newpath string) error

Rename via os.Rename

func (*DefaultFs) Stat

func (fs *DefaultFs) Stat(name string) (os.FileInfo, error)

Stat via os.Stat

func (*DefaultFs) TempDir

func (fs *DefaultFs) TempDir(dir, prefix string) (string, error)

TempDir via ioutil.TempDir

func (*DefaultFs) TempFile

func (fs *DefaultFs) TempFile(dir, prefix string) (File, error)

TempFile via ioutil.TempFile

func (*DefaultFs) Walk

func (fs *DefaultFs) Walk(root string, walkFn filepath.WalkFunc) error

Walk via filepath.Walk

func (*DefaultFs) WriteFile

func (fs *DefaultFs) WriteFile(filename string, data []byte, perm fs.FileMode) error

type File

type File interface {
	// for now, the only os.File methods used are those below, add more as necessary
	Name() string
	Write(b []byte) (n int, err error)
	Sync() error
	Close() error
}

File is an interface that we can use to mock various filesystem operations typically accessed through the File object from the "os" package

type Fs

type Fs interface {
	// from "os"
	Stat(name string) (os.FileInfo, error)
	Create(name string) (File, error)
	Rename(oldpath, newpath string) error
	MkdirAll(path string, perm os.FileMode) error
	Chtimes(name string, atime time.Time, mtime time.Time) error
	RemoveAll(path string) error
	Remove(name string) error

	// from "io/ioutil"
	ReadFile(filename string) ([]byte, error)
	WriteFile(filename string, data []byte, perm fs.FileMode) error
	TempDir(dir, prefix string) (string, error)
	TempFile(dir, prefix string) (File, error)
	ReadDir(dirname string) ([]os.FileInfo, error)
	Walk(root string, walkFn filepath.WalkFunc) error
}

Filesystem is an interface that we can use to mock various filesystem operations

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL