Skip to main content

clientapi_pbs/models/
config_prune_create_prune_request.rs

1/*
2 * Proxmox Backup Server API
3 *
4 * Generated from apidoc.js. NOT an official Proxmox specification. See https://pbs.proxmox.com/docs/api-viewer/ for the upstream documentation.
5 *
6 * The version of the OpenAPI document: 9.x
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ConfigPruneCreatePruneRequest {
16
17    /// Comment.
18    #[serde(rename = "comment", skip_serializing_if = "Option::is_none")]
19    pub comment: Option<String>,
20
21    /// Disable this job.
22    #[serde(rename = "disable", skip_serializing_if = "Option::is_none")]
23    pub disable: Option<bool>,
24
25    /// Job ID.
26    #[serde(rename = "id")]
27    pub id: String,
28
29    /// Number of daily backups to keep.
30    #[serde(rename = "keep-daily", skip_serializing_if = "Option::is_none")]
31    pub keep_daily: Option<i64>,
32
33    /// Number of hourly backups to keep.
34    #[serde(rename = "keep-hourly", skip_serializing_if = "Option::is_none")]
35    pub keep_hourly: Option<i64>,
36
37    /// Number of backups to keep.
38    #[serde(rename = "keep-last", skip_serializing_if = "Option::is_none")]
39    pub keep_last: Option<i64>,
40
41    /// Number of monthly backups to keep.
42    #[serde(rename = "keep-monthly", skip_serializing_if = "Option::is_none")]
43    pub keep_monthly: Option<i64>,
44
45    /// Number of weekly backups to keep.
46    #[serde(rename = "keep-weekly", skip_serializing_if = "Option::is_none")]
47    pub keep_weekly: Option<i64>,
48
49    /// Number of yearly backups to keep.
50    #[serde(rename = "keep-yearly", skip_serializing_if = "Option::is_none")]
51    pub keep_yearly: Option<i64>,
52
53    /// How many levels of namespaces should be operated on (0 == no recursion, empty == automatic full recursion, namespace depths reduce maximum allowed value)
54    #[serde(rename = "max-depth", skip_serializing_if = "Option::is_none")]
55    pub max_depth: Option<i32>,
56
57    /// Namespace.
58    #[serde(rename = "ns", skip_serializing_if = "Option::is_none")]
59    pub ns: Option<String>,
60
61    /// Run prune job at specified schedule.
62    #[serde(rename = "schedule")]
63    pub schedule: String,
64
65    /// Datastore name.
66    #[serde(rename = "store")]
67    pub store: String,
68
69
70}
71
72impl ConfigPruneCreatePruneRequest {
73    pub fn new(id: String, schedule: String, store: String) -> ConfigPruneCreatePruneRequest {
74        ConfigPruneCreatePruneRequest {
75            
76            comment: None,
77            
78            disable: None,
79            
80            id,
81            
82            keep_daily: None,
83            
84            keep_hourly: None,
85            
86            keep_last: None,
87            
88            keep_monthly: None,
89            
90            keep_weekly: None,
91            
92            keep_yearly: None,
93            
94            max_depth: None,
95            
96            ns: None,
97            
98            schedule,
99            
100            store,
101            
102        }
103    }
104}
105
106