|
25 | 25 | import java.net.URL; |
26 | 26 | import java.nio.channels.SocketChannel; |
27 | 27 | import java.rmi.RemoteException; |
28 | | - |
29 | | -import com.cloud.configuration.Resource.ResourceType; |
30 | 28 | import java.util.ArrayList; |
31 | 29 | import java.util.Arrays; |
32 | 30 | import java.util.Collection; |
|
42 | 40 | import java.util.Set; |
43 | 41 | import java.util.TimeZone; |
44 | 42 | import java.util.UUID; |
| 43 | + |
45 | 44 | import javax.naming.ConfigurationException; |
46 | 45 |
|
47 | | -import org.apache.commons.lang.math.NumberUtils; |
48 | 46 | import org.apache.commons.lang.StringUtils; |
| 47 | +import org.apache.commons.lang.math.NumberUtils; |
49 | 48 | import org.apache.log4j.Logger; |
50 | 49 | import org.apache.log4j.NDC; |
51 | 50 | import org.joda.time.Duration; |
| 51 | + |
52 | 52 | import com.google.gson.Gson; |
53 | 53 | import com.vmware.vim25.AboutInfo; |
54 | 54 | import com.vmware.vim25.BoolPolicy; |
|
62 | 62 | import com.vmware.vim25.DistributedVirtualSwitchPortConnection; |
63 | 63 | import com.vmware.vim25.DistributedVirtualSwitchPortCriteria; |
64 | 64 | import com.vmware.vim25.DynamicProperty; |
| 65 | +import com.vmware.vim25.GuestInfo; |
65 | 66 | import com.vmware.vim25.HostCapability; |
66 | 67 | import com.vmware.vim25.HostHostBusAdapter; |
67 | 68 | import com.vmware.vim25.HostInternetScsiHba; |
|
99 | 100 | import com.vmware.vim25.VirtualMachineRelocateSpec; |
100 | 101 | import com.vmware.vim25.VirtualMachineRelocateSpecDiskLocator; |
101 | 102 | import com.vmware.vim25.VirtualMachineRuntimeInfo; |
| 103 | +import com.vmware.vim25.VirtualMachineToolsStatus; |
102 | 104 | import com.vmware.vim25.VirtualMachineVideoCard; |
103 | 105 | import com.vmware.vim25.VirtualUSBController; |
104 | 106 | import com.vmware.vim25.VmwareDistributedVirtualSwitchVlanIdSpec; |
105 | 107 |
|
106 | 108 | import org.apache.cloudstack.api.ApiConstants; |
107 | 109 | import org.apache.cloudstack.storage.command.CopyCommand; |
108 | 110 | import org.apache.cloudstack.storage.command.StorageSubSystemCommand; |
| 111 | +import org.apache.cloudstack.storage.configdrive.ConfigDrive; |
109 | 112 | import org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource; |
110 | 113 | import org.apache.cloudstack.storage.to.PrimaryDataStoreTO; |
111 | 114 | import org.apache.cloudstack.storage.to.TemplateObjectTO; |
112 | 115 | import org.apache.cloudstack.storage.to.VolumeObjectTO; |
113 | 116 | import org.apache.cloudstack.utils.volume.VirtualMachineDiskInfo; |
| 117 | + |
114 | 118 | import com.cloud.agent.IAgentControl; |
115 | 119 | import com.cloud.agent.api.Answer; |
116 | 120 | import com.cloud.agent.api.AttachIsoAnswer; |
|
142 | 146 | import com.cloud.agent.api.GetStorageStatsCommand; |
143 | 147 | import com.cloud.agent.api.GetVmDiskStatsAnswer; |
144 | 148 | import com.cloud.agent.api.GetVmDiskStatsCommand; |
| 149 | +import com.cloud.agent.api.GetVmIpAddressCommand; |
145 | 150 | import com.cloud.agent.api.GetVmNetworkStatsAnswer; |
146 | 151 | import com.cloud.agent.api.GetVmNetworkStatsCommand; |
147 | 152 | import com.cloud.agent.api.GetVmStatsAnswer; |
|
234 | 239 | import com.cloud.agent.resource.virtualnetwork.VRScripts; |
235 | 240 | import com.cloud.agent.resource.virtualnetwork.VirtualRouterDeployer; |
236 | 241 | import com.cloud.agent.resource.virtualnetwork.VirtualRoutingResource; |
| 242 | +import com.cloud.configuration.Resource.ResourceType; |
237 | 243 | import com.cloud.dc.DataCenter.NetworkType; |
238 | 244 | import com.cloud.dc.Vlan; |
239 | 245 | import com.cloud.exception.CloudException; |
|
252 | 258 | import com.cloud.hypervisor.vmware.mo.DatastoreMO; |
253 | 259 | import com.cloud.hypervisor.vmware.mo.DiskControllerType; |
254 | 260 | import com.cloud.hypervisor.vmware.mo.FeatureKeyConstants; |
255 | | -import com.cloud.hypervisor.vmware.mo.HostMO; |
256 | 261 | import com.cloud.hypervisor.vmware.mo.HostDatastoreSystemMO; |
| 262 | +import com.cloud.hypervisor.vmware.mo.HostMO; |
257 | 263 | import com.cloud.hypervisor.vmware.mo.HostStorageSystemMO; |
258 | 264 | import com.cloud.hypervisor.vmware.mo.HypervisorHostHelper; |
259 | 265 | import com.cloud.hypervisor.vmware.mo.NetworkDetails; |
|
302 | 308 | import com.cloud.vm.VirtualMachine.PowerState; |
303 | 309 | import com.cloud.vm.VirtualMachineName; |
304 | 310 | import com.cloud.vm.VmDetailConstants; |
305 | | -import com.vmware.vim25.GuestInfo; |
306 | | -import com.vmware.vim25.VirtualMachineToolsStatus; |
307 | | -import com.cloud.agent.api.GetVmIpAddressCommand; |
308 | 311 |
|
309 | 312 | public class VmwareResource implements StoragePoolResource, ServerResource, VmwareHostService, VirtualRouterDeployer { |
310 | 313 | private static final Logger s_logger = Logger.getLogger(VmwareResource.class); |
@@ -3352,7 +3355,7 @@ private Pair<String, ManagedObjectReference> getIsoDatastoreInfo(VmwareHyperviso |
3352 | 3355 | String isoFileName = isoUrl.substring(isoFileNameStartPos); |
3353 | 3356 |
|
3354 | 3357 | int templateRootPos = isoUrl.indexOf("template/tmpl"); |
3355 | | - templateRootPos = (templateRootPos < 0 ? isoUrl.indexOf("ConfigDrive") : templateRootPos); |
| 3358 | + templateRootPos = (templateRootPos < 0 ? isoUrl.indexOf(ConfigDrive.CONFIGDRIVEDIR) : templateRootPos); |
3356 | 3359 | if (templateRootPos < 0 ) { |
3357 | 3360 | throw new Exception("Invalid ISO path info"); |
3358 | 3361 | } |
|
0 commit comments