Documentation ¶
Index ¶
- Constants
- func BuildExitCode(errs Error) int
- func ConvertErrors(errs []error) error
- func NewJobPostFailedBackupUnlockExecutable(job Job) executor.Executable
- func NewJobPostRestoreUnlockExecutable(job Job) executor.Executable
- func NewJobPostSuccessfulBackupUnlockExecutable(job Job) executor.Executable
- func NewJobPreBackupLockExecutable(job Job) executor.Executable
- func NewJobPreRestoreLockExecutable(job Job) executor.Executable
- func Reverse(jobsSliceOfSlices [][]Job) [][]Job
- type AddFinishTimeStep
- type ArtifactCopier
- type ArtifactDirError
- type ArtifactIdentifier
- type AuthInfo
- type Backup
- type BackupArtifact
- type BackupChecker
- type BackupChecksum
- type BackupCleaner
- type BackupDownloadExecutable
- type BackupError
- type BackupExecutable
- type BackupManager
- type BackupStep
- type BackupUploadExecutable
- type BackupableStep
- type Backuper
- type CleanupError
- type CleanupPreviousStep
- type CleanupStep
- type CopyToRemoteStep
- type CreateArtifactStep
- type Deployment
- type DeploymentManager
- type DrainStep
- type Error
- func (err Error) ContainsArtifactDirError() bool
- func (err Error) ContainsUnlockOrCleanupOrArtifactDirExists() bool
- func (err Error) Error() string
- func (err Error) IsCleanup() bool
- func (err Error) IsFatal() bool
- func (err Error) IsNil() bool
- func (err Error) IsPostBackup() bool
- func (err Error) PrettyError(includeStacktrace bool) string
- type FindDeploymentStep
- type Instance
- type InstanceIdentifer
- type Job
- type JobPostBackupUnlockExecutor
- type JobPostRestoreUnlockExecutor
- type JobPreBackupLockExecutor
- type JobPreRestoreLockExecutor
- type JobSpecifier
- type Jobs
- type LockError
- type LockOrderer
- type LockStep
- type Logger
- type Node
- type PostBackupUnlockStep
- type PostRestoreUnlockStep
- type PreRestoreLockStep
- type RestorableStep
- type RestoreCleaner
- type RestoreStep
- type Restorer
- type Session
- func (session *Session) CurrentArtifact() Backup
- func (session *Session) CurrentArtifactPath() string
- func (session *Session) CurrentDeployment() Deployment
- func (session *Session) DeploymentName() string
- func (session *Session) SetCurrentArtifact(artifact Backup)
- func (session *Session) SetCurrentArtifactPath(artifactPath string)
- func (session *Session) SetCurrentDeployment(deployment Deployment)
- type Step
- func NewAddFinishTimeStep(nowFunc func() time.Time) Step
- func NewBackupStep(executor executor.Executor) Step
- func NewBackupableStep(lockOrderer LockOrderer, logger Logger) Step
- func NewCleanupPreviousStep() Step
- func NewCleanupStep() Step
- func NewCopyToRemoteStep(artifactCopier ArtifactCopier) Step
- func NewCreateArtifactStep(logger Logger, backupManager BackupManager, ...) Step
- func NewDrainStep(logger Logger, artifactCopier ArtifactCopier) Step
- func NewFindDeploymentStep(deploymentManager DeploymentManager, logger Logger) Step
- func NewLockStep(lockOrderer LockOrderer, executor executor.Executor) Step
- func NewPostBackupUnlockStep(afterSuccessfulBackup bool, lockOrderer LockOrderer, ...) Step
- func NewPostRestoreUnlockStep(lockOrderer LockOrderer, executor executor.Executor) Step
- func NewPreRestoreLockStep(lockOrderer LockOrderer, executor executor.Executor) Step
- func NewRestorableStep(lockOrderer LockOrderer, logger Logger) Step
- func NewRestoreStep(logger Logger) Step
- func NewValidateArtifactStep(logger Logger, backupManager BackupManager) Step
- type UnlockError
- type ValidateArtifactStep
- type Workflow
Constants ¶
View Source
const ArtifactDirectory = "/var/vcap/store/bbr-backup"
Variables ¶
This section is empty.
Functions ¶
func BuildExitCode ¶ added in v1.1.4
func ConvertErrors ¶
func NewJobPostFailedBackupUnlockExecutable ¶ added in v1.4.0
func NewJobPostFailedBackupUnlockExecutable(job Job) executor.Executable
func NewJobPostRestoreUnlockExecutable ¶ added in v1.2.1
func NewJobPostRestoreUnlockExecutable(job Job) executor.Executable
func NewJobPostSuccessfulBackupUnlockExecutable ¶ added in v1.4.0
func NewJobPostSuccessfulBackupUnlockExecutable(job Job) executor.Executable
func NewJobPreBackupLockExecutable ¶ added in v1.2.1
func NewJobPreBackupLockExecutable(job Job) executor.Executable
func NewJobPreRestoreLockExecutable ¶ added in v1.2.1
func NewJobPreRestoreLockExecutable(job Job) executor.Executable
Types ¶
type AddFinishTimeStep ¶ added in v1.1.0
type AddFinishTimeStep struct {
// contains filtered or unexported fields
}
func (*AddFinishTimeStep) Run ¶ added in v1.1.0
func (s *AddFinishTimeStep) Run(session *Session) error
type ArtifactCopier ¶ added in v1.2.1
type ArtifactCopier interface { DownloadBackupFromDeployment(Backup, Deployment) error UploadBackupToDeployment(Backup, Deployment) error }
func NewArtifactCopier ¶ added in v1.2.1
func NewArtifactCopier(executor executor.Executor, logger Logger) ArtifactCopier
type ArtifactDirError ¶ added in v1.3.0
type ArtifactDirError customError
func NewArtifactDirError ¶ added in v1.3.0
func NewArtifactDirError(errorMessage string) ArtifactDirError
type ArtifactIdentifier ¶
type Backup ¶
type Backup interface { GetArtifactSize(ArtifactIdentifier) (string, error) CreateArtifact(ArtifactIdentifier) (io.WriteCloser, error) ReadArtifact(ArtifactIdentifier) (io.ReadCloser, error) AddChecksum(ArtifactIdentifier, BackupChecksum) error CreateMetadataFileWithStartTime(time.Time) error AddFinishTime(time.Time) error FetchChecksum(ArtifactIdentifier) (BackupChecksum, error) CalculateChecksum(ArtifactIdentifier) (BackupChecksum, error) DeploymentMatches(string, []Instance) (bool, error) SaveManifest(manifest string) error Valid() (bool, error) }
type BackupArtifact ¶
type BackupChecker ¶ added in v1.1.0
type BackupChecker struct {
*Workflow
}
func NewBackupChecker ¶ added in v1.1.0
func NewBackupChecker(logger Logger, deploymentManager DeploymentManager, lockOrderer LockOrderer) *BackupChecker
func (BackupChecker) Check ¶ added in v1.3.0
func (b BackupChecker) Check(deploymentName string) Error
type BackupChecksum ¶
func (BackupChecksum) Match ¶
func (b BackupChecksum) Match(other BackupChecksum) (bool, []string)
type BackupCleaner ¶ added in v1.1.0
func NewBackupCleaner ¶ added in v1.1.0
func NewBackupCleaner(logger Logger, deploymentManager DeploymentManager, lockOrderer LockOrderer, executor executor.Executor) *BackupCleaner
func (BackupCleaner) Cleanup ¶ added in v1.1.0
func (c BackupCleaner) Cleanup(deploymentName string) Error
type BackupDownloadExecutable ¶ added in v1.2.1
type BackupDownloadExecutable struct { Logger // contains filtered or unexported fields }
func NewBackupDownloadExecutable ¶ added in v1.2.1
func NewBackupDownloadExecutable(localBackup Backup, remoteArtifact BackupArtifact, logger Logger) BackupDownloadExecutable
func (BackupDownloadExecutable) Execute ¶ added in v1.2.1
func (e BackupDownloadExecutable) Execute() error
type BackupError ¶
type BackupError customError
func NewBackupError ¶
func NewBackupError(errorMessage string) BackupError
type BackupExecutable ¶ added in v1.3.0
type BackupExecutable struct {
Job
}
func NewBackupExecutable ¶ added in v1.3.0
func NewBackupExecutable(j Job) BackupExecutable
func (BackupExecutable) Execute ¶ added in v1.3.0
func (e BackupExecutable) Execute() error
type BackupManager ¶
type BackupStep ¶ added in v1.1.0
type BackupStep struct {
// contains filtered or unexported fields
}
func (*BackupStep) Run ¶ added in v1.1.0
func (s *BackupStep) Run(session *Session) error
type BackupUploadExecutable ¶ added in v1.2.1
type BackupUploadExecutable struct { Logger // contains filtered or unexported fields }
func NewBackupUploadExecutable ¶ added in v1.2.1
func NewBackupUploadExecutable(localBackup Backup, remoteArtifact BackupArtifact, instance Instance, logger Logger) BackupUploadExecutable
func (BackupUploadExecutable) Execute ¶ added in v1.2.1
func (e BackupUploadExecutable) Execute() error
type BackupableStep ¶ added in v1.1.0
type BackupableStep struct {
// contains filtered or unexported fields
}
func (*BackupableStep) Run ¶ added in v1.1.0
func (s *BackupableStep) Run(session *Session) error
type Backuper ¶
type Backuper struct {
// contains filtered or unexported fields
}
func NewBackuper ¶
func NewBackuper(backupManager BackupManager, logger Logger, deploymentManager DeploymentManager, lockOrderer LockOrderer, executor exe.Executor, nowFunc func() time.Time, artifactCopier ArtifactCopier, timestamp string) *Backuper
type CleanupError ¶
type CleanupError customError
func NewCleanupError ¶
func NewCleanupError(errorMessage string) CleanupError
type CleanupPreviousStep ¶ added in v1.1.0
type CleanupPreviousStep struct{}
func (*CleanupPreviousStep) Run ¶ added in v1.1.0
func (s *CleanupPreviousStep) Run(session *Session) error
type CleanupStep ¶ added in v1.1.0
type CleanupStep struct{}
func (*CleanupStep) Run ¶ added in v1.1.0
func (s *CleanupStep) Run(session *Session) error
type CopyToRemoteStep ¶ added in v1.1.0
type CopyToRemoteStep struct {
// contains filtered or unexported fields
}
func (*CopyToRemoteStep) Run ¶ added in v1.1.0
func (s *CopyToRemoteStep) Run(session *Session) error
type CreateArtifactStep ¶ added in v1.1.0
type CreateArtifactStep struct {
// contains filtered or unexported fields
}
func (*CreateArtifactStep) Run ¶ added in v1.1.0
func (s *CreateArtifactStep) Run(session *Session) error
type Deployment ¶
type Deployment interface { IsBackupable() bool BackupableInstances() []Instance CheckArtifactDir() error IsRestorable() bool RestorableInstances() []Instance PreBackupLock(LockOrderer, executor.Executor) error Backup(executor.Executor) error PostBackupUnlock(bool, LockOrderer, executor.Executor) error Restore() error Cleanup() error CleanupPrevious() error Instances() []Instance PreRestoreLock(LockOrderer, executor.Executor) error PostRestoreUnlock(LockOrderer, executor.Executor) error ValidateLockingDependencies(orderer LockOrderer) error }
func NewDeployment ¶
func NewDeployment(logger Logger, instancesArray []Instance) Deployment
type DeploymentManager ¶
type DrainStep ¶ added in v1.1.0
type DrainStep struct {
// contains filtered or unexported fields
}
type Error ¶
type Error []error
func (Error) ContainsArtifactDirError ¶ added in v1.3.0
func (Error) ContainsUnlockOrCleanupOrArtifactDirExists ¶ added in v1.4.0
func (Error) IsPostBackup ¶
func (Error) PrettyError ¶
type FindDeploymentStep ¶ added in v1.1.0
type FindDeploymentStep struct {
// contains filtered or unexported fields
}
func (*FindDeploymentStep) Run ¶ added in v1.1.0
func (s *FindDeploymentStep) Run(session *Session) error
type Instance ¶
type Instance interface { InstanceIdentifer IsBackupable() bool ArtifactDirExists() (bool, error) ArtifactDirCreated() bool MarkArtifactDirCreated() IsRestorable() bool Backup() error Restore() error Cleanup() error CleanupPrevious() error ArtifactsToBackup() []BackupArtifact ArtifactsToRestore() []BackupArtifact HasMetadataRestoreNames() bool Jobs() []Job }
type InstanceIdentifer ¶
type Job ¶ added in v1.1.0
type Job interface { HasBackup() bool HasRestore() bool HasNamedBackupArtifact() bool HasNamedRestoreArtifact() bool BackupArtifactName() string RestoreArtifactName() string HasMetadataRestoreName() bool Backup() error PreBackupLock() error PostBackupUnlock(afterSuccessfulBackup bool) error PreRestoreLock() error Restore() error PostRestoreUnlock() error Name() string Release() string InstanceIdentifier() string BackupArtifactDirectory() string RestoreArtifactDirectory() string BackupShouldBeLockedBefore() []JobSpecifier RestoreShouldBeLockedBefore() []JobSpecifier }
type JobPostBackupUnlockExecutor ¶ added in v1.2.1
type JobPostBackupUnlockExecutor struct { Job // contains filtered or unexported fields }
func (JobPostBackupUnlockExecutor) Execute ¶ added in v1.2.1
func (j JobPostBackupUnlockExecutor) Execute() error
type JobPostRestoreUnlockExecutor ¶ added in v1.2.1
type JobPostRestoreUnlockExecutor struct {
Job
}
func (JobPostRestoreUnlockExecutor) Execute ¶ added in v1.2.1
func (j JobPostRestoreUnlockExecutor) Execute() error
type JobPreBackupLockExecutor ¶ added in v1.2.1
type JobPreBackupLockExecutor struct {
Job
}
func (JobPreBackupLockExecutor) Execute ¶ added in v1.2.1
func (j JobPreBackupLockExecutor) Execute() error
type JobPreRestoreLockExecutor ¶ added in v1.2.1
type JobPreRestoreLockExecutor struct {
Job
}
func (JobPreRestoreLockExecutor) Execute ¶ added in v1.2.1
func (j JobPreRestoreLockExecutor) Execute() error
type JobSpecifier ¶ added in v1.1.0
type Jobs ¶ added in v1.1.0
type Jobs []Job
func (Jobs) AnyAreBackupable ¶ added in v1.1.0
func (Jobs) AnyAreRestorable ¶ added in v1.1.0
func (Jobs) Backupable ¶ added in v1.1.0
func (Jobs) CustomRestoreArtifactNames ¶ added in v1.1.0
func (Jobs) HasMetadataRestoreNames ¶ added in v1.5.0
func (Jobs) Restorable ¶ added in v1.1.0
type LockOrderer ¶ added in v1.1.0
type Node ¶ added in v1.1.0
type Node struct {
// contains filtered or unexported fields
}
func (*Node) OnSuccessOrFailure ¶ added in v1.1.0
type PostBackupUnlockStep ¶ added in v1.1.0
type PostBackupUnlockStep struct {
// contains filtered or unexported fields
}
func (*PostBackupUnlockStep) Run ¶ added in v1.1.0
func (s *PostBackupUnlockStep) Run(session *Session) error
type PostRestoreUnlockStep ¶ added in v1.1.0
type PostRestoreUnlockStep struct {
// contains filtered or unexported fields
}
func (*PostRestoreUnlockStep) Run ¶ added in v1.1.0
func (s *PostRestoreUnlockStep) Run(session *Session) error
type PreRestoreLockStep ¶ added in v1.1.0
type PreRestoreLockStep struct {
// contains filtered or unexported fields
}
func (*PreRestoreLockStep) Run ¶ added in v1.1.0
func (s *PreRestoreLockStep) Run(session *Session) error
type RestorableStep ¶ added in v1.1.0
type RestorableStep struct {
// contains filtered or unexported fields
}
func (*RestorableStep) Run ¶ added in v1.1.0
func (s *RestorableStep) Run(session *Session) error
type RestoreCleaner ¶ added in v1.1.0
func NewRestoreCleaner ¶ added in v1.1.0
func NewRestoreCleaner(logger Logger, deploymentManager DeploymentManager, lockOrderer LockOrderer, executor executor.Executor) *RestoreCleaner
func (RestoreCleaner) Cleanup ¶ added in v1.1.0
func (c RestoreCleaner) Cleanup(deploymentName string) Error
type RestoreStep ¶ added in v1.1.0
type RestoreStep struct {
// contains filtered or unexported fields
}
func (*RestoreStep) Run ¶ added in v1.1.0
func (s *RestoreStep) Run(session *Session) error
type Restorer ¶
type Restorer struct {
// contains filtered or unexported fields
}
func NewRestorer ¶
func NewRestorer(backupManager BackupManager, logger Logger, deploymentManager DeploymentManager, lockOrderer LockOrderer, executor executor.Executor, artifactCopier ArtifactCopier) *Restorer
type Session ¶ added in v1.1.0
type Session struct {
// contains filtered or unexported fields
}
func NewSession ¶ added in v1.1.0
func (*Session) CurrentArtifact ¶ added in v1.1.0
func (*Session) CurrentArtifactPath ¶ added in v1.1.0
func (*Session) CurrentDeployment ¶ added in v1.1.0
func (session *Session) CurrentDeployment() Deployment
func (*Session) DeploymentName ¶ added in v1.1.0
func (*Session) SetCurrentArtifact ¶ added in v1.1.0
func (*Session) SetCurrentArtifactPath ¶ added in v1.1.0
func (*Session) SetCurrentDeployment ¶ added in v1.1.0
func (session *Session) SetCurrentDeployment(deployment Deployment)
type Step ¶ added in v1.1.0
func NewAddFinishTimeStep ¶ added in v1.1.0
func NewBackupStep ¶ added in v1.1.0
func NewBackupableStep ¶ added in v1.1.0
func NewBackupableStep(lockOrderer LockOrderer, logger Logger) Step
func NewCleanupPreviousStep ¶ added in v1.1.0
func NewCleanupPreviousStep() Step
func NewCleanupStep ¶ added in v1.1.0
func NewCleanupStep() Step
func NewCopyToRemoteStep ¶ added in v1.1.0
func NewCopyToRemoteStep(artifactCopier ArtifactCopier) Step
func NewCreateArtifactStep ¶ added in v1.1.0
func NewCreateArtifactStep(logger Logger, backupManager BackupManager, deploymentManager DeploymentManager, nowFunc func() time.Time, timeStamp string) Step
func NewDrainStep ¶ added in v1.1.0
func NewDrainStep(logger Logger, artifactCopier ArtifactCopier) Step
func NewFindDeploymentStep ¶ added in v1.1.0
func NewFindDeploymentStep(deploymentManager DeploymentManager, logger Logger) Step
func NewLockStep ¶ added in v1.1.0
func NewLockStep(lockOrderer LockOrderer, executor executor.Executor) Step
func NewPostBackupUnlockStep ¶ added in v1.1.0
func NewPostBackupUnlockStep(afterSuccessfulBackup bool, lockOrderer LockOrderer, executor executor.Executor) Step
func NewPostRestoreUnlockStep ¶ added in v1.1.0
func NewPostRestoreUnlockStep(lockOrderer LockOrderer, executor executor.Executor) Step
func NewPreRestoreLockStep ¶ added in v1.1.0
func NewPreRestoreLockStep(lockOrderer LockOrderer, executor executor.Executor) Step
func NewRestorableStep ¶ added in v1.1.0
func NewRestorableStep(lockOrderer LockOrderer, logger Logger) Step
func NewRestoreStep ¶ added in v1.1.0
func NewValidateArtifactStep ¶ added in v1.1.0
func NewValidateArtifactStep(logger Logger, backupManager BackupManager) Step
type UnlockError ¶ added in v1.0.0
type UnlockError customError
func NewPostUnlockError ¶ added in v1.1.0
func NewPostUnlockError(errorMessage string) UnlockError
type ValidateArtifactStep ¶ added in v1.1.0
type ValidateArtifactStep struct {
// contains filtered or unexported fields
}
func (*ValidateArtifactStep) Run ¶ added in v1.1.0
func (s *ValidateArtifactStep) Run(session *Session) error
type Workflow ¶ added in v1.1.0
func NewWorkflow ¶ added in v1.1.0
func NewWorkflow() *Workflow
Source Files ¶
- add_finish_time_step.go
- artifact.go
- artifact_copier.go
- backup_checker.go
- backup_cleaner.go
- backup_download_executable.go
- backup_executable.go
- backup_step.go
- backup_upload_executable.go
- backupable_step.go
- backuper.go
- checksum.go
- cleanup_previous_step.go
- cleanup_step.go
- copy_to_remote_step.go
- create_artifact_step.go
- deployment.go
- deployment_manager.go
- drain_step.go
- error.go
- find_deployment_step.go
- instance.go
- job_executables.go
- jobs.go
- lock_step.go
- logger.go
- post_backup_unlock_step.go
- post_restore_unlock_step.go
- pre_restore_lock_step.go
- restorable_step.go
- restore_cleaner.go
- restore_step.go
- restorer.go
- reverse.go
- session.go
- validate_artifact_step.go
- workflow.go
Click to show internal directories.
Click to hide internal directories.