Versions in this module Expand all Collapse all v0 v0.0.2 Apr 15, 2024 Changes in this version + type ExecutionPlan interface + ModuleBranchesToSync func() []ModuleBranch + ModuleTagsToSync func() []ModuleTags + Nop func() bool + type Handler interface + GetBranchHead func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, ...) (*registryv1alpha1.RepositoryCommit, error) + GetReleaseHead func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity) (*registryv1alpha1.RepositoryCommit, error) + IsBranchSynced func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, ...) (bool, error) + IsGitCommitSynced func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, hash git.Hash) (bool, error) + IsGitCommitSyncedToBranch func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, ...) (bool, error) + IsProtectedBranch func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, ...) (bool, error) + IsReleaseBranch func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, ...) (bool, error) + ResolveSyncPoint func(ctx context.Context, moduleIdentity bufmoduleref.ModuleIdentity, ...) (git.Hash, error) + SyncModuleBranch func(ctx context.Context, moduleBranch ModuleBranch) error + SyncModuleTags func(ctx context.Context, moduleTags ModuleTags) error + type ModuleBranch interface + BranchName func() string + CommitsToSync func() []ModuleCommit + Directory func() string + TargetModuleIdentity func() bufmoduleref.ModuleIdentity + type ModuleCommit interface + Bucket func(ctx context.Context) (storage.ReadBucket, error) + Commit func() git.Commit + Tags func() []string + type ModuleTags interface + TaggedCommitsToSync func() []TaggedCommit + TargetModuleIdentity func() bufmoduleref.ModuleIdentity + type Syncer interface + Plan func(context.Context) (ExecutionPlan, error) + Sync func(context.Context) error + func NewSyncer(logger *zap.Logger, repo git.Repository, ...) (Syncer, error) + type SyncerOption func(*syncer) error + func SyncerWithAllBranches() SyncerOption + func SyncerWithGitRemote(gitRemoteName string) SyncerOption + func SyncerWithModule(moduleDir string, identityOverride bufmoduleref.ModuleIdentity) SyncerOption + type TaggedCommit interface + Commit func() git.Commit + Tags func() []string