2025-01-05 09:34:06 +00:00
|
|
|
package scheduler
|
|
|
|
|
|
|
|
import "gitea.ceperka.net/rosti/incus-sentinel/incus"
|
|
|
|
|
|
|
|
type Driver interface {
|
|
|
|
GetInstances(target string) ([]incus.Instance, error)
|
2025-01-06 12:53:16 +00:00
|
|
|
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
|
2025-01-05 09:34:06 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
type Notifier interface {
|
|
|
|
// Notify sends a notification to the specified URL
|
|
|
|
Notify(url string) error
|
|
|
|
}
|