Documentation ¶
Index ¶
- Variables
- func AWSErrorCode(err error) string
- func IsClusterReadable(p Path) bool
- func IsDirectory(p Path) bool
- func NewAliOSSClient() (*oss.Client, error)
- func NewSwiftClient() (*gophercloud.ServiceClient, error)
- func RelativePath(base Path, child Path) (string, error)
- func RetryWithBackoff(backoff wait.Backoff, condition func() (bool, error)) (bool, error)
- func VFSPath(url string) (string, error)
- type ACL
- type ACLOracle
- type AzureBlobPath
- func (p *AzureBlobPath) Base() string
- func (p *AzureBlobPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *AzureBlobPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *AzureBlobPath) Join(relativePath ...string) Path
- func (p *AzureBlobPath) Path() string
- func (p *AzureBlobPath) PreferredHash() (*hashing.Hash, error)
- func (p *AzureBlobPath) ReadDir() ([]Path, error)
- func (p *AzureBlobPath) ReadFile() ([]byte, error)
- func (p *AzureBlobPath) ReadTree() ([]Path, error)
- func (p *AzureBlobPath) Remove() error
- func (p *AzureBlobPath) RemoveAllVersions() error
- func (p *AzureBlobPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *AzureBlobPath) WriteTo(w io.Writer) (n int64, err error)
- type Cache
- type FSPath
- func (p *FSPath) Base() string
- func (p *FSPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *FSPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *FSPath) Join(relativePath ...string) Path
- func (p *FSPath) Path() string
- func (p *FSPath) PreferredHash() (*hashing.Hash, error)
- func (p *FSPath) ReadDir() ([]Path, error)
- func (p *FSPath) ReadFile() ([]byte, error)
- func (p *FSPath) ReadTree() ([]Path, error)
- func (p *FSPath) Remove() error
- func (p *FSPath) RemoveAllVersions() error
- func (p *FSPath) String() string
- func (p *FSPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *FSPath) WriteTo(out io.Writer) (int64, error)
- type GSAcl
- type GSPath
- func (p *GSPath) Base() string
- func (p *GSPath) Bucket() string
- func (p *GSPath) Client() *storage.Service
- func (p *GSPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *GSPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *GSPath) Join(relativePath ...string) Path
- func (p *GSPath) Object() string
- func (p *GSPath) Path() string
- func (p *GSPath) PreferredHash() (*hashing.Hash, error)
- func (p *GSPath) ReadDir() ([]Path, error)
- func (p *GSPath) ReadFile() ([]byte, error)
- func (p *GSPath) ReadTree() ([]Path, error)
- func (p *GSPath) Remove() error
- func (p *GSPath) RemoveAllVersions() error
- func (p *GSPath) String() string
- func (p *GSPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *GSPath) WriteTo(out io.Writer) (int64, error)
- type HasClusterReadable
- type HasHash
- type KubernetesContext
- type KubernetesPath
- func (p *KubernetesPath) Base() string
- func (p *KubernetesPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *KubernetesPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *KubernetesPath) Host() string
- func (p *KubernetesPath) Join(relativePath ...string) Path
- func (p *KubernetesPath) Key() string
- func (p *KubernetesPath) Path() string
- func (p *KubernetesPath) PreferredHash() (*hashing.Hash, error)
- func (p *KubernetesPath) ReadDir() ([]Path, error)
- func (p *KubernetesPath) ReadFile() ([]byte, error)
- func (p *KubernetesPath) ReadTree() ([]Path, error)
- func (p *KubernetesPath) Remove() error
- func (p *KubernetesPath) RemoveAllVersions() error
- func (p *KubernetesPath) String() string
- func (p *KubernetesPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *KubernetesPath) WriteTo(out io.Writer) (int64, error)
- type MemFSContext
- type MemFSPath
- func (p *MemFSPath) Base() string
- func (p *MemFSPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (c *MemFSPath) HasChildren() bool
- func (c *MemFSPath) IsClusterReadable() bool
- func (p *MemFSPath) Join(relativePath ...string) Path
- func (p *MemFSPath) Path() string
- func (p *MemFSPath) ReadDir() ([]Path, error)
- func (p *MemFSPath) ReadFile() ([]byte, error)
- func (p *MemFSPath) ReadTree() ([]Path, error)
- func (p *MemFSPath) Remove() error
- func (p *MemFSPath) RemoveAllVersions() error
- func (p *MemFSPath) String() string
- func (p *MemFSPath) WriteFile(r io.ReadSeeker, acl ACL) error
- func (p *MemFSPath) WriteTo(out io.Writer) (int64, error)
- type OSSPath
- func (p *OSSPath) Base() string
- func (p *OSSPath) Bucket() string
- func (p *OSSPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *OSSPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *OSSPath) Join(relativePath ...string) Path
- func (p *OSSPath) Key() string
- func (p *OSSPath) Path() string
- func (p *OSSPath) PreferredHash() (*hashing.Hash, error)
- func (p *OSSPath) ReadDir() ([]Path, error)
- func (p *OSSPath) ReadFile() ([]byte, error)
- func (p *OSSPath) ReadTree() ([]Path, error)
- func (p *OSSPath) Remove() error
- func (p *OSSPath) RemoveAllVersions() error
- func (p *OSSPath) String() string
- func (p *OSSPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *OSSPath) WriteTo(out io.Writer) (int64, error)
- type OpenstackConfig
- type Path
- type S3Acl
- type S3BucketDetails
- type S3Context
- type S3Path
- func (p *S3Path) Base() string
- func (p *S3Path) Bucket() string
- func (p *S3Path) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *S3Path) GetHTTPsUrl() (string, error)
- func (p *S3Path) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *S3Path) Join(relativePath ...string) Path
- func (p *S3Path) Key() string
- func (p *S3Path) Path() string
- func (p *S3Path) PreferredHash() (*hashing.Hash, error)
- func (p *S3Path) ReadDir() ([]Path, error)
- func (p *S3Path) ReadFile() ([]byte, error)
- func (p *S3Path) ReadTree() ([]Path, error)
- func (p *S3Path) Remove() error
- func (p *S3Path) RemoveAllVersions() error
- func (p *S3Path) String() string
- func (p *S3Path) WriteFile(data io.ReadSeeker, aclObj ACL) error
- func (p *S3Path) WriteTo(out io.Writer) (int64, error)
- type SSHAcl
- type SSHPath
- func (p *SSHPath) Base() string
- func (p *SSHPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *SSHPath) Join(relativePath ...string) Path
- func (p *SSHPath) Path() string
- func (p *SSHPath) ReadDir() ([]Path, error)
- func (p *SSHPath) ReadFile() ([]byte, error)
- func (p *SSHPath) ReadTree() ([]Path, error)
- func (p *SSHPath) Remove() error
- func (p *SSHPath) RemoveAllVersions() error
- func (p *SSHPath) String() string
- func (p *SSHPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *SSHPath) WriteTo(out io.Writer) (int64, error)
- type SwiftPath
- func (p *SwiftPath) Base() string
- func (p *SwiftPath) Bucket() string
- func (p *SwiftPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *SwiftPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
- func (p *SwiftPath) Join(relativePath ...string) Path
- func (p *SwiftPath) Path() string
- func (p *SwiftPath) PreferredHash() (*hashing.Hash, error)
- func (p *SwiftPath) ReadDir() ([]Path, error)
- func (p *SwiftPath) ReadFile() ([]byte, error)
- func (p *SwiftPath) ReadTree() ([]Path, error)
- func (p *SwiftPath) Remove() error
- func (p *SwiftPath) RemoveAllVersions() error
- func (p *SwiftPath) String() string
- func (p *SwiftPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *SwiftPath) WriteTo(out io.Writer) (int64, error)
- type VFS
- type VFSContext
- type VFSOption
- type VaultPath
- func (p *VaultPath) Base() string
- func (p *VaultPath) CreateFile(data io.ReadSeeker, acl ACL) error
- func (p *VaultPath) Join(relativePath ...string) Path
- func (p *VaultPath) Path() string
- func (p *VaultPath) ReadDir() ([]Path, error)
- func (p *VaultPath) ReadFile() ([]byte, error)
- func (p *VaultPath) ReadTree() ([]Path, error)
- func (p *VaultPath) Remove() error
- func (p *VaultPath) RemoveAllVersions() error
- func (p VaultPath) SetClientToken(token string)
- func (p *VaultPath) String() string
- func (p *VaultPath) WriteFile(data io.ReadSeeker, acl ACL) error
- func (p *VaultPath) WriteTo(out io.Writer) (int64, error)
- type WriteOption
Constants ¶
This section is empty.
Variables ¶
var Context = VFSContext{ // contains filtered or unexported fields }
Functions ¶
func AWSErrorCode ¶
AWSErrorCode returns the aws error code, if it is an awserr.Error, otherwise ""
func IsClusterReadable ¶
func IsDirectory ¶
func NewAliOSSClient ¶ added in v1.10.0
func NewSwiftClient ¶ added in v1.10.0
func NewSwiftClient() (*gophercloud.ServiceClient, error)
func RetryWithBackoff ¶ added in v1.10.0
RetryWithBackoff runs until a condition function returns true, or until Steps attempts have been taken As compared to wait.ExponentialBackoff, this function returns the results from the function on the final attempt
Types ¶
type AzureBlobPath ¶ added in v1.20.0
type AzureBlobPath struct {
// contains filtered or unexported fields
}
AzureBlobPath is a path in the VFS space backed by Azure Blob.
func NewAzureBlobPath ¶ added in v1.20.0
func NewAzureBlobPath(client *azureClient, container string, key string) *AzureBlobPath
NewAzureBlobPath returns a new AzureBlobPath.
func (*AzureBlobPath) Base ¶ added in v1.20.0
func (p *AzureBlobPath) Base() string
Base returns the base name (last element).
func (*AzureBlobPath) CreateFile ¶ added in v1.20.0
func (p *AzureBlobPath) CreateFile(data io.ReadSeeker, acl ACL) error
CreateFile writes the file contents only if the file does not already exist.
func (*AzureBlobPath) Hash ¶ added in v1.20.0
func (p *AzureBlobPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
Hash gets the hash, or nil if the hash cannot be (easily) computed.
func (*AzureBlobPath) Join ¶ added in v1.20.0
func (p *AzureBlobPath) Join(relativePath ...string) Path
Join returns a new path that joins the current path and given relative paths.
func (*AzureBlobPath) Path ¶ added in v1.20.0
func (p *AzureBlobPath) Path() string
Path returns a string representing the full path.
func (*AzureBlobPath) PreferredHash ¶ added in v1.20.0
func (p *AzureBlobPath) PreferredHash() (*hashing.Hash, error)
PreferredHash returns the hash of the file contents, with the preferred hash algorithm.
func (*AzureBlobPath) ReadDir ¶ added in v1.20.0
func (p *AzureBlobPath) ReadDir() ([]Path, error)
ReadDir lists the blobs under the current Path.
func (*AzureBlobPath) ReadFile ¶ added in v1.20.0
func (p *AzureBlobPath) ReadFile() ([]byte, error)
ReadFile returns the content of the blob.
func (*AzureBlobPath) ReadTree ¶ added in v1.20.0
func (p *AzureBlobPath) ReadTree() ([]Path, error)
ReadTree lists all blobs (recursively) in the subtree rooted at the current Path.
func (*AzureBlobPath) Remove ¶ added in v1.20.0
func (p *AzureBlobPath) Remove() error
Remove deletes the blob.
func (*AzureBlobPath) RemoveAllVersions ¶ added in v1.20.0
func (p *AzureBlobPath) RemoveAllVersions() error
func (*AzureBlobPath) WriteFile ¶ added in v1.20.0
func (p *AzureBlobPath) WriteFile(data io.ReadSeeker, acl ACL) error
WriteFile writes the blob to the reader.
TODO(kenji): Support ACL.
type Cache ¶ added in v1.16.0
type Cache struct {
// contains filtered or unexported fields
}
Cache is a simple cache for vfs files.
Currently we never expire the cache, so this is only safe for a relatively bounded set of files - but it would not be too hard to fix this.
type FSPath ¶
type FSPath struct {
// contains filtered or unexported fields
}
func (*FSPath) CreateFile ¶
func (p *FSPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*FSPath) RemoveAllVersions ¶ added in v1.16.3
type GSAcl ¶ added in v1.10.0
type GSAcl struct {
Acl []*storage.ObjectAccessControl
}
GSAcl is an ACL implementation for objects on Google Cloud Storage
type GSPath ¶ added in v1.10.0
type GSPath struct {
// contains filtered or unexported fields
}
GSPath is a vfs path for Google Cloud Storage
func (*GSPath) CreateFile ¶ added in v1.10.0
func (p *GSPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*GSPath) PreferredHash ¶ added in v1.10.0
func (*GSPath) RemoveAllVersions ¶ added in v1.16.3
type HasClusterReadable ¶
type HasClusterReadable interface {
IsClusterReadable() bool
}
type KubernetesContext ¶ added in v1.10.0
type KubernetesContext struct { }
KubernetesContext is the context for a Kubernetes VFS implementation
func NewKubernetesContext ¶ added in v1.10.0
func NewKubernetesContext() *KubernetesContext
NewKubernetesContext builds a KubernetesContext This will likely take a kubernetes rest client object (or similar) once the implementation is more complete
type KubernetesPath ¶ added in v1.10.0
type KubernetesPath struct {
// contains filtered or unexported fields
}
KubernetesPath is a path for a VFS backed by the kubernetes API Currently all operations are no-ops
func (*KubernetesPath) Base ¶ added in v1.10.0
func (p *KubernetesPath) Base() string
func (*KubernetesPath) CreateFile ¶ added in v1.10.0
func (p *KubernetesPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*KubernetesPath) Hash ¶ added in v1.10.0
func (p *KubernetesPath) Hash(a hashing.HashAlgorithm) (*hashing.Hash, error)
func (*KubernetesPath) Host ¶ added in v1.10.0
func (p *KubernetesPath) Host() string
func (*KubernetesPath) Join ¶ added in v1.10.0
func (p *KubernetesPath) Join(relativePath ...string) Path
func (*KubernetesPath) Key ¶ added in v1.10.0
func (p *KubernetesPath) Key() string
func (*KubernetesPath) Path ¶ added in v1.10.0
func (p *KubernetesPath) Path() string
func (*KubernetesPath) PreferredHash ¶ added in v1.10.0
func (p *KubernetesPath) PreferredHash() (*hashing.Hash, error)
func (*KubernetesPath) ReadDir ¶ added in v1.10.0
func (p *KubernetesPath) ReadDir() ([]Path, error)
func (*KubernetesPath) ReadFile ¶ added in v1.10.0
func (p *KubernetesPath) ReadFile() ([]byte, error)
ReadFile implements Path::ReadFile
func (*KubernetesPath) ReadTree ¶ added in v1.10.0
func (p *KubernetesPath) ReadTree() ([]Path, error)
func (*KubernetesPath) Remove ¶ added in v1.10.0
func (p *KubernetesPath) Remove() error
func (*KubernetesPath) RemoveAllVersions ¶ added in v1.16.3
func (p *KubernetesPath) RemoveAllVersions() error
func (*KubernetesPath) String ¶ added in v1.10.0
func (p *KubernetesPath) String() string
func (*KubernetesPath) WriteFile ¶ added in v1.10.0
func (p *KubernetesPath) WriteFile(data io.ReadSeeker, acl ACL) error
type MemFSContext ¶
type MemFSContext struct {
// contains filtered or unexported fields
}
func NewMemFSContext ¶
func NewMemFSContext() *MemFSContext
func (*MemFSContext) MarkClusterReadable ¶
func (c *MemFSContext) MarkClusterReadable()
MarkClusterReadable pretends the current memfscontext is cluster readable; this is useful for tests
type MemFSPath ¶
type MemFSPath struct {
// contains filtered or unexported fields
}
func NewMemFSPath ¶
func NewMemFSPath(context *MemFSContext, location string) *MemFSPath
func (*MemFSPath) CreateFile ¶
func (p *MemFSPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*MemFSPath) HasChildren ¶ added in v1.10.0
func (*MemFSPath) IsClusterReadable ¶
func (*MemFSPath) RemoveAllVersions ¶ added in v1.16.3
type OSSPath ¶ added in v1.10.0
type OSSPath struct {
// contains filtered or unexported fields
}
OSSPath is a vfs path for Aliyun Open Storage Service
func NewOSSPath ¶ added in v1.10.0
func (*OSSPath) CreateFile ¶ added in v1.10.0
func (p *OSSPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*OSSPath) PreferredHash ¶ added in v1.10.0
func (*OSSPath) RemoveAllVersions ¶ added in v1.16.3
type OpenstackConfig ¶ added in v1.10.0
type OpenstackConfig struct { }
func (OpenstackConfig) GetCredential ¶ added in v1.10.0
func (oc OpenstackConfig) GetCredential() (gophercloud.AuthOptions, error)
func (OpenstackConfig) GetRegion ¶ added in v1.15.1
func (oc OpenstackConfig) GetRegion() (string, error)
func (OpenstackConfig) GetServiceConfig ¶ added in v1.10.0
func (oc OpenstackConfig) GetServiceConfig(name string) (gophercloud.EndpointOpts, error)
type Path ¶
type Path interface { io.WriterTo Join(relativePath ...string) Path // ReadFile returns the contents of the file, or an error if the file could not be read. // If the file did not exist, err = os.ErrNotExist // As this reads the entire file into memory, consider using WriteTo for bigger files ReadFile() ([]byte, error) WriteFile(data io.ReadSeeker, acl ACL) error // CreateFile writes the file contents, but only if the file does not already exist CreateFile(data io.ReadSeeker, acl ACL) error // Remove deletes the file Remove() error // RemoveAllVersions completely deletes the file (with all its versions and markers). RemoveAllVersions() error // Base returns the base name (last element) Base() string // Path returns a string representing the full path Path() string // ReadDir lists the files in a particular Path ReadDir() ([]Path, error) // ReadTree lists all files (recursively) in the subtree rooted at the current Path /// Note: returns only files, not directories ReadTree() ([]Path, error) }
Path is a path in the VFS space, which we can read, write, list etc
type S3Acl ¶ added in v1.10.0
type S3Acl struct {
RequestACL *string
}
S3Acl is an ACL implementation for objects on S3
type S3BucketDetails ¶ added in v1.10.0
type S3BucketDetails struct {
// contains filtered or unexported fields
}
type S3Context ¶ added in v1.4.1
type S3Context struct {
// contains filtered or unexported fields
}
func NewS3Context ¶ added in v1.4.1
func NewS3Context() *S3Context
type S3Path ¶
type S3Path struct {
// contains filtered or unexported fields
}
func (*S3Path) CreateFile ¶
func (p *S3Path) CreateFile(data io.ReadSeeker, acl ACL) error
func (*S3Path) GetHTTPsUrl ¶ added in v1.21.0
func (*S3Path) RemoveAllVersions ¶ added in v1.16.3
type SSHPath ¶
type SSHPath struct {
// contains filtered or unexported fields
}
func NewSSHPath ¶
func (*SSHPath) CreateFile ¶
func (p *SSHPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*SSHPath) RemoveAllVersions ¶ added in v1.16.3
type SwiftPath ¶ added in v1.10.0
type SwiftPath struct {
// contains filtered or unexported fields
}
SwiftPath is a vfs path for Openstack Cloud Storage.
func NewSwiftPath ¶ added in v1.10.0
func NewSwiftPath(client *gophercloud.ServiceClient, bucket string, key string) (*SwiftPath, error)
func (*SwiftPath) CreateFile ¶ added in v1.10.0
func (p *SwiftPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*SwiftPath) PreferredHash ¶ added in v1.10.0
func (*SwiftPath) RemoveAllVersions ¶ added in v1.16.3
type VFSContext ¶
type VFSContext struct {
// contains filtered or unexported fields
}
VFSContext is a 'context' for VFS, that is normally a singleton but allows us to configure S3 credentials, for example
func (*VFSContext) BuildVfsPath ¶
func (c *VFSContext) BuildVfsPath(p string) (Path, error)
func (*VFSContext) ReadFile ¶
func (c *VFSContext) ReadFile(location string, options ...VFSOption) ([]byte, error)
ReadFile reads a file from a vfs URL It supports additional schemes which don't (yet) have full VFS implementations:
metadata: reads from instance metadata on GCE/AWS http / https: reads from HTTP
func (*VFSContext) ResetMemfsContext ¶ added in v1.10.0
func (c *VFSContext) ResetMemfsContext(clusterReadable bool)
type VFSOption ¶ added in v1.15.1
type VFSOption func(options *vfsOptions)
func WithBackoff ¶ added in v1.15.1
WithBackoff specifies a custom VFS backoff policy
type VaultPath ¶ added in v1.19.0
type VaultPath struct {
// contains filtered or unexported fields
}
func (*VaultPath) CreateFile ¶ added in v1.19.0
func (p *VaultPath) CreateFile(data io.ReadSeeker, acl ACL) error
func (*VaultPath) RemoveAllVersions ¶ added in v1.19.0
func (VaultPath) SetClientToken ¶ added in v1.19.0
type WriteOption ¶ added in v1.4.1
type WriteOption string
const ( WriteOptionCreate WriteOption = "Create" WriteOptionOnlyIfExists WriteOption = "IfExists" )