Documentation ¶
Overview ¶
Package drive provides the definitions for the low-level pfs storage drivers.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsPermissionError ¶ added in v1.1.0
IsPermissionError returns true if a given error is a permission error.
Types ¶
type Driver ¶
type Driver interface { CreateRepo(repo *pfs.Repo, provenance []*pfs.Repo) error InspectRepo(repo *pfs.Repo) (*pfs.RepoInfo, error) ListRepo(provenance []*pfs.Repo) ([]*pfs.RepoInfo, error) DeleteRepo(repo *pfs.Repo, force bool) error StartCommit(repo *pfs.Repo, commitID string, parentID string, branch string, started *google_protobuf.Timestamp, provenance []*pfs.Commit) (*pfs.Commit, error) FinishCommit(commit *pfs.Commit, finished *google_protobuf.Timestamp, cancel bool) error ArchiveCommit(commit []*pfs.Commit) error InspectCommit(commit *pfs.Commit) (*pfs.CommitInfo, error) ListCommit(repo []*pfs.Repo, commitType pfs.CommitType, fromCommit []*pfs.Commit, provenance []*pfs.Commit, status pfs.CommitStatus, block bool) ([]*pfs.CommitInfo, error) FlushCommit(fromCommits []*pfs.Commit, toRepos []*pfs.Repo) ([]*pfs.CommitInfo, error) ListBranch(repo *pfs.Repo) ([]*pfs.CommitInfo, error) DeleteCommit(commit *pfs.Commit) error PutFile(file *pfs.File, delimiter pfs.Delimiter, reader io.Reader) error MakeDirectory(file *pfs.File) error GetFile(file *pfs.File, filterShard *pfs.Shard, offset int64, size int64, diffMethod *pfs.DiffMethod) (io.ReadCloser, error) InspectFile(file *pfs.File, filterShard *pfs.Shard, diffMethod *pfs.DiffMethod) (*pfs.FileInfo, error) ListFile(file *pfs.File, filterShard *pfs.Shard, diffMethod *pfs.DiffMethod, recurse bool) ([]*pfs.FileInfo, error) DeleteFile(file *pfs.File) error DeleteAll() error ArchiveAll() error Dump() // If strategy is SQUASH, to is the ID of an open commit // If strategy is REPLAY, to is a branch name Merge(repo *pfs.Repo, commits []*pfs.Commit, to string, strategy pfs.MergeStrategy, cancel bool) (*pfs.Commits, error) }
Driver represents a low-level pfs storage driver.
type PfsRefactorDriver ¶
type PfsRefactorDriver interface { CreateRepo(repo *pfs.Repo, provenance []*pfs.Repo) error InspectRepo(repo *pfs.Repo) (*pfs.RepoInfo, error) ListRepo(provenance []*pfs.Repo) ([]*pfs.RepoInfo, error) DeleteRepo(repo *pfs.Repo, force bool) error StartCommit(repo *pfs.Repo, branch string, provenance []*pfs.Commit) (CommitID, error) StartCommitNewBranch(repo *pfs.Repo, parentID string, branch string, provenance []*pfs.Commit) (CommitID, error) FinishCommit(commit CommitID, cancel bool) error ArchiveCommit(commit CommitID) error InspectCommit(commit CommitID) (*pfs.CommitInfo, error) ListCommit(repo *pfs.Repo, branch string, commitType pfs.CommitType, fromCommit *pfs.Commit, provenance []*pfs.Commit, all bool) ([]*pfs.CommitInfo, error) FlushCommit(fromCommits []*pfs.Commit, toRepos []*pfs.Repo) ([]*pfs.CommitInfo, error) ListBranch(repo *pfs.Repo) ([]string, error) DeleteCommit(commit CommitID) error PutFile(file *pfs.File, delimiter pfs.Delimiter, reader io.Reader) error MakeDirectory(file *pfs.File) error GetFile(file *pfs.File, filterShard *pfs.Shard, offset int64, size int64, from CommitID, unsafe bool) (io.ReadCloser, error) InspectFile(file *pfs.File, filterShard *pfs.Shard, from CommitID, unsafe bool) (*pfs.FileInfo, error) ListFile(file *pfs.File, filterShard *pfs.Shard, from CommitID, recurse bool, unsafe bool) ([]*pfs.FileInfo, error) DeleteFile(file *pfs.File, unsafe bool) error DeleteAll() error ArchiveAll() error Squash(from []*pfs.Commit, to *pfs.Commit) error Merge(repo string, commits []*pfs.Commit, toBranch string, strategy pfs.MergeStrategy) (*pfs.Commits, error) Dump() }
PfsRefactorDriver is only here for documentation purposes, showing how we envision the new PFS API to be like.
Click to show internal directories.
Click to hide internal directories.