incus-sentinel/scheduler/types.go

19 lines
835 B
Go

package scheduler
import "gitea.ceperka.net/rosti/incus-sentinel/incus"
type Driver interface {
GetInstances(target string) ([]incus.Instance, error)
GetPools(target string) ([]incus.Pool, error)
GetVolumes(target string) ([]incus.Volume, error)
Sync(project string, sourceInstance string, targetInstance string, targetHost string, targetPool string) error
Backup(project string, instance string, tags []string) error
SyncVolume(project string, sourcePool string, sourceVolume string, targetHost string, targetPool string, targetVolume string) error
BackupVolumeDir(project string, pool string, volume string, tags []string) error
BackupVolumeNative(project string, pool string, volume string, tags []string) error
}
type Notifier interface {
// Notify sends a notification to the specified URL
Notify(url string) error
}