@@ -93,6 +93,20 @@ mp::optional<mp::IPAddress> get_ip_for(const QString& name, mp::NetworkAccessMan
93
93
return mp::nullopt ;
94
94
}
95
95
96
+ mp::MemorySize get_minimum_disk_size (const mp::MemorySize& requested_disk_size)
97
+ {
98
+ mp::MemorySize lxd_min_disk_size{" 10G" };
99
+
100
+ if (requested_disk_size > lxd_min_disk_size)
101
+ {
102
+ return requested_disk_size;
103
+ }
104
+ else
105
+ {
106
+ return lxd_min_disk_size;
107
+ }
108
+ }
109
+
96
110
} // namespace
97
111
98
112
mp::LXDVirtualMachine::LXDVirtualMachine (const VirtualMachineDescription& desc, VMStatusMonitor& monitor,
@@ -125,11 +139,12 @@ mp::LXDVirtualMachine::LXDVirtualMachine(const VirtualMachineDescription& desc,
125
139
if (!desc.user_data_config .IsNull ())
126
140
config[" user.user-data" ] = QString::fromStdString (mpu::emit_cloud_config (desc.user_data_config ));
127
141
128
- QJsonObject devices{{" config" , QJsonObject{{" source" , " cloud-init:config" }, {" type" , " disk" }}},
129
- {" root" , QJsonObject{{" path" , " /" },
130
- {" pool" , " default" },
131
- {" size" , QString::number (desc.disk_space .in_bytes ())},
132
- {" type" , " disk" }}}};
142
+ QJsonObject devices{
143
+ {" config" , QJsonObject{{" source" , " cloud-init:config" }, {" type" , " disk" }}},
144
+ {" root" , QJsonObject{{" path" , " /" },
145
+ {" pool" , " default" },
146
+ {" size" , QString::number (get_minimum_disk_size (desc.disk_space ).in_bytes ())},
147
+ {" type" , " disk" }}}};
133
148
134
149
QJsonObject virtual_machine{
135
150
{" name" , name},
0 commit comments