Skip to main content

clientapi_pve/models/
cluster_backup_update_job_request.rs

1/*
2 * Proxmox Virtual Environment API
3 *
4 * Generated from apidoc.js. NOT an official Proxmox specification. See https://pve.proxmox.com/pve-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 ClusterBackupUpdateJobRequest {
16
17    /// Backup all known guest systems on this host.
18    #[serde(rename = "all", skip_serializing_if = "Option::is_none")]
19    pub all: Option<models::PveBoolean>,
20
21    /// Limit I/O bandwidth (in KiB/s).
22    #[serde(rename = "bwlimit", skip_serializing_if = "Option::is_none")]
23    pub bwlimit: Option<i64>,
24
25    /// Description for the Job.
26    #[serde(rename = "comment", skip_serializing_if = "Option::is_none")]
27    pub comment: Option<String>,
28
29    /// Compress dump file.
30    #[serde(rename = "compress", skip_serializing_if = "Option::is_none")]
31    pub compress: Option<models::PveCompressEnum>,
32
33    /// A list of settings you want to delete.
34    #[serde(rename = "delete", skip_serializing_if = "Option::is_none")]
35    pub delete: Option<String>,
36
37    /// Deprecated: Use 'schedule' instead. Day of week selection. 'starttime' and 'dow' will be converted into 'schedule' if used.
38    #[serde(rename = "dow", skip_serializing_if = "Option::is_none")]
39    pub dow: Option<String>,
40
41    /// Store resulting files to specified directory.
42    #[serde(rename = "dumpdir", skip_serializing_if = "Option::is_none")]
43    pub dumpdir: Option<String>,
44
45    /// Enable or disable the job.
46    #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
47    pub enabled: Option<models::PveBoolean>,
48
49    /// Exclude specified guest systems (assumes --all)
50    #[serde(rename = "exclude", skip_serializing_if = "Option::is_none")]
51    pub exclude: Option<String>,
52
53    /// Exclude certain files/directories (shell globs). Paths starting with '/' are anchored to the container's root, other paths match relative to each subdirectory.
54    #[serde(rename = "exclude-path", skip_serializing_if = "Option::is_none")]
55    pub exclude_path: Option<Vec<String>>,
56
57    /// Options for backup fleecing (VM only).
58    #[serde(rename = "fleecing", skip_serializing_if = "Option::is_none")]
59    pub fleecing: Option<String>,
60
61    /// Set IO priority when using the BFQ scheduler. For snapshot and suspend mode backups of VMs, this only affects the compressor. A value of 8 means the idle priority is used, otherwise the best-effort priority is used with the specified value.
62    #[serde(rename = "ionice", skip_serializing_if = "Option::is_none")]
63    pub ionice: Option<i32>,
64
65    /// Maximal time to wait for the global lock (minutes).
66    #[serde(rename = "lockwait", skip_serializing_if = "Option::is_none")]
67    pub lockwait: Option<i64>,
68
69    /// Deprecated: use notification targets/matchers instead. Specify when to send a notification mail
70    #[serde(rename = "mailnotification", skip_serializing_if = "Option::is_none")]
71    pub mailnotification: Option<models::PveMailnotificationEnum>,
72
73    /// Deprecated: Use notification targets/matchers instead. Comma-separated list of email addresses or users that should receive email notifications.
74    #[serde(rename = "mailto", skip_serializing_if = "Option::is_none")]
75    pub mailto: Option<String>,
76
77    /// Backup mode.
78    #[serde(rename = "mode", skip_serializing_if = "Option::is_none")]
79    pub mode: Option<models::PveClusterBackupModeEnum>,
80
81    /// Only run if executed on this node.
82    #[serde(rename = "node", skip_serializing_if = "Option::is_none")]
83    pub node: Option<String>,
84
85    /// Template string for generating notes for the backup(s). It can contain variables which will be replaced by their values. Currently supported are {{cluster}}, {{guestname}}, {{node}}, and {{vmid}}, but more might be added in the future. Needs to be a single line, newline and backslash need to be escaped as '\\n' and '\\\\' respectively.
86    #[serde(rename = "notes-template", skip_serializing_if = "Option::is_none")]
87    pub notes_template: Option<String>,
88
89    /// Determine which notification system to use. If set to 'legacy-sendmail', vzdump will consider the mailto/mailnotification parameters and send emails to the specified address(es) via the 'sendmail' command. If set to 'notification-system', a notification will be sent via PVE's notification system, and the mailto and mailnotification will be ignored. If set to 'auto' (default setting), an email will be sent if mailto is set, and the notification system will be used if not.
90    #[serde(rename = "notification-mode", skip_serializing_if = "Option::is_none")]
91    pub notification_mode: Option<models::PveNotificationModeEnum>,
92
93    /// PBS mode used to detect file changes and switch encoding format for container backups.
94    #[serde(rename = "pbs-change-detection-mode", skip_serializing_if = "Option::is_none")]
95    pub pbs_change_detection_mode: Option<models::PvePbsChangeDetectionModeEnum>,
96
97    /// Other performance-related settings.
98    #[serde(rename = "performance", skip_serializing_if = "Option::is_none")]
99    pub performance: Option<String>,
100
101    /// Use pigz instead of gzip when N>0. N=1 uses half of cores, N>1 uses N as thread count.
102    #[serde(rename = "pigz", skip_serializing_if = "Option::is_none")]
103    pub pigz: Option<i64>,
104
105    /// Backup all known guest systems included in the specified pool.
106    #[serde(rename = "pool", skip_serializing_if = "Option::is_none")]
107    pub pool: Option<String>,
108
109    /// If true, mark backup(s) as protected.
110    #[serde(rename = "protected", skip_serializing_if = "Option::is_none")]
111    pub protected: Option<models::PveBoolean>,
112
113    /// Use these retention options instead of those from the storage configuration.
114    #[serde(rename = "prune-backups", skip_serializing_if = "Option::is_none")]
115    pub prune_backups: Option<String>,
116
117    /// Be quiet.
118    #[serde(rename = "quiet", skip_serializing_if = "Option::is_none")]
119    pub quiet: Option<models::PveBoolean>,
120
121    /// Prune older backups according to 'prune-backups'.
122    #[serde(rename = "remove", skip_serializing_if = "Option::is_none")]
123    pub remove: Option<models::PveBoolean>,
124
125    /// If true, the job will be run as soon as possible if it was missed while the scheduler was not running.
126    #[serde(rename = "repeat-missed", skip_serializing_if = "Option::is_none")]
127    pub repeat_missed: Option<models::PveBoolean>,
128
129    /// Backup schedule. The format is a subset of `systemd` calendar events.
130    #[serde(rename = "schedule", skip_serializing_if = "Option::is_none")]
131    pub schedule: Option<String>,
132
133    /// Use specified hook script.
134    #[serde(rename = "script", skip_serializing_if = "Option::is_none")]
135    pub script: Option<String>,
136
137    /// Deprecated: Use 'schedule' instead. Job Start time. 'starttime' and 'dow' will be converted into 'schedule' if used.
138    #[serde(rename = "starttime", skip_serializing_if = "Option::is_none")]
139    pub starttime: Option<String>,
140
141    /// Exclude temporary files and logs.
142    #[serde(rename = "stdexcludes", skip_serializing_if = "Option::is_none")]
143    pub stdexcludes: Option<models::PveBoolean>,
144
145    /// Stop running backup jobs on this host.
146    #[serde(rename = "stop", skip_serializing_if = "Option::is_none")]
147    pub stop: Option<models::PveBoolean>,
148
149    /// Maximal time to wait until a guest system is stopped (minutes).
150    #[serde(rename = "stopwait", skip_serializing_if = "Option::is_none")]
151    pub stopwait: Option<i64>,
152
153    /// Store resulting file to this storage.
154    #[serde(rename = "storage", skip_serializing_if = "Option::is_none")]
155    pub storage: Option<String>,
156
157    /// Store temporary files to specified directory.
158    #[serde(rename = "tmpdir", skip_serializing_if = "Option::is_none")]
159    pub tmpdir: Option<String>,
160
161    /// The ID of the guest system you want to backup.
162    #[serde(rename = "vmid", skip_serializing_if = "Option::is_none")]
163    pub vmid: Option<String>,
164
165    /// Zstd threads. N=0 uses half of the available cores, if N is set to a value bigger than 0, N is used as thread count.
166    #[serde(rename = "zstd", skip_serializing_if = "Option::is_none")]
167    pub zstd: Option<i64>,
168
169
170}
171
172impl ClusterBackupUpdateJobRequest {
173    pub fn new() -> ClusterBackupUpdateJobRequest {
174        ClusterBackupUpdateJobRequest {
175            
176            all: None,
177            
178            bwlimit: None,
179            
180            comment: None,
181            
182            compress: None,
183            
184            delete: None,
185            
186            dow: None,
187            
188            dumpdir: None,
189            
190            enabled: None,
191            
192            exclude: None,
193            
194            exclude_path: None,
195            
196            fleecing: None,
197            
198            ionice: None,
199            
200            lockwait: None,
201            
202            mailnotification: None,
203            
204            mailto: None,
205            
206            mode: None,
207            
208            node: None,
209            
210            notes_template: None,
211            
212            notification_mode: None,
213            
214            pbs_change_detection_mode: None,
215            
216            performance: None,
217            
218            pigz: None,
219            
220            pool: None,
221            
222            protected: None,
223            
224            prune_backups: None,
225            
226            quiet: None,
227            
228            remove: None,
229            
230            repeat_missed: None,
231            
232            schedule: None,
233            
234            script: None,
235            
236            starttime: None,
237            
238            stdexcludes: None,
239            
240            stop: None,
241            
242            stopwait: None,
243            
244            storage: None,
245            
246            tmpdir: None,
247            
248            vmid: None,
249            
250            zstd: None,
251            
252        }
253    }
254}
255
256