mirror of
https://git.proxmox.com/git/proxmox-backup
synced 2025-04-29 07:53:21 +00:00
specs: add backup detection mode specification
Adds the specification for switching the detection mode used to identify regular files which changed since a reference backup run. Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
This commit is contained in:
parent
7de35dc243
commit
7c00ec904d
@ -1,4 +1,5 @@
|
|||||||
use anyhow::{bail, Error};
|
use anyhow::{bail, Error};
|
||||||
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use proxmox_schema::*;
|
use proxmox_schema::*;
|
||||||
|
|
||||||
@ -45,3 +46,28 @@ pub fn parse_backup_specification(value: &str) -> Result<BackupSpecification, Er
|
|||||||
|
|
||||||
bail!("unable to parse backup source specification '{}'", value);
|
bail!("unable to parse backup source specification '{}'", value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[api]
|
||||||
|
#[derive(Default, Deserialize, Serialize)]
|
||||||
|
#[serde(rename_all = "lowercase")]
|
||||||
|
/// Mode to detect file changes since last backup run
|
||||||
|
pub enum BackupDetectionMode {
|
||||||
|
/// Encode backup as self contained pxar archive
|
||||||
|
#[default]
|
||||||
|
Default,
|
||||||
|
/// Split backup mode, re-encode payload data
|
||||||
|
Data,
|
||||||
|
/// Compare metadata, reuse payload chunks if metadata unchanged
|
||||||
|
Metadata,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl BackupDetectionMode {
|
||||||
|
/// Selected mode is data based file change detection with split meta/payload streams
|
||||||
|
pub fn is_data(&self) -> bool {
|
||||||
|
matches!(self, Self::Data)
|
||||||
|
}
|
||||||
|
/// Selected mode is metadata based file change detection
|
||||||
|
pub fn is_metadata(&self) -> bool {
|
||||||
|
matches!(self, Self::Metadata)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user