1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/*
* Proxmox Virtual Environment API
*
* Generated from apidoc.js. NOT an official Proxmox specification. See https://pve.proxmox.com/pve-docs/api-viewer/ for the upstream documentation.
*
* The version of the OpenAPI document: 9.x
*
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct NodesCephCreateosdRequest {
/// Set the device class of the OSD in crush.
#[serde(rename = "crush-device-class", skip_serializing_if = "Option::is_none")]
pub crush_device_class: Option<String>,
/// Block device name for block.db.
#[serde(rename = "db_dev", skip_serializing_if = "Option::is_none")]
pub db_dev: Option<String>,
/// If a block.db is requested but the size is not given, will be automatically selected by: bluestore_block_db_size from the ceph database (osd or global section) or config (osd or global section) in that order. If this is not available, it will be sized 10% of the size of the OSD device. Fails if the available size is not enough.
#[serde(rename = "db_dev_size", skip_serializing_if = "Option::is_none")]
pub db_dev_size: Option<f64>,
/// Block device name.
#[serde(rename = "dev")]
pub dev: String,
/// Enables encryption of the OSD.
#[serde(rename = "encrypted", skip_serializing_if = "Option::is_none")]
pub encrypted: Option<models::PveBoolean>,
/// OSD services per physical device. Only useful for fast NVMe devices to utilize their performance better. Mutually exclusive with 'db_dev' and 'wal_dev'.
#[serde(rename = "osds-per-device", skip_serializing_if = "Option::is_none")]
pub osds_per_device: Option<i64>,
/// Block device name for block.wal.
#[serde(rename = "wal_dev", skip_serializing_if = "Option::is_none")]
pub wal_dev: Option<String>,
/// If a block.wal is requested but the size is not given, will be automatically selected by: bluestore_block_wal_size from the ceph database (osd or global section) or config (osd or global section) in that order. If this is not available, it will be sized 1% of the size of the OSD device. Fails if the available size is not enough.
#[serde(rename = "wal_dev_size", skip_serializing_if = "Option::is_none")]
pub wal_dev_size: Option<f64>,
}
impl NodesCephCreateosdRequest {
pub fn new(dev: String) -> NodesCephCreateosdRequest {
NodesCephCreateosdRequest {
crush_device_class: None,
db_dev: None,
db_dev_size: None,
dev,
encrypted: None,
osds_per_device: None,
wal_dev: None,
wal_dev_size: None,
}
}
}