bkp

package module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 11, 2018 License: MIT Imports: 12 Imported by: 0

README

bkp

Simplify backup ontop of the awesome restic tool

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AllTargets

func AllTargets(sourceDirs []string) map[string]*Target

func CheckEnvironment

func CheckEnvironment() error

func ResticIsInstalled

func ResticIsInstalled() bool

func ResticVersion

func ResticVersion() (semver.Version, error)

func ScanTargetDir

func ScanTargetDir(path string) map[string]*Target

Types

type Job

type Job struct {
	Name       string `json:"name"`
	Filename   string
	Hostname   string   `json:"hostname"`
	IP         string   `json:"ip"`
	Source     string   `json:"source"`
	Args       []string `json:"args"`
	TargetName string   `json:"target"`
	Target     *Target
}

func AllJobs

func AllJobs(sourceDirs []string) []*Job

func ParseJobFromJSONFile

func ParseJobFromJSONFile(filename string, targetDirs []string) (*Job, error)

func ParseJobFromYmlFile

func ParseJobFromYmlFile(filename string, targetDirs []string) (*Job, error)

func ScanJobDir

func ScanJobDir(path string, targetDirs []string) []*Job

func (*Job) Execute

func (j *Job) Execute(opts JobExecuteOptions) error

func (*Job) IsRelevant

func (j *Job) IsRelevant() bool

func (*Job) String

func (j *Job) String() string

type JobExecuteOptions

type JobExecuteOptions struct {
	DryRun bool
}

type JobList added in v0.1.1

type JobList struct {
	Jobs []*Job
}

func (*JobList) All added in v0.1.1

func (j *JobList) All() []*Job

func (*JobList) Load added in v0.1.1

func (j *JobList) Load(sourceDirs []string)

func (*JobList) Relevant added in v0.1.1

func (j *JobList) Relevant() []*Job

type ResticExecutor

type ResticExecutor struct {
	DryRun bool
	// contains filtered or unexported fields
}

func NewResticExecutor

func NewResticExecutor() *ResticExecutor

func (*ResticExecutor) Command

func (e *ResticExecutor) Command(command string, args ...string) (*script.ProcessResult, error)

func (*ResticExecutor) SetTarget

func (e *ResticExecutor) SetTarget(t *Target)

type Target

type Target struct {
	Name     string `json:"name"`
	Filename string
	Type     string `json:"type"`
	Path     string `json:"path"`
	Password string `json:"password"`
}

func ParseTargetFromJSONFile

func ParseTargetFromJSONFile(filename string) (*Target, error)

func ParseTargetFromYmlFile

func ParseTargetFromYmlFile(filename string) (*Target, error)

func TargetByName

func TargetByName(name string, sourceDirs []string) *Target

func (*Target) IsReady

func (t *Target) IsReady() bool

func (*Target) String

func (t *Target) String() string

Directories

Path Synopsis
cmd
bkp

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL