Merge branch '4.11'

This commit is contained in:
Rohit Yadav 2018-08-01 16:37:21 +05:30
commit 75030e5522
4 changed files with 18 additions and 10 deletions

View File

@ -25,8 +25,6 @@ import java.net.URI;
import java.net.URL; import java.net.URL;
import java.nio.channels.SocketChannel; import java.nio.channels.SocketChannel;
import java.rmi.RemoteException; import java.rmi.RemoteException;
import com.cloud.configuration.Resource.ResourceType;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
@ -42,13 +40,15 @@ import java.util.Random;
import java.util.Set; import java.util.Set;
import java.util.TimeZone; import java.util.TimeZone;
import java.util.UUID; import java.util.UUID;
import javax.naming.ConfigurationException; import javax.naming.ConfigurationException;
import org.apache.commons.lang.math.NumberUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.math.NumberUtils;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.apache.log4j.NDC; import org.apache.log4j.NDC;
import org.joda.time.Duration; import org.joda.time.Duration;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.vmware.vim25.AboutInfo; import com.vmware.vim25.AboutInfo;
import com.vmware.vim25.BoolPolicy; import com.vmware.vim25.BoolPolicy;
@ -62,6 +62,7 @@ import com.vmware.vim25.DistributedVirtualPort;
import com.vmware.vim25.DistributedVirtualSwitchPortConnection; import com.vmware.vim25.DistributedVirtualSwitchPortConnection;
import com.vmware.vim25.DistributedVirtualSwitchPortCriteria; import com.vmware.vim25.DistributedVirtualSwitchPortCriteria;
import com.vmware.vim25.DynamicProperty; import com.vmware.vim25.DynamicProperty;
import com.vmware.vim25.GuestInfo;
import com.vmware.vim25.HostCapability; import com.vmware.vim25.HostCapability;
import com.vmware.vim25.HostHostBusAdapter; import com.vmware.vim25.HostHostBusAdapter;
import com.vmware.vim25.HostInternetScsiHba; import com.vmware.vim25.HostInternetScsiHba;
@ -99,6 +100,7 @@ import com.vmware.vim25.VirtualMachinePowerState;
import com.vmware.vim25.VirtualMachineRelocateSpec; import com.vmware.vim25.VirtualMachineRelocateSpec;
import com.vmware.vim25.VirtualMachineRelocateSpecDiskLocator; import com.vmware.vim25.VirtualMachineRelocateSpecDiskLocator;
import com.vmware.vim25.VirtualMachineRuntimeInfo; import com.vmware.vim25.VirtualMachineRuntimeInfo;
import com.vmware.vim25.VirtualMachineToolsStatus;
import com.vmware.vim25.VirtualMachineVideoCard; import com.vmware.vim25.VirtualMachineVideoCard;
import com.vmware.vim25.VirtualUSBController; import com.vmware.vim25.VirtualUSBController;
import com.vmware.vim25.VmwareDistributedVirtualSwitchVlanIdSpec; import com.vmware.vim25.VmwareDistributedVirtualSwitchVlanIdSpec;
@ -106,11 +108,13 @@ import com.vmware.vim25.VmwareDistributedVirtualSwitchVlanIdSpec;
import org.apache.cloudstack.api.ApiConstants; import org.apache.cloudstack.api.ApiConstants;
import org.apache.cloudstack.storage.command.CopyCommand; import org.apache.cloudstack.storage.command.CopyCommand;
import org.apache.cloudstack.storage.command.StorageSubSystemCommand; import org.apache.cloudstack.storage.command.StorageSubSystemCommand;
import org.apache.cloudstack.storage.configdrive.ConfigDrive;
import org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource; import org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource;
import org.apache.cloudstack.storage.to.PrimaryDataStoreTO; import org.apache.cloudstack.storage.to.PrimaryDataStoreTO;
import org.apache.cloudstack.storage.to.TemplateObjectTO; import org.apache.cloudstack.storage.to.TemplateObjectTO;
import org.apache.cloudstack.storage.to.VolumeObjectTO; import org.apache.cloudstack.storage.to.VolumeObjectTO;
import org.apache.cloudstack.utils.volume.VirtualMachineDiskInfo; import org.apache.cloudstack.utils.volume.VirtualMachineDiskInfo;
import com.cloud.agent.IAgentControl; import com.cloud.agent.IAgentControl;
import com.cloud.agent.api.Answer; import com.cloud.agent.api.Answer;
import com.cloud.agent.api.AttachIsoAnswer; import com.cloud.agent.api.AttachIsoAnswer;
@ -142,6 +146,7 @@ import com.cloud.agent.api.GetStorageStatsAnswer;
import com.cloud.agent.api.GetStorageStatsCommand; import com.cloud.agent.api.GetStorageStatsCommand;
import com.cloud.agent.api.GetVmDiskStatsAnswer; import com.cloud.agent.api.GetVmDiskStatsAnswer;
import com.cloud.agent.api.GetVmDiskStatsCommand; import com.cloud.agent.api.GetVmDiskStatsCommand;
import com.cloud.agent.api.GetVmIpAddressCommand;
import com.cloud.agent.api.GetVmNetworkStatsAnswer; import com.cloud.agent.api.GetVmNetworkStatsAnswer;
import com.cloud.agent.api.GetVmNetworkStatsCommand; import com.cloud.agent.api.GetVmNetworkStatsCommand;
import com.cloud.agent.api.GetVmStatsAnswer; import com.cloud.agent.api.GetVmStatsAnswer;
@ -234,6 +239,7 @@ import com.cloud.agent.api.to.VolumeTO;
import com.cloud.agent.resource.virtualnetwork.VRScripts; import com.cloud.agent.resource.virtualnetwork.VRScripts;
import com.cloud.agent.resource.virtualnetwork.VirtualRouterDeployer; import com.cloud.agent.resource.virtualnetwork.VirtualRouterDeployer;
import com.cloud.agent.resource.virtualnetwork.VirtualRoutingResource; import com.cloud.agent.resource.virtualnetwork.VirtualRoutingResource;
import com.cloud.configuration.Resource.ResourceType;
import com.cloud.dc.DataCenter.NetworkType; import com.cloud.dc.DataCenter.NetworkType;
import com.cloud.dc.Vlan; import com.cloud.dc.Vlan;
import com.cloud.exception.CloudException; import com.cloud.exception.CloudException;
@ -252,8 +258,8 @@ import com.cloud.hypervisor.vmware.mo.DatastoreFile;
import com.cloud.hypervisor.vmware.mo.DatastoreMO; import com.cloud.hypervisor.vmware.mo.DatastoreMO;
import com.cloud.hypervisor.vmware.mo.DiskControllerType; import com.cloud.hypervisor.vmware.mo.DiskControllerType;
import com.cloud.hypervisor.vmware.mo.FeatureKeyConstants; import com.cloud.hypervisor.vmware.mo.FeatureKeyConstants;
import com.cloud.hypervisor.vmware.mo.HostMO;
import com.cloud.hypervisor.vmware.mo.HostDatastoreSystemMO; import com.cloud.hypervisor.vmware.mo.HostDatastoreSystemMO;
import com.cloud.hypervisor.vmware.mo.HostMO;
import com.cloud.hypervisor.vmware.mo.HostStorageSystemMO; import com.cloud.hypervisor.vmware.mo.HostStorageSystemMO;
import com.cloud.hypervisor.vmware.mo.HypervisorHostHelper; import com.cloud.hypervisor.vmware.mo.HypervisorHostHelper;
import com.cloud.hypervisor.vmware.mo.NetworkDetails; import com.cloud.hypervisor.vmware.mo.NetworkDetails;
@ -302,9 +308,6 @@ import com.cloud.vm.VirtualMachine;
import com.cloud.vm.VirtualMachine.PowerState; import com.cloud.vm.VirtualMachine.PowerState;
import com.cloud.vm.VirtualMachineName; import com.cloud.vm.VirtualMachineName;
import com.cloud.vm.VmDetailConstants; import com.cloud.vm.VmDetailConstants;
import com.vmware.vim25.GuestInfo;
import com.vmware.vim25.VirtualMachineToolsStatus;
import com.cloud.agent.api.GetVmIpAddressCommand;
public class VmwareResource implements StoragePoolResource, ServerResource, VmwareHostService, VirtualRouterDeployer { public class VmwareResource implements StoragePoolResource, ServerResource, VmwareHostService, VirtualRouterDeployer {
private static final Logger s_logger = Logger.getLogger(VmwareResource.class); private static final Logger s_logger = Logger.getLogger(VmwareResource.class);
@ -3352,7 +3355,7 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa
String isoFileName = isoUrl.substring(isoFileNameStartPos); String isoFileName = isoUrl.substring(isoFileNameStartPos);
int templateRootPos = isoUrl.indexOf("template/tmpl"); int templateRootPos = isoUrl.indexOf("template/tmpl");
templateRootPos = (templateRootPos < 0 ? isoUrl.indexOf("ConfigDrive") : templateRootPos); templateRootPos = (templateRootPos < 0 ? isoUrl.indexOf(ConfigDrive.CONFIGDRIVEDIR) : templateRootPos);
if (templateRootPos < 0 ) { if (templateRootPos < 0 ) {
throw new Exception("Invalid ISO path info"); throw new Exception("Invalid ISO path info");
} }

View File

@ -23,9 +23,9 @@
"disk_interface": "virtio", "disk_interface": "virtio",
"net_device": "virtio-net", "net_device": "virtio-net",
"iso_url": "http://mirror.nbrc.ac.in/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1808.iso", "iso_url": "http://mirror.nbrc.ac.in/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso",
"iso_checksum": "13675c6f74880e7ff3481b91bdaf925ce81bda8f", "iso_checksum": "13675c6f74880e7ff3481b91bdaf925ce81bda8f",
"iso_checksum_type": "md5", "iso_checksum_type": "sha1",
"vm_name": "builtin", "vm_name": "builtin",
"output_directory": "../dist", "output_directory": "../dist",

View File

@ -3236,6 +3236,7 @@
} }
allowedActions.push("viewConsole"); allowedActions.push("viewConsole");
allowedActions.push("resetSSHKeyForVirtualMachine");
} else if (jsonObj.state == 'Stopped') { } else if (jsonObj.state == 'Stopped') {
allowedActions.push("edit"); allowedActions.push("edit");
if (isAdmin()) if (isAdmin())

View File

@ -251,12 +251,14 @@
$form.find('.form-item[rel=xenserverToolsVersion61plus]').hide(); $form.find('.form-item[rel=xenserverToolsVersion61plus]').hide();
$form.find('.form-item[rel=rootDiskControllerTypeKVM]').hide(); $form.find('.form-item[rel=rootDiskControllerTypeKVM]').hide();
$form.find('.form-item[rel=directdownload]').hide(); $form.find('.form-item[rel=directdownload]').hide();
$form.find('.form-item[rel=requireshvm]').hide();
} else if ($(this).val() == "XenServer") { } else if ($(this).val() == "XenServer") {
$form.find('.form-item[rel=rootDiskControllerType]').hide(); $form.find('.form-item[rel=rootDiskControllerType]').hide();
$form.find('.form-item[rel=nicAdapterType]').hide(); $form.find('.form-item[rel=nicAdapterType]').hide();
$form.find('.form-item[rel=keyboardType]').hide(); $form.find('.form-item[rel=keyboardType]').hide();
$form.find('.form-item[rel=rootDiskControllerTypeKVM]').hide(); $form.find('.form-item[rel=rootDiskControllerTypeKVM]').hide();
$form.find('.form-item[rel=directdownload]').hide(); $form.find('.form-item[rel=directdownload]').hide();
$form.find('.form-item[rel=requireshvm]').css('display', 'inline-block');
if (isAdmin()) { if (isAdmin()) {
$form.find('.form-item[rel=xenserverToolsVersion61plus]').css('display', 'inline-block'); $form.find('.form-item[rel=xenserverToolsVersion61plus]').css('display', 'inline-block');
@ -268,6 +270,7 @@
$form.find('.form-item[rel=xenserverToolsVersion61plus]').hide(); $form.find('.form-item[rel=xenserverToolsVersion61plus]').hide();
$form.find('.form-item[rel=rootDiskControllerTypeKVM]').css('display', 'inline-block'); $form.find('.form-item[rel=rootDiskControllerTypeKVM]').css('display', 'inline-block');
$('#label_root_disk_controller').prop('selectedIndex', 2); $('#label_root_disk_controller').prop('selectedIndex', 2);
$form.find('.form-item[rel=requireshvm]').css('display', 'inline-block');
if (isAdmin()) { if (isAdmin()) {
$form.find('.form-item[rel=directdownload]').css('display', 'inline-block'); $form.find('.form-item[rel=directdownload]').css('display', 'inline-block');
} }
@ -278,6 +281,7 @@
$form.find('.form-item[rel=xenserverToolsVersion61plus]').hide(); $form.find('.form-item[rel=xenserverToolsVersion61plus]').hide();
$form.find('.form-item[rel=rootDiskControllerTypeKVM]').hide(); $form.find('.form-item[rel=rootDiskControllerTypeKVM]').hide();
$form.find('.form-item[rel=directdownload]').hide(); $form.find('.form-item[rel=directdownload]').hide();
$form.find('.form-item[rel=requireshvm]').css('display', 'inline-block');
} }
}); });