[pbs-devel] [PATCH proxmox v2 1/1] pbs-api-types: add 'unmount-on-done' field to sync job config

Hannes Laimer h.laimer at proxmox.com
Tue Nov 11 13:26:33 CET 2025


On 11/11/25 13:08, Fabian Grünbichler wrote:
> On October 29, 2025 5:00 pm, Hannes Laimer wrote:
>> Tested-by: Robert Obkircher <r.obkircher at proxmox.com>
>> Signed-off-by: Hannes Laimer <h.laimer at proxmox.com>
>> ---
>>   pbs-api-types/src/jobs.rs | 8 ++++++++
>>   1 file changed, 8 insertions(+)
>>
>> diff --git a/pbs-api-types/src/jobs.rs b/pbs-api-types/src/jobs.rs
>> index 3eb61cde..3284a4c8 100644
>> --- a/pbs-api-types/src/jobs.rs
>> +++ b/pbs-api-types/src/jobs.rs
>> @@ -538,6 +538,8 @@ pub const SYNC_VERIFIED_ONLY_SCHEMA: Schema =
>>       BooleanSchema::new("Only synchronize verified backup snapshots, exclude others.").schema();
>>   pub const RUN_SYNC_ON_MOUNT_SCHEMA: Schema =
>>       BooleanSchema::new("Run this job when a relevant datastore is mounted.").schema();
>> +pub const UNMOUNT_ON_SYNC_DONE_SCHEMA: Schema =
>> +    BooleanSchema::new("Unmount involved removable datastore after sync job finishes.").schema();
>>   
>>   #[api(
>>       properties: {
>> @@ -609,6 +611,10 @@ pub const RUN_SYNC_ON_MOUNT_SCHEMA: Schema =
>>               schema: RUN_SYNC_ON_MOUNT_SCHEMA,
>>               optional: true,
>>           },
>> +        "unmount-on-done": {
>> +            schema: UNMOUNT_ON_SYNC_DONE_SCHEMA,
>> +            optional: true,
>> +        },
>>           "sync-direction": {
>>               type: SyncDirection,
>>               optional: true,
>> @@ -655,6 +661,8 @@ pub struct SyncJobConfig {
>>       #[serde(skip_serializing_if = "Option::is_none")]
>>       pub run_on_mount: Option<bool>,
>>       #[serde(skip_serializing_if = "Option::is_none")]
>> +    pub unmount_on_done: Option<bool>,
> 
> could we combine these two into a property string/option, to make it
> more explicit that the "unmount when done" part is only valid/relevant
> for the "synced-cause-of-mount" execution?
> 

reasonable, and would make it more clear. Actually, a description
mentioning that would also be a good start :P

>> +    #[serde(skip_serializing_if = "Option::is_none")]
>>       pub sync_direction: Option<SyncDirection>,
>>   }
>>   
>> -- 
>> 2.47.3
>>
>>
>>
>> _______________________________________________
>> pbs-devel mailing list
>> pbs-devel at lists.proxmox.com
>> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
>>
>>
>>
> 
> 
> _______________________________________________
> pbs-devel mailing list
> pbs-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
> 
> 





More information about the pbs-devel mailing list