mirror of
https://github.com/OpenNebula/one.git
synced 2025-03-22 18:50:08 +03:00
B #2544: Fixed bug with CONTEXT and volatile disks
This commit is contained in:
parent
a27e525c4e
commit
da7242f724
@ -1622,16 +1622,17 @@ int VirtualMachineDisks::check_tm_mad(const string& tm_mad, string& error)
|
||||
DatastorePool * dspool = Nebula::instance().get_dspool();
|
||||
|
||||
std::string _tm_mad = tm_mad;
|
||||
|
||||
|
||||
one_util::toupper(_tm_mad);
|
||||
|
||||
for (disk_iterator it = begin(); it != end() ; ++it)
|
||||
{
|
||||
int ds_img_id;
|
||||
|
||||
VirtualMachineDisk * disk = *it;
|
||||
|
||||
std::string tm_mad_disk;
|
||||
|
||||
(*it)->vector_value("TM_MAD", tm_mad_disk);
|
||||
disk->vector_value("TM_MAD", tm_mad_disk);
|
||||
|
||||
one_util::toupper(tm_mad_disk);
|
||||
|
||||
@ -1640,7 +1641,7 @@ int VirtualMachineDisks::check_tm_mad(const string& tm_mad, string& error)
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( (*it)->vector_value("DATASTORE_ID", ds_img_id) == 0 )
|
||||
if ( disk->vector_value("DATASTORE_ID", ds_img_id) == 0 )
|
||||
{
|
||||
std::string ln_target, clone_target, disk_type;
|
||||
|
||||
@ -1652,24 +1653,18 @@ int VirtualMachineDisks::check_tm_mad(const string& tm_mad, string& error)
|
||||
return -1;
|
||||
}
|
||||
|
||||
if ( ds_img->get_tm_mad_targets(tm_mad, ln_target, clone_target,
|
||||
if ( ds_img->get_tm_mad_targets(tm_mad, ln_target, clone_target,
|
||||
disk_type) != 0 )
|
||||
{
|
||||
error = "Image Datastore does not support transfer mode: " + tm_mad;
|
||||
return -1;
|
||||
}
|
||||
|
||||
(*it)->replace("CLONE_TARGET", clone_target);
|
||||
(*it)->replace("LN_TARGET", ln_target);
|
||||
(*it)->replace("DISK_TYPE", disk_type);
|
||||
(*it)->replace("TM_MAD_SYSTEM", tm_mad);
|
||||
disk->replace("CLONE_TARGET", clone_target);
|
||||
disk->replace("LN_TARGET", ln_target);
|
||||
disk->replace("DISK_TYPE", disk_type);
|
||||
disk->replace("TM_MAD_SYSTEM", tm_mad);
|
||||
}
|
||||
else
|
||||
{
|
||||
error = "Image datastore not defined for VM DISK";
|
||||
return -1;
|
||||
}
|
||||
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user