Documentation ¶
Index ¶
- Constants
- Variables
- func ContentTypeOrDefault(ct string) string
- func EntryToValue(entry *Entry) (*graveler.Value, error)
- func GetStartPos(prefix, after, delimiter string) string
- func MustEntryToValue(entry *Entry) *graveler.Value
- func NewEntryToValueIterator(it EntryIterator) *entryValueIterator
- func NewValueToEntryIterator(it graveler.ValueIterator) *valueEntryIterator
- func NewWalkEntryIterator(ctx context.Context, walker *store.WalkerWrapper, ...) (*walkEntryIterator, error)
- func ValidatePath(v interface{}) error
- type ActionsOutputWriter
- type ActionsSource
- type AddressType
- type Branch
- type Catalog
- func (c *Catalog) BranchExists(ctx context.Context, repository string, branch string) (bool, error)
- func (c *Catalog) Close() error
- func (c *Catalog) Commit(ctx context.Context, repository, branch, message, committer string, ...) (*CommitLog, error)
- func (c *Catalog) Compare(ctx context.Context, repository, leftReference string, rightReference string, ...) (Differences, bool, error)
- func (c *Catalog) CreateBareRepository(ctx context.Context, repository string, storageNamespace string, ...) (*Repository, error)
- func (c *Catalog) CreateBranch(ctx context.Context, repository string, branch string, sourceBranch string) (*CommitLog, error)
- func (c *Catalog) CreateBranchProtectionRule(ctx context.Context, repositoryID string, pattern string, ...) error
- func (c *Catalog) CreateEntry(ctx context.Context, repository string, branch string, entry DBEntry, ...) error
- func (c *Catalog) CreateRepository(ctx context.Context, repository string, storageNamespace string, branch string) (*Repository, error)
- func (c *Catalog) CreateTag(ctx context.Context, repository string, tagID string, ref string) (string, error)
- func (c *Catalog) DeleteBranch(ctx context.Context, repository string, branch string) error
- func (c *Catalog) DeleteBranchProtectionRule(ctx context.Context, repositoryID string, pattern string) error
- func (c *Catalog) DeleteEntry(ctx context.Context, repository string, branch string, path string) error
- func (c *Catalog) DeleteRepository(ctx context.Context, repository string) error
- func (c *Catalog) DeleteTag(ctx context.Context, repository string, tagID string) error
- func (c *Catalog) Diff(ctx context.Context, repository string, leftReference string, ...) (Differences, bool, error)
- func (c *Catalog) DiffUncommitted(ctx context.Context, repository, branch, prefix, delimiter string, limit int, ...) (Differences, bool, error)
- func (c *Catalog) DumpBranches(ctx context.Context, repositoryID string) (string, error)
- func (c *Catalog) DumpCommits(ctx context.Context, repositoryID string) (string, error)
- func (c *Catalog) DumpTags(ctx context.Context, repositoryID string) (string, error)
- func (c *Catalog) GetBranchProtectionRules(ctx context.Context, repositoryID string) (*graveler.BranchProtectionRules, error)
- func (c *Catalog) GetBranchReference(ctx context.Context, repository string, branch string) (string, error)
- func (c *Catalog) GetCommit(ctx context.Context, repository string, reference string) (*CommitLog, error)
- func (c *Catalog) GetEntry(ctx context.Context, repository string, reference string, path string, ...) (*DBEntry, error)
- func (c *Catalog) GetGarbageCollectionRules(ctx context.Context, repositoryID string) (*graveler.GarbageCollectionRules, error)
- func (c *Catalog) GetMetaRange(ctx context.Context, repositoryID, metaRangeID string) (graveler.MetaRangeAddress, error)
- func (c *Catalog) GetRange(ctx context.Context, repositoryID, rangeID string) (graveler.RangeAddress, error)
- func (c *Catalog) GetRepository(ctx context.Context, repository string) (*Repository, error)
- func (c *Catalog) GetStagingToken(ctx context.Context, repository string, branch string) (*string, error)
- func (c *Catalog) GetTag(ctx context.Context, repository string, tagID string) (string, error)
- func (c *Catalog) ListBranches(ctx context.Context, repository string, prefix string, limit int, after string) ([]*Branch, bool, error)
- func (c *Catalog) ListCommits(ctx context.Context, repository string, branch string, params LogParams) ([]*CommitLog, bool, error)
- func (c *Catalog) ListEntries(ctx context.Context, repository string, reference string, prefix string, ...) ([]*DBEntry, bool, error)
- func (c *Catalog) ListRepositories(ctx context.Context, limit int, prefix, after string) ([]*Repository, bool, error)
- func (c *Catalog) ListTags(ctx context.Context, repository string, prefix string, limit int, after string) ([]*Tag, bool, error)
- func (c *Catalog) LoadBranches(ctx context.Context, repositoryID, branchesMetaRangeID string) error
- func (c *Catalog) LoadCommits(ctx context.Context, repositoryID, commitsMetaRangeID string) error
- func (c *Catalog) LoadTags(ctx context.Context, repositoryID, tagsMetaRangeID string) error
- func (c *Catalog) Merge(ctx context.Context, repository string, destinationBranch string, ...) (string, error)
- func (c *Catalog) PrepareExpiredCommits(ctx context.Context, repository string, previousRunID string) (*graveler.GarbageCollectionRunMetadata, error)
- func (c *Catalog) ResetBranch(ctx context.Context, repository string, branch string) error
- func (c *Catalog) ResetEntries(ctx context.Context, repository string, branch string, prefix string) error
- func (c *Catalog) ResetEntry(ctx context.Context, repository string, branch string, path string) error
- func (c *Catalog) Revert(ctx context.Context, repository string, branch string, params RevertParams) error
- func (c *Catalog) SetGarbageCollectionRules(ctx context.Context, repositoryID string, ...) error
- func (c *Catalog) SetHooksHandler(hooks graveler.HooksHandler)
- func (c *Catalog) WriteMetaRange(ctx context.Context, repositoryID string, ranges []*graveler.RangeInfo) (*graveler.MetaRangeInfo, error)
- func (c *Catalog) WriteRange(ctx context.Context, ...) (*graveler.RangeInfo, *Mark, error)
- type CommitLog
- type Config
- type DBEntry
- type DBEntryBuilder
- func (b *DBEntryBuilder) AddressType(addressType AddressType) *DBEntryBuilder
- func (b *DBEntryBuilder) Build() DBEntry
- func (b *DBEntryBuilder) Checksum(checksum string) *DBEntryBuilder
- func (b *DBEntryBuilder) CommonLevel(commonLevel bool) *DBEntryBuilder
- func (b *DBEntryBuilder) ContentType(contentType string) *DBEntryBuilder
- func (b *DBEntryBuilder) CreationDate(creationDate time.Time) *DBEntryBuilder
- func (b *DBEntryBuilder) Expired(expired bool) *DBEntryBuilder
- func (b *DBEntryBuilder) Metadata(metadata Metadata) *DBEntryBuilder
- func (b *DBEntryBuilder) Path(path string) *DBEntryBuilder
- func (b *DBEntryBuilder) PhysicalAddress(physicalAddress string) *DBEntryBuilder
- func (b *DBEntryBuilder) RelativeAddress(relative bool) *DBEntryBuilder
- func (b *DBEntryBuilder) Size(size int64) *DBEntryBuilder
- type DiffParams
- type DiffResultRecord
- type Difference
- type DifferenceType
- type Differences
- type Entry
- func (*Entry) Descriptor() ([]byte, []int)deprecated
- func (x *Entry) GetAddress() string
- func (x *Entry) GetAddressType() Entry_AddressType
- func (x *Entry) GetContentType() string
- func (x *Entry) GetETag() string
- func (x *Entry) GetLastModified() *timestamppb.Timestamp
- func (x *Entry) GetMetadata() map[string]string
- func (x *Entry) GetSize() int64
- func (*Entry) ProtoMessage()
- func (x *Entry) ProtoReflect() protoreflect.Message
- func (x *Entry) Reset()
- func (x *Entry) String() string
- type EntryDiff
- type EntryDiffIterator
- type EntryIterator
- type EntryListing
- type EntryListingIterator
- type EntryRecord
- type EntryWithMarker
- type Entry_AddressType
- func (Entry_AddressType) Descriptor() protoreflect.EnumDescriptor
- func (x Entry_AddressType) Enum() *Entry_AddressType
- func (Entry_AddressType) EnumDescriptor() ([]byte, []int)deprecated
- func (x Entry_AddressType) Number() protoreflect.EnumNumber
- func (x Entry_AddressType) String() string
- func (Entry_AddressType) Type() protoreflect.EnumType
- type ExpireResult
- type ExpiryRows
- type GetEntryParams
- type Interface
- type LogParams
- type Mark
- type Metadata
- type Path
- type PathRecord
- type Repository
- type RevertParams
- type Store
- type Tag
- type WalkerFactory
Constants ¶
const ( RangeFSName = "range" MetaRangeFSName = "meta-range" )
const ( ListRepositoriesLimitMax = 1000 ListBranchesLimitMax = 1000 ListTagsLimitMax = 1000 DiffLimitMax = 1000 ListEntriesLimitMax = 10000 )
const (
DefaultContentType = "application/octet-stream"
)
const (
DefaultPathDelimiter = "/"
)
const (
MaxPathLength = 1024
)
const NumberOfParentsOfNonMergeCommit = 1
Variables ¶
var ( Entry_AddressType_name = map[int32]string{ 0: "BY_PREFIX_DEPRECATED", 1: "RELATIVE", 2: "FULL", } Entry_AddressType_value = map[string]int32{ "BY_PREFIX_DEPRECATED": 0, "RELATIVE": 1, "FULL": 2, } )
Enum value maps for Entry_AddressType.
var ( ErrInvalid = errors.New("validation error") ErrInvalidType = fmt.Errorf("invalid type: %w", ErrInvalid) ErrRequiredValue = fmt.Errorf("required value: %w", ErrInvalid) ErrPathRequiredValue = fmt.Errorf("missing path: %w", ErrRequiredValue) ErrInvalidValue = fmt.Errorf("invalid value: %w", ErrInvalid) ErrNotFound = db.ErrNotFound ErrInvalidMetadataSrcFormat = errors.New("invalid metadata src format") ErrExpired = errors.New("expired from storage") ErrFeatureNotSupported = errors.New("feature not supported") ErrBranchNotFound = fmt.Errorf("branch %w", ErrNotFound) ErrRepositoryNotFound = fmt.Errorf("repository %w", ErrNotFound) ErrNoDifferenceWasFound = errors.New("no difference was found") ErrConflictFound = errors.New("conflict found") ErrInvalidRef = errors.New("invalid ref") )
var ( // ErrItClosed is used to determine the reason for the end of the walk ErrItClosed = errors.New("iterator closed") )
var ErrUnknownDiffType = errors.New("unknown graveler difference type")
var File_catalog_proto protoreflect.FileDescriptor
var ValidatePathOptional = validator.MakeValidateOptional(ValidatePath)
Functions ¶
func ContentTypeOrDefault ¶ added in v0.53.0
func GetStartPos ¶ added in v0.42.0
GetStartPos returns a key that SeekGE will transform to a place start iterating on all elements in
the keys that start with `prefix' after `after' and taking `delimiter' into account
func MustEntryToValue ¶
func NewEntryToValueIterator ¶
func NewEntryToValueIterator(it EntryIterator) *entryValueIterator
func NewValueToEntryIterator ¶
func NewValueToEntryIterator(it graveler.ValueIterator) *valueEntryIterator
func NewWalkEntryIterator ¶ added in v0.65.0
func ValidatePath ¶
func ValidatePath(v interface{}) error
Types ¶
type ActionsOutputWriter ¶
type ActionsOutputWriter struct {
// contains filtered or unexported fields
}
func NewActionsOutputWriter ¶
func NewActionsOutputWriter(blockAdapter block.Adapter) *ActionsOutputWriter
func (*ActionsOutputWriter) OutputWrite ¶
type ActionsSource ¶
type ActionsSource struct {
// contains filtered or unexported fields
}
func NewActionsSource ¶
func NewActionsSource(catalog *Catalog) *ActionsSource
func (*ActionsSource) List ¶
func (s *ActionsSource) List(ctx context.Context, record graveler.HookRecord) ([]string, error)
func (*ActionsSource) Load ¶
func (s *ActionsSource) Load(ctx context.Context, record graveler.HookRecord, name string) ([]byte, error)
type AddressType ¶ added in v0.40.0
type AddressType int32
AddressType is the type of an entry address
const ( // Deprecated: indicates that the address might be relative or full. // Used only for backward compatibility and should not be used for creating entries. AddressTypeByPrefixDeprecated AddressType = 0 // AddressTypeRelative indicates that the address is relative to the storage namespace. // For example: "foo/bar" AddressTypeRelative AddressType = 1 // AddressTypeFull indicates that the address is the full address of the object in the object store. // For example: "s3://bucket/foo/bar" AddressTypeFull AddressType = 2 )
func (AddressType) ToIdentifierType ¶ added in v0.40.0
func (at AddressType) ToIdentifierType() block.IdentifierType
nolint:staticcheck
type Catalog ¶
type Catalog struct { BlockAdapter block.Adapter Store Store // contains filtered or unexported fields }
func (*Catalog) BranchExists ¶
func (*Catalog) Compare ¶
func (c *Catalog) Compare(ctx context.Context, repository, leftReference string, rightReference string, params DiffParams) (Differences, bool, error)
func (*Catalog) CreateBareRepository ¶
func (c *Catalog) CreateBareRepository(ctx context.Context, repository string, storageNamespace string, defaultBranchID string) (*Repository, error)
CreateBareRepository creates a new repository pointing to 'storageNamespace' (ex: s3://bucket1/repo) with no initial branch or commit
func (*Catalog) CreateBranch ¶
func (*Catalog) CreateBranchProtectionRule ¶ added in v0.52.0
func (*Catalog) CreateEntry ¶
func (*Catalog) CreateRepository ¶
func (c *Catalog) CreateRepository(ctx context.Context, repository string, storageNamespace string, branch string) (*Repository, error)
CreateRepository create a new repository pointing to 'storageNamespace' (ex: s3://bucket1/repo) with default branch name 'branch'
func (*Catalog) DeleteBranch ¶
func (*Catalog) DeleteBranchProtectionRule ¶ added in v0.52.0
func (*Catalog) DeleteEntry ¶
func (*Catalog) DeleteRepository ¶
DeleteRepository delete a repository
func (*Catalog) Diff ¶
func (c *Catalog) Diff(ctx context.Context, repository string, leftReference string, rightReference string, params DiffParams) (Differences, bool, error)
func (*Catalog) DiffUncommitted ¶
func (*Catalog) DumpBranches ¶
func (*Catalog) DumpCommits ¶
func (*Catalog) GetBranchProtectionRules ¶ added in v0.52.0
func (*Catalog) GetBranchReference ¶
func (*Catalog) GetEntry ¶
func (c *Catalog) GetEntry(ctx context.Context, repository string, reference string, path string, _ GetEntryParams) (*DBEntry, error)
GetEntry returns the current entry for path in repository branch reference. Returns the entry with ExpiredError if it has expired from underlying storage.
func (*Catalog) GetGarbageCollectionRules ¶ added in v0.43.0
func (*Catalog) GetMetaRange ¶
func (*Catalog) GetRepository ¶
GetRepository get repository information
func (*Catalog) GetStagingToken ¶ added in v0.40.0
func (*Catalog) ListBranches ¶
func (*Catalog) ListCommits ¶
func (*Catalog) ListEntries ¶
func (*Catalog) ListRepositories ¶
func (c *Catalog) ListRepositories(ctx context.Context, limit int, prefix, after string) ([]*Repository, bool, error)
ListRepositories list repositories information, the bool returned is true when more repositories can be listed. In this case pass the last repository name as 'after' on the next call to ListRepositories
func (*Catalog) LoadBranches ¶
func (*Catalog) LoadCommits ¶
func (*Catalog) PrepareExpiredCommits ¶ added in v0.43.0
func (*Catalog) ResetBranch ¶
func (*Catalog) ResetEntries ¶
func (*Catalog) ResetEntry ¶
func (*Catalog) SetGarbageCollectionRules ¶ added in v0.43.0
func (*Catalog) SetHooksHandler ¶
func (c *Catalog) SetHooksHandler(hooks graveler.HooksHandler)
func (*Catalog) WriteMetaRange ¶ added in v0.65.0
type DBEntry ¶
type DBEntry struct { CommonLevel bool Path string `db:"path"` PhysicalAddress string `db:"physical_address"` CreationDate time.Time `db:"creation_date"` Size int64 `db:"size"` Checksum string `db:"checksum"` Metadata Metadata `db:"metadata"` Expired bool `db:"is_expired"` AddressType AddressType `db:"address_type"` ContentType string `db:"content_type"` }
type DBEntryBuilder ¶ added in v0.53.0
type DBEntryBuilder struct {
// contains filtered or unexported fields
}
DBEntryBuilder DBEntry builder
func NewDBEntryBuilder ¶ added in v0.53.0
func NewDBEntryBuilder() *DBEntryBuilder
func (*DBEntryBuilder) AddressType ¶ added in v0.53.0
func (b *DBEntryBuilder) AddressType(addressType AddressType) *DBEntryBuilder
func (*DBEntryBuilder) Build ¶ added in v0.53.0
func (b *DBEntryBuilder) Build() DBEntry
func (*DBEntryBuilder) Checksum ¶ added in v0.53.0
func (b *DBEntryBuilder) Checksum(checksum string) *DBEntryBuilder
func (*DBEntryBuilder) CommonLevel ¶ added in v0.53.0
func (b *DBEntryBuilder) CommonLevel(commonLevel bool) *DBEntryBuilder
func (*DBEntryBuilder) ContentType ¶ added in v0.53.0
func (b *DBEntryBuilder) ContentType(contentType string) *DBEntryBuilder
func (*DBEntryBuilder) CreationDate ¶ added in v0.53.0
func (b *DBEntryBuilder) CreationDate(creationDate time.Time) *DBEntryBuilder
func (*DBEntryBuilder) Expired ¶ added in v0.53.0
func (b *DBEntryBuilder) Expired(expired bool) *DBEntryBuilder
func (*DBEntryBuilder) Metadata ¶ added in v0.53.0
func (b *DBEntryBuilder) Metadata(metadata Metadata) *DBEntryBuilder
func (*DBEntryBuilder) Path ¶ added in v0.53.0
func (b *DBEntryBuilder) Path(path string) *DBEntryBuilder
func (*DBEntryBuilder) PhysicalAddress ¶ added in v0.53.0
func (b *DBEntryBuilder) PhysicalAddress(physicalAddress string) *DBEntryBuilder
func (*DBEntryBuilder) RelativeAddress ¶ added in v0.53.0
func (b *DBEntryBuilder) RelativeAddress(relative bool) *DBEntryBuilder
func (*DBEntryBuilder) Size ¶ added in v0.53.0
func (b *DBEntryBuilder) Size(size int64) *DBEntryBuilder
type DiffParams ¶
type DiffResultRecord ¶
type DiffResultRecord struct { TargetEntryNotInDirectBranch bool // the entry is reflected via lineage, NOT in the branch itself Difference EntryCtid *string // CTID of the modified/added entry. Do not use outside of catalog diff-by-iterators. https://github.com/treeverse/lakeFS/issues/831 }
type Difference ¶
type Difference struct { DBEntry // Partially filled. Path is always set. Type DifferenceType `db:"diff_type"` }
func (Difference) String ¶
func (d Difference) String() string
type DifferenceType ¶
type DifferenceType int
const ( DifferenceTypeAdded DifferenceType = iota DifferenceTypeRemoved DifferenceTypeChanged DifferenceTypeConflict DifferenceTypeNone )
type Differences ¶
type Differences []Difference
func (Differences) Equal ¶
func (d Differences) Equal(other Differences) bool
type Entry ¶
type Entry struct { Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` LastModified *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=last_modified,json=lastModified,proto3" json:"last_modified,omitempty"` Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"` ETag string `protobuf:"bytes,4,opt,name=e_tag,json=eTag,proto3" json:"e_tag,omitempty"` Metadata map[string]string `` /* 157-byte string literal not displayed */ AddressType Entry_AddressType `` /* 126-byte string literal not displayed */ ContentType string `protobuf:"bytes,7,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"` // contains filtered or unexported fields }
func (*Entry) Descriptor
deprecated
func (*Entry) GetAddress ¶
func (*Entry) GetAddressType ¶ added in v0.40.0
func (x *Entry) GetAddressType() Entry_AddressType
func (*Entry) GetContentType ¶ added in v0.53.0
func (*Entry) GetLastModified ¶
func (x *Entry) GetLastModified() *timestamppb.Timestamp
func (*Entry) GetMetadata ¶
func (*Entry) ProtoMessage ¶
func (*Entry) ProtoMessage()
func (*Entry) ProtoReflect ¶
func (x *Entry) ProtoReflect() protoreflect.Message
type EntryDiffIterator ¶
type EntryDiffIterator interface { Next() bool SeekGE(id Path) Value() *EntryDiff Err() error Close() }
func NewEntryDiffIterator ¶
func NewEntryDiffIterator(it graveler.DiffIterator) EntryDiffIterator
type EntryIterator ¶
type EntryIterator interface { Next() bool SeekGE(id Path) Value() *EntryRecord Err() error Close() }
func NewPrefixIterator ¶
func NewPrefixIterator(it EntryIterator, prefix Path) EntryIterator
type EntryListing ¶
type EntryListingIterator ¶
type EntryListingIterator interface { Next() bool SeekGE(id Path) Value() *EntryListing Err() error Close() }
func NewEntryListingIterator ¶
func NewEntryListingIterator(it EntryIterator, prefix Path, delimiter Path) EntryListingIterator
type EntryRecord ¶
type EntryWithMarker ¶ added in v0.65.0
type EntryWithMarker struct { EntryRecord Mark }
type Entry_AddressType ¶ added in v0.40.0
type Entry_AddressType int32
const ( // Deprecated. // Unknown address type (should only exist for old commits) // is resolved (to Relative or Full) by the prefix of the address. Entry_BY_PREFIX_DEPRECATED Entry_AddressType = 0 Entry_RELATIVE Entry_AddressType = 1 Entry_FULL Entry_AddressType = 2 )
func (Entry_AddressType) Descriptor ¶ added in v0.40.0
func (Entry_AddressType) Descriptor() protoreflect.EnumDescriptor
func (Entry_AddressType) Enum ¶ added in v0.40.0
func (x Entry_AddressType) Enum() *Entry_AddressType
func (Entry_AddressType) EnumDescriptor
deprecated
added in
v0.40.0
func (Entry_AddressType) EnumDescriptor() ([]byte, []int)
Deprecated: Use Entry_AddressType.Descriptor instead.
func (Entry_AddressType) Number ¶ added in v0.40.0
func (x Entry_AddressType) Number() protoreflect.EnumNumber
func (Entry_AddressType) String ¶ added in v0.40.0
func (x Entry_AddressType) String() string
func (Entry_AddressType) Type ¶ added in v0.40.0
func (Entry_AddressType) Type() protoreflect.EnumType
type ExpireResult ¶
type ExpiryRows ¶
type ExpiryRows interface { Close() Next() bool Err() error // Read returns the current from ExpiryRows, or an error on failure. Call it only after // successfully calling Next. Read() (*ExpireResult, error) }
ExpiryRows is a database iterator over ExpiryResults. Use Next to advance from row to row.
type GetEntryParams ¶
type GetEntryParams struct { // For entries to expired objects the Expired bit is set. If true, GetEntry returns // successfully for expired entries, otherwise it returns the entry with ErrExpired. ReturnExpired bool }
GetEntryParams configures what entries GetEntry returns.
type Interface ¶
type Interface interface { // CreateRepository create a new repository pointing to 'storageNamespace' (ex: s3://bucket1/repo) with default branch name 'branch' CreateRepository(ctx context.Context, repository string, storageNamespace string, branch string) (*Repository, error) // CreateBareRepository create a new repository pointing to 'storageNamespace' (ex: s3://bucket1/repo) with no initial branch or commit // defaultBranchID will point to a non-existent branch on creation, it is up to the caller to eventually create it. CreateBareRepository(ctx context.Context, repository string, storageNamespace string, defaultBranchID string) (*Repository, error) // GetRepository get repository information GetRepository(ctx context.Context, repository string) (*Repository, error) // DeleteRepository delete a repository DeleteRepository(ctx context.Context, repository string) error // ListRepositories list repositories information, the bool returned is true when more repositories can be listed. // In this case pass the last repository name as 'after' on the next call to ListRepositories ListRepositories(ctx context.Context, limit int, prefix, after string) ([]*Repository, bool, error) GetStagingToken(ctx context.Context, repository string, branch string) (*string, error) CreateBranch(ctx context.Context, repository, branch string, sourceRef string) (*CommitLog, error) DeleteBranch(ctx context.Context, repository, branch string) error ListBranches(ctx context.Context, repository string, prefix string, limit int, after string) ([]*Branch, bool, error) BranchExists(ctx context.Context, repository string, branch string) (bool, error) GetBranchReference(ctx context.Context, repository, branch string) (string, error) ResetBranch(ctx context.Context, repository, branch string) error CreateTag(ctx context.Context, repository, tagID string, ref string) (string, error) DeleteTag(ctx context.Context, repository, tagID string) error ListTags(ctx context.Context, repository string, prefix string, limit int, after string) ([]*Tag, bool, error) GetTag(ctx context.Context, repository, tagID string) (string, error) // GetEntry returns the current entry for path in repository branch reference. Returns // the entry with ExpiredError if it has expired from underlying storage. GetEntry(ctx context.Context, repository, reference string, path string, params GetEntryParams) (*DBEntry, error) CreateEntry(ctx context.Context, repository, branch string, entry DBEntry, writeConditions ...graveler.WriteConditionOption) error DeleteEntry(ctx context.Context, repository, branch string, path string) error ListEntries(ctx context.Context, repository, reference string, prefix, after string, delimiter string, limit int) ([]*DBEntry, bool, error) ResetEntry(ctx context.Context, repository, branch string, path string) error ResetEntries(ctx context.Context, repository, branch string, prefix string) error Commit(ctx context.Context, repository, branch, message, committer string, metadata Metadata, date *int64, sourceMetarange *string) (*CommitLog, error) GetCommit(ctx context.Context, repository, reference string) (*CommitLog, error) ListCommits(ctx context.Context, repository, branch string, params LogParams) ([]*CommitLog, bool, error) // Revert creates a reverse patch to the given commit, and applies it as a new commit on the given branch. Revert(ctx context.Context, repository, branch string, params RevertParams) error Diff(ctx context.Context, repository, leftReference string, rightReference string, params DiffParams) (Differences, bool, error) Compare(ctx context.Context, repository, leftReference string, rightReference string, params DiffParams) (Differences, bool, error) DiffUncommitted(ctx context.Context, repository, branch, prefix, delimiter string, limit int, after string) (Differences, bool, error) Merge(ctx context.Context, repository, destinationBranch, sourceRef, committer, message string, metadata Metadata, strategy string) (string, error) // dump/load metadata DumpCommits(ctx context.Context, repositoryID string) (string, error) DumpBranches(ctx context.Context, repositoryID string) (string, error) DumpTags(ctx context.Context, repositoryID string) (string, error) LoadCommits(ctx context.Context, repositoryID, commitsMetaRangeID string) error LoadBranches(ctx context.Context, repositoryID, branchesMetaRangeID string) error LoadTags(ctx context.Context, repositoryID, tagsMetaRangeID string) error // forward metadata for thick clients GetMetaRange(ctx context.Context, repositoryID, metaRangeID string) (graveler.MetaRangeAddress, error) GetRange(ctx context.Context, repositoryID, rangeID string) (graveler.RangeAddress, error) WriteRange(ctx context.Context, repositoryID, fromSourceURI, prepend, after, continuationToken string) (*graveler.RangeInfo, *Mark, error) WriteMetaRange(ctx context.Context, repositoryID string, ranges []*graveler.RangeInfo) (*graveler.MetaRangeInfo, error) GetGarbageCollectionRules(ctx context.Context, repositoryID string) (*graveler.GarbageCollectionRules, error) SetGarbageCollectionRules(ctx context.Context, repositoryID string, rules *graveler.GarbageCollectionRules) error PrepareExpiredCommits(ctx context.Context, repositoryID string, previousRunID string) (*graveler.GarbageCollectionRunMetadata, error) GetBranchProtectionRules(ctx context.Context, repositoryID string) (*graveler.BranchProtectionRules, error) DeleteBranchProtectionRule(ctx context.Context, repositoryID string, pattern string) error CreateBranchProtectionRule(ctx context.Context, repositoryID string, pattern string, blockedActions []graveler.BranchProtectionBlockedAction) error io.Closer }
type LogParams ¶ added in v0.54.0
type LogParams struct { PathList []PathRecord FromReference string Limit int }
type Mark ¶ added in v0.65.0
Mark stands for pagination information when listing objects from the blockstore. It is used for server-client communication on the status of range ingestion.
type PathRecord ¶ added in v0.54.0
type Repository ¶
type RevertParams ¶
type Store ¶
type Store interface { graveler.KeyValueStore graveler.VersionController graveler.Dumper graveler.Loader graveler.Plumbing }
type WalkerFactory ¶ added in v0.65.0
type WalkerFactory interface {
GetWalker(ctx context.Context, opts store.WalkerOptions) (*store.WalkerWrapper, error)
}
WalkerFactory provides an abstraction for creating Walker