rhtyd closed pull request #2417: [CLOUDSTACK-10248] Fix errors that appeared after #2283 URL: https://github.com/apache/cloudstack/pull/2417
This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/agent/src/main/java/com/cloud/agent/agent/direct/download/DirectTemplateDownloader.java b/agent/src/main/java/com/cloud/agent/direct/download/DirectTemplateDownloader.java similarity index 100% rename from agent/src/main/java/com/cloud/agent/agent/direct/download/DirectTemplateDownloader.java rename to agent/src/main/java/com/cloud/agent/direct/download/DirectTemplateDownloader.java diff --git a/agent/src/main/java/com/cloud/agent/agent/direct/download/DirectTemplateDownloaderImpl.java b/agent/src/main/java/com/cloud/agent/direct/download/DirectTemplateDownloaderImpl.java similarity index 100% rename from agent/src/main/java/com/cloud/agent/agent/direct/download/DirectTemplateDownloaderImpl.java rename to agent/src/main/java/com/cloud/agent/direct/download/DirectTemplateDownloaderImpl.java diff --git a/agent/src/main/java/com/cloud/agent/agent/direct/download/HttpDirectTemplateDownloader.java b/agent/src/main/java/com/cloud/agent/direct/download/HttpDirectTemplateDownloader.java similarity index 100% rename from agent/src/main/java/com/cloud/agent/agent/direct/download/HttpDirectTemplateDownloader.java rename to agent/src/main/java/com/cloud/agent/direct/download/HttpDirectTemplateDownloader.java diff --git a/agent/src/main/java/com/cloud/agent/agent/direct/download/HttpsDirectTemplateDownloader.java b/agent/src/main/java/com/cloud/agent/direct/download/HttpsDirectTemplateDownloader.java similarity index 100% rename from agent/src/main/java/com/cloud/agent/agent/direct/download/HttpsDirectTemplateDownloader.java rename to agent/src/main/java/com/cloud/agent/direct/download/HttpsDirectTemplateDownloader.java diff --git a/agent/src/main/java/com/cloud/agent/agent/direct/download/MetalinkDirectTemplateDownloader.java b/agent/src/main/java/com/cloud/agent/direct/download/MetalinkDirectTemplateDownloader.java similarity index 100% rename from agent/src/main/java/com/cloud/agent/agent/direct/download/MetalinkDirectTemplateDownloader.java rename to agent/src/main/java/com/cloud/agent/direct/download/MetalinkDirectTemplateDownloader.java diff --git a/agent/src/main/java/com/cloud/agent/agent/direct/download/NfsDirectTemplateDownloader.java b/agent/src/main/java/com/cloud/agent/direct/download/NfsDirectTemplateDownloader.java similarity index 100% rename from agent/src/main/java/com/cloud/agent/agent/direct/download/NfsDirectTemplateDownloader.java rename to agent/src/main/java/com/cloud/agent/direct/download/NfsDirectTemplateDownloader.java diff --git a/agent/src/test/java/com/cloud/agent/agent/direct/download/DirectTemplateDownloaderImplTest.java b/agent/src/test/java/com/cloud/agent/direct/download/DirectTemplateDownloaderImplTest.java similarity index 100% rename from agent/src/test/java/com/cloud/agent/agent/direct/download/DirectTemplateDownloaderImplTest.java rename to agent/src/test/java/com/cloud/agent/direct/download/DirectTemplateDownloaderImplTest.java diff --git a/api/src/main/java/com/cloud/agent/api/api/storage/OVFHelper.java b/api/src/main/java/com/cloud/agent/api/storage/OVFHelper.java similarity index 100% rename from api/src/main/java/com/cloud/agent/api/api/storage/OVFHelper.java rename to api/src/main/java/com/cloud/agent/api/storage/OVFHelper.java diff --git a/api/src/main/java/com/cloud/agent/api/api/to/DatadiskTO.java b/api/src/main/java/com/cloud/agent/api/to/DatadiskTO.java similarity index 100% rename from api/src/main/java/com/cloud/agent/api/api/to/DatadiskTO.java rename to api/src/main/java/com/cloud/agent/api/to/DatadiskTO.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificate.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificate.java old mode 100755 new mode 100644 similarity index 97% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificate.java rename to api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificate.java index cd95e10d608..58fc1005ba2 --- a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificate.java +++ b/api/src/main/java/org/apache/cloudstack/api/command/admin/direct/download/UploadTemplateDirectDownloadCertificate.java @@ -1,89 +1,89 @@ -// Licensed to the Apache Software Foundation (ASF) under one -// or more contributor license agreements. See the NOTICE file -// distributed with this work for additional information -// regarding copyright ownership. The ASF licenses this file -// to you under the Apache License, Version 2.0 (the -// "License"); you may not use this file except in compliance -// with the License. You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, -// software distributed under the License is distributed on an -// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -// KIND, either express or implied. See the License for the -// specific language governing permissions and limitations -// under the License. -package org.apache.cloudstack.api.command.admin.direct.download; - -import com.cloud.exception.ConcurrentOperationException; -import com.cloud.exception.InsufficientCapacityException; -import com.cloud.exception.ResourceAllocationException; -import com.cloud.exception.ResourceUnavailableException; -import com.cloud.exception.NetworkRuleConflictException; -import org.apache.cloudstack.acl.RoleType; -import org.apache.cloudstack.api.APICommand; -import org.apache.cloudstack.api.ApiConstants; -import org.apache.cloudstack.api.BaseCmd; -import org.apache.cloudstack.api.Parameter; -import org.apache.cloudstack.api.ServerApiException; -import org.apache.cloudstack.api.ApiErrorCode; -import org.apache.cloudstack.api.response.SuccessResponse; -import org.apache.cloudstack.context.CallContext; -import org.apache.cloudstack.direct.download.DirectDownloadManager; -import org.apache.log4j.Logger; - -import javax.inject.Inject; - -@APICommand(name = UploadTemplateDirectDownloadCertificate.APINAME, - description = "Upload a certificate for HTTPS direct template download on KVM hosts", - responseObject = SuccessResponse.class, - requestHasSensitiveInfo = true, - responseHasSensitiveInfo = true, - since = "4.11.0", - authorized = {RoleType.Admin}) -public class UploadTemplateDirectDownloadCertificate extends BaseCmd { - - @Inject - DirectDownloadManager directDownloadManager; - - private static final Logger LOG = Logger.getLogger(UploadTemplateDirectDownloadCertificate.class); - public static final String APINAME = "uploadTemplateDirectDownloadCertificate"; - - @Parameter(name = ApiConstants.CERTIFICATE, type = BaseCmd.CommandType.STRING, required = true, length = 65535, - description = "SSL certificate") - private String certificate; - - @Parameter(name = ApiConstants.NAME , type = BaseCmd.CommandType.STRING, required = true, - description = "Name for the uploaded certificate") - private String name; - - @Parameter(name = ApiConstants.HYPERVISOR, type = BaseCmd.CommandType.STRING, required = true, description = "Hypervisor type") - private String hypervisor; - - @Override - public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException, NetworkRuleConflictException { - if (!hypervisor.equalsIgnoreCase("kvm")) { - throw new ServerApiException(ApiErrorCode.PARAM_ERROR, "Currently supporting KVM hosts only"); - } - - try { - directDownloadManager.uploadCertificateToHosts(certificate, name);; - setResponseObject(new SuccessResponse(getCommandName())); - } catch (Exception e) { - throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, e.getMessage()); - } - } - - @Override - public String getCommandName() { - return UploadTemplateDirectDownloadCertificate.APINAME; - } - - @Override - public long getEntityOwnerId() { - return CallContext.current().getCallingAccount().getId(); - } -} - - +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. +package org.apache.cloudstack.api.command.admin.direct.download; + +import com.cloud.exception.ConcurrentOperationException; +import com.cloud.exception.InsufficientCapacityException; +import com.cloud.exception.ResourceAllocationException; +import com.cloud.exception.ResourceUnavailableException; +import com.cloud.exception.NetworkRuleConflictException; +import org.apache.cloudstack.acl.RoleType; +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +import org.apache.cloudstack.api.BaseCmd; +import org.apache.cloudstack.api.Parameter; +import org.apache.cloudstack.api.ServerApiException; +import org.apache.cloudstack.api.ApiErrorCode; +import org.apache.cloudstack.api.response.SuccessResponse; +import org.apache.cloudstack.context.CallContext; +import org.apache.cloudstack.direct.download.DirectDownloadManager; +import org.apache.log4j.Logger; + +import javax.inject.Inject; + +@APICommand(name = UploadTemplateDirectDownloadCertificate.APINAME, + description = "Upload a certificate for HTTPS direct template download on KVM hosts", + responseObject = SuccessResponse.class, + requestHasSensitiveInfo = true, + responseHasSensitiveInfo = true, + since = "4.11.0", + authorized = {RoleType.Admin}) +public class UploadTemplateDirectDownloadCertificate extends BaseCmd { + + @Inject + DirectDownloadManager directDownloadManager; + + private static final Logger LOG = Logger.getLogger(UploadTemplateDirectDownloadCertificate.class); + public static final String APINAME = "uploadTemplateDirectDownloadCertificate"; + + @Parameter(name = ApiConstants.CERTIFICATE, type = BaseCmd.CommandType.STRING, required = true, length = 65535, + description = "SSL certificate") + private String certificate; + + @Parameter(name = ApiConstants.NAME , type = BaseCmd.CommandType.STRING, required = true, + description = "Name for the uploaded certificate") + private String name; + + @Parameter(name = ApiConstants.HYPERVISOR, type = BaseCmd.CommandType.STRING, required = true, description = "Hypervisor type") + private String hypervisor; + + @Override + public void execute() throws ResourceUnavailableException, InsufficientCapacityException, ServerApiException, ConcurrentOperationException, ResourceAllocationException, NetworkRuleConflictException { + if (!hypervisor.equalsIgnoreCase("kvm")) { + throw new ServerApiException(ApiErrorCode.PARAM_ERROR, "Currently supporting KVM hosts only"); + } + + try { + directDownloadManager.uploadCertificateToHosts(certificate, name);; + setResponseObject(new SuccessResponse(getCommandName())); + } catch (Exception e) { + throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, e.getMessage()); + } + } + + @Override + public String getCommandName() { + return UploadTemplateDirectDownloadCertificate.APINAME; + } + + @Override + public long getEntityOwnerId() { + return CallContext.current().getCallingAccount().getId(); + } +} + + diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/CreateManagementNetworkIpRangeCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/CreateManagementNetworkIpRangeCmd.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/CreateManagementNetworkIpRangeCmd.java rename to api/src/main/java/org/apache/cloudstack/api/command/admin/network/CreateManagementNetworkIpRangeCmd.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java rename to api/src/main/java/org/apache/cloudstack/api/command/admin/network/DeleteManagementNetworkIpRangeCmd.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/MigrateNetworkCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/MigrateNetworkCmd.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/MigrateNetworkCmd.java rename to api/src/main/java/org/apache/cloudstack/api/command/admin/network/MigrateNetworkCmd.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/MigrateVPCCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/network/MigrateVPCCmd.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/network/MigrateVPCCmd.java rename to api/src/main/java/org/apache/cloudstack/api/command/admin/network/MigrateVPCCmd.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/user/MoveUserCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/user/MoveUserCmd.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/command/admin/user/MoveUserCmd.java rename to api/src/main/java/org/apache/cloudstack/api/command/admin/user/MoveUserCmd.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/api/response/ChildTemplateResponse.java b/api/src/main/java/org/apache/cloudstack/api/response/ChildTemplateResponse.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/api/response/ChildTemplateResponse.java rename to api/src/main/java/org/apache/cloudstack/api/response/ChildTemplateResponse.java diff --git a/api/src/main/java/org/apache/cloudstack/cloudstack/direct/download/DirectDownloadManager.java b/api/src/main/java/org/apache/cloudstack/direct/download/DirectDownloadManager.java similarity index 100% rename from api/src/main/java/org/apache/cloudstack/cloudstack/direct/download/DirectDownloadManager.java rename to api/src/main/java/org/apache/cloudstack/direct/download/DirectDownloadManager.java diff --git a/core/src/main/java/com/cloud/agent/api/api/ReplugNicAnswer.java b/core/src/main/java/com/cloud/agent/api/ReplugNicAnswer.java similarity index 100% rename from core/src/main/java/com/cloud/agent/api/api/ReplugNicAnswer.java rename to core/src/main/java/com/cloud/agent/api/ReplugNicAnswer.java diff --git a/core/src/main/java/com/cloud/agent/api/api/ReplugNicCommand.java b/core/src/main/java/com/cloud/agent/api/ReplugNicCommand.java similarity index 100% rename from core/src/main/java/com/cloud/agent/api/api/ReplugNicCommand.java rename to core/src/main/java/com/cloud/agent/api/ReplugNicCommand.java diff --git a/core/src/main/java/com/cloud/agent/api/api/storage/CreateDatadiskTemplateAnswer.java b/core/src/main/java/com/cloud/agent/api/storage/CreateDatadiskTemplateAnswer.java similarity index 100% rename from core/src/main/java/com/cloud/agent/api/api/storage/CreateDatadiskTemplateAnswer.java rename to core/src/main/java/com/cloud/agent/api/storage/CreateDatadiskTemplateAnswer.java diff --git a/core/src/main/java/com/cloud/agent/api/api/storage/CreateDatadiskTemplateCommand.java b/core/src/main/java/com/cloud/agent/api/storage/CreateDatadiskTemplateCommand.java similarity index 100% rename from core/src/main/java/com/cloud/agent/api/api/storage/CreateDatadiskTemplateCommand.java rename to core/src/main/java/com/cloud/agent/api/storage/CreateDatadiskTemplateCommand.java diff --git a/core/src/main/java/com/cloud/agent/api/api/storage/GetDatadisksAnswer.java b/core/src/main/java/com/cloud/agent/api/storage/GetDatadisksAnswer.java similarity index 100% rename from core/src/main/java/com/cloud/agent/api/api/storage/GetDatadisksAnswer.java rename to core/src/main/java/com/cloud/agent/api/storage/GetDatadisksAnswer.java diff --git a/core/src/main/java/com/cloud/agent/api/api/storage/GetDatadisksCommand.java b/core/src/main/java/com/cloud/agent/api/storage/GetDatadisksCommand.java similarity index 100% rename from core/src/main/java/com/cloud/agent/api/api/storage/GetDatadisksCommand.java rename to core/src/main/java/com/cloud/agent/api/storage/GetDatadisksCommand.java diff --git a/core/src/main/java/com/cloud/cloud/storage/template/MetalinkTemplateDownloader.java b/core/src/main/java/com/cloud/storage/template/MetalinkTemplateDownloader.java similarity index 100% rename from core/src/main/java/com/cloud/cloud/storage/template/MetalinkTemplateDownloader.java rename to core/src/main/java/com/cloud/storage/template/MetalinkTemplateDownloader.java diff --git a/engine/schema/src/main/java/com/cloud/cloud/configuration/ManagementServiceConfiguration.java b/engine/schema/src/main/java/com/cloud/configuration/ManagementServiceConfiguration.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/cloud/configuration/ManagementServiceConfiguration.java rename to engine/schema/src/main/java/com/cloud/configuration/ManagementServiceConfiguration.java diff --git a/engine/schema/src/main/java/com/cloud/cloud/configuration/ManagementServiceConfigurationImpl.java b/engine/schema/src/main/java/com/cloud/configuration/ManagementServiceConfigurationImpl.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/cloud/configuration/ManagementServiceConfigurationImpl.java rename to engine/schema/src/main/java/com/cloud/configuration/ManagementServiceConfigurationImpl.java diff --git a/engine/schema/src/main/java/com/cloud/domain/domain/DomainDetailVO.java b/engine/schema/src/main/java/com/cloud/domain/DomainDetailVO.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/domain/domain/DomainDetailVO.java rename to engine/schema/src/main/java/com/cloud/domain/DomainDetailVO.java diff --git a/engine/schema/src/main/java/com/cloud/domain/domain/dao/DomainDetailsDao.java b/engine/schema/src/main/java/com/cloud/domain/dao/DomainDetailsDao.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/domain/domain/dao/DomainDetailsDao.java rename to engine/schema/src/main/java/com/cloud/domain/dao/DomainDetailsDao.java diff --git a/engine/schema/src/main/java/com/cloud/domain/domain/dao/DomainDetailsDaoImpl.java b/engine/schema/src/main/java/com/cloud/domain/dao/DomainDetailsDaoImpl.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/domain/domain/dao/DomainDetailsDaoImpl.java rename to engine/schema/src/main/java/com/cloud/domain/dao/DomainDetailsDaoImpl.java diff --git a/engine/schema/src/main/java/com/cloud/cloud/usage/UsageSnapshotOnPrimaryVO.java b/engine/schema/src/main/java/com/cloud/usage/UsageSnapshotOnPrimaryVO.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/cloud/usage/UsageSnapshotOnPrimaryVO.java rename to engine/schema/src/main/java/com/cloud/usage/UsageSnapshotOnPrimaryVO.java diff --git a/engine/schema/src/main/java/com/cloud/cloud/usage/dao/UsageVMSnapshotOnPrimaryDao.java b/engine/schema/src/main/java/com/cloud/usage/dao/UsageVMSnapshotOnPrimaryDao.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/cloud/usage/dao/UsageVMSnapshotOnPrimaryDao.java rename to engine/schema/src/main/java/com/cloud/usage/dao/UsageVMSnapshotOnPrimaryDao.java diff --git a/engine/schema/src/main/java/com/cloud/cloud/usage/dao/UsageVMSnapshotOnPrimaryDaoImpl.java b/engine/schema/src/main/java/com/cloud/usage/dao/UsageVMSnapshotOnPrimaryDaoImpl.java similarity index 100% rename from engine/schema/src/main/java/com/cloud/cloud/usage/dao/UsageVMSnapshotOnPrimaryDaoImpl.java rename to engine/schema/src/main/java/com/cloud/usage/dao/UsageVMSnapshotOnPrimaryDaoImpl.java diff --git a/engine/storage/integration-test/src/test/java/com/cloud/vm/snapshot/dao/VmSnapshotDaoTest.java b/engine/storage/integration-test/src/test/java/com/cloud/vm/snapshot/dao/VmSnapshotDaoTest.java index 38b4f29a324..be8d04a8a0e 100644 --- a/engine/storage/integration-test/src/test/java/com/cloud/vm/snapshot/dao/VmSnapshotDaoTest.java +++ b/engine/storage/integration-test/src/test/java/com/cloud/vm/snapshot/dao/VmSnapshotDaoTest.java @@ -22,15 +22,13 @@ import javax.inject.Inject; -import junit.framework.Assert; - +import org.apache.cloudstack.storage.test.CloudStackTestNGBase; +import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import org.apache.cloudstack.storage.test.CloudStackTestNGBase; - import com.cloud.vm.snapshot.VMSnapshotDetailsVO; @RunWith(SpringJUnit4ClassRunner.class) @@ -41,7 +39,7 @@ @Test public void testVmSnapshotDetails() { - VMSnapshotDetailsVO detailsVO = new VMSnapshotDetailsVO(1L, "test", "foo", display); + VMSnapshotDetailsVO detailsVO = new VMSnapshotDetailsVO(1L, "test", "foo", true); vmsnapshotDetailsDao.persist(detailsVO); Map<String, String> details = vmsnapshotDetailsDao.listDetailsKeyPairs(1L); Assert.assertTrue(details.containsKey("test")); diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/allocator/StorageAllocatorTest.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/allocator/StorageAllocatorTest.java index 3c4caee036e..0d2ebf559e8 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/allocator/StorageAllocatorTest.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/allocator/StorageAllocatorTest.java @@ -22,16 +22,6 @@ import javax.inject.Inject; -import junit.framework.Assert; - -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.Matchers; -import org.mockito.Mockito; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreProvider; import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreProviderManager; import org.apache.cloudstack.engine.subsystem.api.storage.StoragePoolAllocator; @@ -41,6 +31,13 @@ import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailVO; import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailsDao; import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Matchers; +import org.mockito.Mockito; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import com.cloud.configuration.Config; import com.cloud.dc.ClusterVO; @@ -58,6 +55,7 @@ import com.cloud.org.Managed.ManagedState; import com.cloud.storage.DiskOfferingVO; import com.cloud.storage.ScopeType; +import com.cloud.storage.Storage; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.StorageManager; import com.cloud.storage.StoragePool; @@ -72,6 +70,8 @@ import com.cloud.vm.DiskProfile; import com.cloud.vm.VirtualMachineProfile; +import junit.framework.Assert; + @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath:/storageContext.xml") public class StorageAllocatorTest { @@ -119,8 +119,8 @@ public void setup() throws Exception { protected void createDb() { DataCenterVO dc = - new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, - true, null, null); + new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, + true, null, null); dc = dcDao.persist(dc); dcId = dc.getId(); @@ -164,8 +164,8 @@ protected void createDb() { diskOfferingId = diskOffering.getId(); volume = - new VolumeVO(Volume.Type.ROOT, "volume", dcId, 1, 1, diskOffering.getId(), diskOffering.getDiskSize(), diskOffering.getMinIops(), diskOffering.getMaxIops(), - ""); + new VolumeVO(Volume.Type.ROOT, "volume", dcId, 1, 1, diskOffering.getId(), Storage.ProvisioningType.THIN, diskOffering.getDiskSize(), diskOffering.getMinIops(), + diskOffering.getMaxIops(), ""); volume = volumeDao.persist(volume); volumeId = volume.getId(); } diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/DirectAgentManagerSimpleImpl.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/DirectAgentManagerSimpleImpl.java index 0e4755e0345..30cba4d6c71 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/DirectAgentManagerSimpleImpl.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/DirectAgentManagerSimpleImpl.java @@ -154,7 +154,7 @@ protected void loadResource(Long hostId) { VmwareServerDiscoverer discover = new VmwareServerDiscoverer(); Map<? extends ServerResource, Map<String, String>> resources = - discover.find(host.getDataCenterId(), host.getPodId(), host.getClusterId(), uri, userName, password, null); + discover.find(host.getDataCenterId(), host.getPodId(), host.getClusterId(), uri, userName, password, null); for (Map.Entry<? extends ServerResource, Map<String, String>> entry : resources.entrySet()) { resource = entry.getKey(); } @@ -290,4 +290,13 @@ public void notifyMonitorsOfHostAboutToBeRemoved(long hostId) { @Override public void notifyMonitorsOfRemovedHost(long hostId, long clusterId) { } + + @Override + public void disconnectWithInvestigation(long hostId, Event event) { + + } + + @Override + public void notifyMonitorsOfNewlyAddedHost(long hostId) { + } } diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java index 1b5746ddfe2..0185c0d1934 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTest.java @@ -26,14 +26,6 @@ import javax.inject.Inject; -import junit.framework.Assert; - -import org.mockito.Matchers; -import org.mockito.Mockito; -import org.springframework.test.context.ContextConfiguration; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - import org.apache.cloudstack.engine.subsystem.api.storage.DataObject; import org.apache.cloudstack.engine.subsystem.api.storage.DataStore; import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager; @@ -67,6 +59,11 @@ import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao; import org.apache.cloudstack.storage.to.TemplateObjectTO; +import org.mockito.Matchers; +import org.mockito.Mockito; +import org.springframework.test.context.ContextConfiguration; +import org.testng.AssertJUnit; +import org.testng.annotations.Test; import com.cloud.agent.AgentManager; import com.cloud.agent.api.Command; @@ -90,6 +87,7 @@ import com.cloud.storage.DataStoreRole; import com.cloud.storage.ScopeType; import com.cloud.storage.Snapshot; +import com.cloud.storage.Snapshot.LocationType; import com.cloud.storage.SnapshotVO; import com.cloud.storage.Storage; import com.cloud.storage.Storage.ImageFormat; @@ -104,6 +102,8 @@ import com.cloud.storage.dao.VolumeDao; import com.cloud.utils.component.ComponentContext; +import junit.framework.Assert; + @ContextConfiguration(locations = {"classpath:/storageContext.xml"}) public class SnapshotTest extends CloudStackTestNGBase { @Inject @@ -182,8 +182,8 @@ public void setUp() { } else { // create data center DataCenterVO dc = - new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, - true, null, null); + new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, + true, null, null); dc = dcDao.persist(dc); dcId = dc.getId(); // create pod @@ -340,14 +340,13 @@ public DataStore createPrimaryDataStore() { private SnapshotVO createSnapshotInDb(VolumeInfo volume) { Snapshot.Type snapshotType = Snapshot.Type.MANUAL; SnapshotVO snapshotVO = - new SnapshotVO(volume.getDataCenterId(), 2, 1, volume.getId(), 1L, UUID.randomUUID().toString(), (short)snapshotType.ordinal(), snapshotType.name(), - volume.getSize(), HypervisorType.XenServer); + new SnapshotVO(volume.getDataCenterId(), 2, 1, volume.getId(), 1L, UUID.randomUUID().toString(), (short)snapshotType.ordinal(), snapshotType.name(), + volume.getSize(), 1L, 100L, HypervisorType.XenServer, LocationType.PRIMARY); return this.snapshotDao.persist(snapshotVO); } private VolumeVO createVolume(Long templateId, long dataStoreId) { - - VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, 1000, 0L, 0L, ""); + VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, Storage.ProvisioningType.THIN, 1000, 0L, 0L, ""); volume.setDataCenterId(this.dcId); volume.setPoolId(dataStoreId); volume = volumeDao.persist(volume); @@ -361,7 +360,7 @@ public VolumeInfo createCopyBaseImage() throws InterruptedException, ExecutionEx VolumeVO volume = createVolume(image.getId(), primaryStore.getId()); VolumeInfo volInfo = this.volFactory.getVolume(volume.getId()); AsyncCallFuture<VolumeApiResult> future = - this.volumeService.createVolumeFromTemplateAsync(volInfo, this.primaryStoreId, this.templateFactory.getTemplate(this.image.getId(), DataStoreRole.Image)); + this.volumeService.createVolumeFromTemplateAsync(volInfo, this.primaryStoreId, this.templateFactory.getTemplate(this.image.getId(), DataStoreRole.Image)); VolumeApiResult result; result = future.get(); diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTestWithFakeData.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTestWithFakeData.java index 8c7b06d872e..a3961ace64b 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTestWithFakeData.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/SnapshotTestWithFakeData.java @@ -36,16 +36,6 @@ import javax.inject.Inject; -import junit.framework.Assert; - -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.Matchers; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - import org.apache.cloudstack.engine.subsystem.api.storage.DataStore; import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager; import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreProvider; @@ -65,6 +55,13 @@ import org.apache.cloudstack.storage.datastore.db.SnapshotDataStoreVO; import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.cloudstack.storage.volume.VolumeObject; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Matchers; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import com.cloud.dc.ClusterVO; import com.cloud.dc.DataCenter; @@ -81,6 +78,7 @@ import com.cloud.storage.DataStoreRole; import com.cloud.storage.ScopeType; import com.cloud.storage.Snapshot; +import com.cloud.storage.Snapshot.LocationType; import com.cloud.storage.SnapshotPolicyVO; import com.cloud.storage.SnapshotVO; import com.cloud.storage.Storage; @@ -97,6 +95,8 @@ import com.cloud.utils.component.ComponentContext; import com.cloud.utils.db.Merovingian2; +import junit.framework.Assert; + @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"classpath:/fakeDriverTestContext.xml"}) public class SnapshotTestWithFakeData { @@ -148,8 +148,8 @@ public void setUp() { // create data center DataCenterVO dc = - new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, DataCenter.NetworkType.Basic, null, - null, true, true, null, null); + new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, DataCenter.NetworkType.Basic, null, + null, true, true, null, null); dc = dcDao.persist(dc); dcId = dc.getId(); // create pod @@ -206,21 +206,21 @@ public void tearDown() throws Exception { private SnapshotVO createSnapshotInDb() { Snapshot.Type snapshotType = Snapshot.Type.RECURRING; SnapshotVO snapshotVO = - new SnapshotVO(dcId, 2, 1, 1L, 1L, UUID.randomUUID().toString(), (short)snapshotType.ordinal(), snapshotType.name(), 100, Hypervisor.HypervisorType.XenServer); + new SnapshotVO(dcId, 2, 1, 1L, 1L, UUID.randomUUID().toString(), (short)snapshotType.ordinal(), snapshotType.name(), 100, 1L, 100L, Hypervisor.HypervisorType.XenServer, + LocationType.PRIMARY); return snapshotDao.persist(snapshotVO); } private SnapshotVO createSnapshotInDb(Long volumeId) { Snapshot.Type snapshotType = Snapshot.Type.DAILY; SnapshotVO snapshotVO = - new SnapshotVO(dcId, 2, 1, volumeId, 1L, UUID.randomUUID().toString(), (short)snapshotType.ordinal(), snapshotType.name(), 100, - Hypervisor.HypervisorType.XenServer); + new SnapshotVO(dcId, 2, 1, 1L, 1L, UUID.randomUUID().toString(), (short)snapshotType.ordinal(), snapshotType.name(), 100, 1L, 100L, Hypervisor.HypervisorType.XenServer, + LocationType.PRIMARY); return snapshotDao.persist(snapshotVO); } private VolumeInfo createVolume(Long templateId, DataStore store) { - VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), dcId, 1L, 1L, 1L, 1000, 0L, 0L, ""); - ; + VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), dcId, 1L, 1L, 1L, Storage.ProvisioningType.THIN, 1000, 0L, 0L, ""); volume.setPoolId(store.getId()); volume = volumeDao.persist(volume); @@ -261,7 +261,7 @@ public void testTakeSnapshot() throws URISyntaxException { SnapshotDataStoreVO storeRef = snapshotDataStoreDao.findByStoreSnapshot(store.getRole(), store.getId(), snapshotVO.getId()); Assert.assertTrue(storeRef != null); Assert.assertTrue(storeRef.getState() == ObjectInDataStoreStateMachine.State.Ready); - snapshotInfo = result.getSnashot(); + snapshotInfo = result.getSnapshot(); boolean deletResult = snapshotService.deleteSnapshot(snapshotInfo); Assert.assertTrue(deletResult); snapshotDataStoreDao.expunge(storeRef.getId()); @@ -305,55 +305,55 @@ public void testTakeSnapshotFromVolume() throws URISyntaxException { } protected SnapshotPolicyVO createSnapshotPolicy(Long volId) { - SnapshotPolicyVO policyVO = new SnapshotPolicyVO(volId, "jfkd", "fdfd", DateUtil.IntervalType.DAILY, 8); - policyVO = snapshotPolicyDao.persist(policyVO); - return policyVO; - } + SnapshotPolicyVO policyVO = new SnapshotPolicyVO(volId, "jfkd", "fdfd", DateUtil.IntervalType.DAILY, 8, true); + policyVO = snapshotPolicyDao.persist(policyVO); + return policyVO; + } - @Test - public void testConcurrentSnapshot() throws URISyntaxException, InterruptedException, ExecutionException { - DataStore store = createDataStore(); - final FakePrimaryDataStoreDriver dataStoreDriver = (FakePrimaryDataStoreDriver)store.getDriver(); - dataStoreDriver.makeTakeSnapshotSucceed(true); - final VolumeInfo volumeInfo = createVolume(1L, store); - Assert.assertTrue(volumeInfo.getState() == Volume.State.Ready); - vol = volumeInfo; - // final SnapshotPolicyVO policyVO = createSnapshotPolicy(vol.getId()); + @Test + public void testConcurrentSnapshot() throws URISyntaxException, InterruptedException, ExecutionException { + DataStore store = createDataStore(); + final FakePrimaryDataStoreDriver dataStoreDriver = (FakePrimaryDataStoreDriver)store.getDriver(); + dataStoreDriver.makeTakeSnapshotSucceed(true); + final VolumeInfo volumeInfo = createVolume(1L, store); + Assert.assertTrue(volumeInfo.getState() == Volume.State.Ready); + vol = volumeInfo; + // final SnapshotPolicyVO policyVO = createSnapshotPolicy(vol.getId()); - ExecutorService pool = Executors.newFixedThreadPool(2); - boolean result = false; - List<Future<Boolean>> future = new ArrayList<Future<Boolean>>(); - for (int i = 0; i < 12; i++) { - final int cnt = i; - Future<Boolean> task = pool.submit(new Callable<Boolean>() { - @Override - public Boolean call() throws Exception { - boolean r = true; - try { - SnapshotVO snapshotVO = createSnapshotInDb(vol.getId()); - VolumeObject volumeObject = (VolumeObject)vol; - Account account = mock(Account.class); - when(account.getId()).thenReturn(1L); - CreateSnapshotPayload createSnapshotPayload = mock(CreateSnapshotPayload.class); - when(createSnapshotPayload.getAccount()).thenReturn(account); - when(createSnapshotPayload.getSnapshotId()).thenReturn(snapshotVO.getId()); - when(createSnapshotPayload.getSnapshotPolicyId()).thenReturn(0L); - volumeObject.addPayload(createSnapshotPayload); - if (cnt > 8) { - mockStorageMotionStrategy.makeBackupSnapshotSucceed(false); - } - SnapshotInfo newSnapshot = volumeService.takeSnapshot(vol); - if (newSnapshot == null) { + ExecutorService pool = Executors.newFixedThreadPool(2); + boolean result = false; + List<Future<Boolean>> future = new ArrayList<Future<Boolean>>(); + for (int i = 0; i < 12; i++) { + final int cnt = i; + Future<Boolean> task = pool.submit(new Callable<Boolean>() { + @Override + public Boolean call() throws Exception { + boolean r = true; + try { + SnapshotVO snapshotVO = createSnapshotInDb(vol.getId()); + VolumeObject volumeObject = (VolumeObject)vol; + Account account = mock(Account.class); + when(account.getId()).thenReturn(1L); + CreateSnapshotPayload createSnapshotPayload = mock(CreateSnapshotPayload.class); + when(createSnapshotPayload.getAccount()).thenReturn(account); + when(createSnapshotPayload.getSnapshotId()).thenReturn(snapshotVO.getId()); + when(createSnapshotPayload.getSnapshotPolicyId()).thenReturn(0L); + volumeObject.addPayload(createSnapshotPayload); + if (cnt > 8) { + mockStorageMotionStrategy.makeBackupSnapshotSucceed(false); + } + SnapshotInfo newSnapshot = volumeService.takeSnapshot(vol); + if (newSnapshot == null) { + r = false; + } + } catch (Exception e) { r = false; } - } catch (Exception e) { - r = false; + return r; } - return r; - } - }); - Assert.assertTrue(task.get()); - } + }); + Assert.assertTrue(task.get()); + } + } } -} diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java index 0fc6f593d8c..9a680ed7fd3 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeServiceTest.java @@ -29,12 +29,6 @@ import javax.inject.Inject; -import org.mockito.Matchers; -import org.mockito.Mockito; -import org.springframework.test.context.ContextConfiguration; -import org.testng.Assert; -import org.testng.annotations.Test; - import org.apache.cloudstack.engine.subsystem.api.storage.ClusterScope; import org.apache.cloudstack.engine.subsystem.api.storage.DataObject; import org.apache.cloudstack.engine.subsystem.api.storage.DataStore; @@ -56,6 +50,11 @@ import org.apache.cloudstack.storage.datastore.db.ImageStoreVO; import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao; import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; +import org.mockito.Matchers; +import org.mockito.Mockito; +import org.springframework.test.context.ContextConfiguration; +import org.testng.Assert; +import org.testng.annotations.Test; import com.cloud.agent.AgentManager; import com.cloud.dc.ClusterVO; @@ -75,6 +74,7 @@ import com.cloud.storage.DataStoreRole; import com.cloud.storage.ScopeType; import com.cloud.storage.Storage; +import com.cloud.storage.Storage.ProvisioningType; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.Storage.TemplateType; import com.cloud.storage.VMTemplateVO; @@ -139,8 +139,8 @@ public void setUp() { } // create data center DataCenterVO dc = - new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, - true, null, null); + new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, + true, null, null); dc = dcDao.persist(dc); dcId = dc.getId(); // create pod @@ -361,7 +361,7 @@ public DataStore createPrimaryDataStore() { } private VolumeVO createVolume(Long templateId, long dataStoreId) { - VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, 1000, 0L, 0L, ""); + VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, ProvisioningType.THIN, 1000, 0L, 0L, ""); volume.setPoolId(dataStoreId); volume = volumeDao.persist(volume); return volume; diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTest.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTest.java index c274d76d994..86421742f83 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTest.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTest.java @@ -26,14 +26,6 @@ import javax.inject.Inject; -import junit.framework.Assert; - -import org.mockito.Matchers; -import org.mockito.Mockito; -import org.springframework.test.context.ContextConfiguration; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - import org.apache.cloudstack.engine.subsystem.api.storage.DataObject; import org.apache.cloudstack.engine.subsystem.api.storage.DataStore; import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager; @@ -58,6 +50,11 @@ import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao; import org.apache.cloudstack.storage.to.TemplateObjectTO; +import org.mockito.Matchers; +import org.mockito.Mockito; +import org.springframework.test.context.ContextConfiguration; +import org.testng.AssertJUnit; +import org.testng.annotations.Test; import com.cloud.agent.AgentManager; import com.cloud.agent.api.Command; @@ -82,6 +79,7 @@ import com.cloud.storage.ScopeType; import com.cloud.storage.Storage; import com.cloud.storage.Storage.ImageFormat; +import com.cloud.storage.Storage.ProvisioningType; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.Storage.TemplateType; import com.cloud.storage.StoragePoolStatus; @@ -92,6 +90,8 @@ import com.cloud.storage.dao.VolumeDao; import com.cloud.utils.component.ComponentContext; +import junit.framework.Assert; + @ContextConfiguration(locations = {"classpath:/storageContext.xml"}) public class VolumeTest extends CloudStackTestNGBase { @Inject @@ -158,8 +158,8 @@ public void setUp() { } else { // create data center DataCenterVO dc = - new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, - true, null, null); + new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, + true, null, null); dc = dcDao.persist(dc); dcId = dc.getId(); // create pod @@ -263,7 +263,6 @@ protected void injectMockito() { public DataStore createPrimaryDataStore() { try { - String uuid = UUID.nameUUIDFromBytes(this.getPrimaryStorageUrl().getBytes()).toString(); List<StoragePoolVO> pools = primaryDataStoreDao.findPoolByName(this.primaryName); if (pools.size() > 0) { return this.dataStoreMgr.getPrimaryDataStore(pools.get(0).getId()); @@ -314,8 +313,7 @@ public DataStore createPrimaryDataStore() { } private VolumeVO createVolume(Long templateId, long dataStoreId) { - VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, 1000, 0L, 0L, ""); - ; + VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, ProvisioningType.THIN, 1000, 0L, 0L, ""); volume.setPoolId(dataStoreId); volume = volumeDao.persist(volume); return volume; @@ -329,7 +327,7 @@ public void testCopyBaseImage() { VolumeVO volume = createVolume(image.getId(), primaryStore.getId()); VolumeInfo volInfo = this.volFactory.getVolume(volume.getId()); AsyncCallFuture<VolumeApiResult> future = - this.volumeService.createVolumeFromTemplateAsync(volInfo, this.primaryStoreId, this.templateFactory.getTemplate(this.image.getId(), DataStoreRole.Image)); + this.volumeService.createVolumeFromTemplateAsync(volInfo, this.primaryStoreId, this.templateFactory.getTemplate(this.image.getId(), DataStoreRole.Image)); try { VolumeApiResult result = future.get(); diff --git a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java index 1f3aff04f33..98af170356f 100644 --- a/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java +++ b/engine/storage/integration-test/src/test/java/org/apache/cloudstack/storage/test/VolumeTestVmware.java @@ -26,12 +26,6 @@ import javax.inject.Inject; -import org.mockito.Matchers; -import org.mockito.Mockito; -import org.springframework.test.context.ContextConfiguration; -import org.testng.AssertJUnit; -import org.testng.annotations.Test; - import org.apache.cloudstack.engine.subsystem.api.storage.DataObject; import org.apache.cloudstack.engine.subsystem.api.storage.DataStore; import org.apache.cloudstack.engine.subsystem.api.storage.DataStoreManager; @@ -54,6 +48,11 @@ import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.cloudstack.storage.datastore.db.TemplateDataStoreDao; import org.apache.cloudstack.storage.to.TemplateObjectTO; +import org.mockito.Matchers; +import org.mockito.Mockito; +import org.springframework.test.context.ContextConfiguration; +import org.testng.AssertJUnit; +import org.testng.annotations.Test; import com.cloud.agent.AgentManager; import com.cloud.dc.ClusterDetailsDao; @@ -78,6 +77,7 @@ import com.cloud.storage.DataStoreRole; import com.cloud.storage.ScopeType; import com.cloud.storage.Storage; +import com.cloud.storage.Storage.ProvisioningType; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.Storage.TemplateType; import com.cloud.storage.StoragePoolStatus; @@ -154,8 +154,8 @@ public void setUp() { } else { // create data center DataCenterVO dc = - new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, - true, null, null); + new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", null, null, NetworkType.Basic, null, null, true, + true, null, null); dc = dcDao.persist(dc); dcId = dc.getId(); // create pod @@ -315,8 +315,7 @@ public DataStore createPrimaryDataStore() { } private VolumeVO createVolume(Long templateId, long dataStoreId) { - VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, 1000, 0L, 0L, ""); - ; + VolumeVO volume = new VolumeVO(Volume.Type.DATADISK, UUID.randomUUID().toString(), this.dcId, 1L, 1L, 1L, ProvisioningType.THIN, 1000, 0L, 0L, ""); volume.setPoolId(dataStoreId); volume = volumeDao.persist(volume); return volume; @@ -330,7 +329,7 @@ public void testCopyBaseImage() { VolumeVO volume = createVolume(image.getId(), primaryStore.getId()); VolumeInfo volInfo = this.volFactory.getVolume(volume.getId()); AsyncCallFuture<VolumeApiResult> future = - this.volumeService.createVolumeFromTemplateAsync(volInfo, this.primaryStoreId, this.templateFactory.getTemplate(this.image.getId(), DataStoreRole.Image)); + this.volumeService.createVolumeFromTemplateAsync(volInfo, this.primaryStoreId, this.templateFactory.getTemplate(this.image.getId(), DataStoreRole.Image)); try { VolumeApiResult result = future.get(); diff --git a/plugins/hypervisors/kvm/src/main/java/com/cloud/cloud/hypervisor/kvm/resource/wrapper/LibvirtReplugNicCommandWrapper.java b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtReplugNicCommandWrapper.java similarity index 100% rename from plugins/hypervisors/kvm/src/main/java/com/cloud/cloud/hypervisor/kvm/resource/wrapper/LibvirtReplugNicCommandWrapper.java rename to plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtReplugNicCommandWrapper.java diff --git a/plugins/hypervisors/ovm3/pom.xml b/plugins/hypervisors/ovm3/pom.xml index 20831570ef3..e642e3b0691 100644 --- a/plugins/hypervisors/ovm3/pom.xml +++ b/plugins/hypervisors/ovm3/pom.xml @@ -1,72 +1,81 @@ -<!-- - Licensed to the Apache Software Foundation (ASF) under one - or more contributor license agreements. See the NOTICE file - distributed with this work for additional information - regarding copyright ownership. The ASF licenses this file - to you under the Apache License, Version 2.0 (the - "License"); you may not use this file except in compliance - with the License. You may obtain a copy of the License at +<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor + license agreements. See the NOTICE file distributed with this work for additional + information regarding copyright ownership. The ASF licenses this file to + you under the Apache License, Version 2.0 (the "License"); you may not use + this file except in compliance with the License. You may obtain a copy of + the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required + by applicable law or agreed to in writing, software distributed under the + License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS + OF ANY KIND, either express or implied. See the License for the specific + language governing permissions and limitations under the License. --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <artifactId>cloud-plugin-hypervisor-ovm3</artifactId> + <name>Apache CloudStack Plugin - Hypervisor OracleVM3</name> - http://www.apache.org/licenses/LICENSE-2.0 + <parent> + <groupId>org.apache.cloudstack</groupId> + <artifactId>cloudstack-plugins</artifactId> + <version>4.12.0.0-SNAPSHOT</version> + <relativePath>../../pom.xml</relativePath> + </parent> - Unless required by applicable law or agreed to in writing, - software distributed under the License is distributed on an - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, either express or implied. See the License for the - specific language governing permissions and limitations - under the License. ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <artifactId>cloud-plugin-hypervisor-ovm3</artifactId> - <name>Apache CloudStack Plugin - Hypervisor OracleVM3</name> - <parent> - <groupId>org.apache.cloudstack</groupId> - <artifactId>cloudstack-plugins</artifactId> - <version>4.12.0.0-SNAPSHOT</version> - <relativePath>../../pom.xml</relativePath> - </parent> - <dependencies> - <dependency> - <groupId>org.apache.xmlrpc</groupId> - <artifactId>xmlrpc-client</artifactId> - <version>${cs.xmlrpc.version}</version> - </dependency> - <dependency> - <groupId>org.apache.xmlrpc</groupId> - <artifactId>xmlrpc-common</artifactId> - <version>${cs.xmlrpc.version}</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-lang3</artifactId> - <version>${cs.commons-lang3.version}</version> - </dependency> - <dependency> - <groupId>log4j</groupId> - <artifactId>log4j</artifactId> - <version>${cs.log4j.version}</version> - </dependency> - </dependencies> - <profiles> - <profile> - <id>integration</id> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-failsafe-plugin</artifactId> - <executions> - <execution> - <goals> - <goal>integration-test</goal> - <goal>verify</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - </profiles> + <dependencies> + <dependency> + <groupId>org.apache.xmlrpc</groupId> + <artifactId>xmlrpc-client</artifactId> + <version>${cs.xmlrpc.version}</version> + </dependency> + <dependency> + <groupId>org.apache.xmlrpc</groupId> + <artifactId>xmlrpc-common</artifactId> + <version>${cs.xmlrpc.version}</version> + </dependency> + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-lang3</artifactId> + <version>${cs.commons-lang3.version}</version> + </dependency> + <dependency> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + <version>${cs.log4j.version}</version> + </dependency> + </dependencies> + + <build> + <pluginManagement> + <plugins> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <skipTests>true</skipTests> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + + <profiles> + <profile> + <id>integration</id> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>integration-test</goal> + <goal>verify</goal> + </goals> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> </project> diff --git a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java index cfe249e34ed..102478c22ff 100644 --- a/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java +++ b/plugins/hypervisors/ovm3/src/main/java/com/cloud/hypervisor/ovm3/objects/OvmObject.java @@ -172,7 +172,7 @@ public Boolean getSuccess() { if (nodeListFor2.getLength() > 1) { /* Do we need to figure out all the sub elements here and put them in a map? */ } else { - String element = nodeListFor.item(index).getTextContent(); + String element = nodeListFor.item(index).getNodeValue(); myMap.put(rnode, (E) element); } } @@ -193,8 +193,8 @@ public Boolean getSuccess() { NodeList nodeList = (NodeList) xPathExpression.evaluate(xmlDocument, XPathConstants.NODESET); for (int ind = 0; ind < nodeList.getLength(); ind++) { - if (!nodeList.item(ind).getTextContent().isEmpty()) { - list.add("" + nodeList.item(ind).getTextContent()); + if (!nodeList.item(ind).getNodeValue().isEmpty()) { + list.add("" + nodeList.item(ind).getNodeValue()); } else { list.add("" + nodeList.item(ind).getNodeValue()); } @@ -213,7 +213,7 @@ public String xmlToString(String path, Document xmlDocument) XPathExpression xPathExpression = xPath.compile(path); NodeList nodeList = (NodeList) xPathExpression.evaluate(xmlDocument, XPathConstants.NODESET); - return nodeList.item(0).getTextContent(); + return nodeList.item(0).getNodeValue(); } catch (NullPointerException e) { LOGGER.info("Got no items back from parsing, returning null: " + e); return null; diff --git a/plugins/hypervisors/xenserver/src/test/java/com/cloud/cloud/hypervisor/XenServerGuruTest.java b/plugins/hypervisors/xenserver/src/test/java/com/cloud/hypervisor/XenServerGuruTest.java similarity index 100% rename from plugins/hypervisors/xenserver/src/test/java/com/cloud/cloud/hypervisor/XenServerGuruTest.java rename to plugins/hypervisors/xenserver/src/test/java/com/cloud/hypervisor/XenServerGuruTest.java diff --git a/plugins/network-elements/nuage-vsp/src/main/java/com/com/cloud/network/vsp/resource/wrapper/NuageVspCheckHealthCommandWrapper.java b/plugins/network-elements/nuage-vsp/src/main/java/com/cloud/network/vsp/resource/wrapper/NuageVspCheckHealthCommandWrapper.java similarity index 100% rename from plugins/network-elements/nuage-vsp/src/main/java/com/com/cloud/network/vsp/resource/wrapper/NuageVspCheckHealthCommandWrapper.java rename to plugins/network-elements/nuage-vsp/src/main/java/com/cloud/network/vsp/resource/wrapper/NuageVspCheckHealthCommandWrapper.java diff --git a/plugins/network-elements/nuage-vsp/src/main/java/com/com/cloud/network/vsp/resource/wrapper/NuageVspExtraDhcpOptionsCommandWrapper.java b/plugins/network-elements/nuage-vsp/src/main/java/com/cloud/network/vsp/resource/wrapper/NuageVspExtraDhcpOptionsCommandWrapper.java similarity index 100% rename from plugins/network-elements/nuage-vsp/src/main/java/com/com/cloud/network/vsp/resource/wrapper/NuageVspExtraDhcpOptionsCommandWrapper.java rename to plugins/network-elements/nuage-vsp/src/main/java/com/cloud/network/vsp/resource/wrapper/NuageVspExtraDhcpOptionsCommandWrapper.java diff --git a/plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/api/command/LinkAccountToLdapCmd.java b/plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/command/LinkAccountToLdapCmd.java similarity index 100% rename from plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/api/command/LinkAccountToLdapCmd.java rename to plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/command/LinkAccountToLdapCmd.java diff --git a/plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/api/response/LinkAccountToLdapResponse.java b/plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/response/LinkAccountToLdapResponse.java similarity index 100% rename from plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/api/response/LinkAccountToLdapResponse.java rename to plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/api/response/LinkAccountToLdapResponse.java diff --git a/server/src/main/java/com/cloud/cloud/network/NetworkMigrationManager.java b/server/src/main/java/com/cloud/network/NetworkMigrationManager.java similarity index 100% rename from server/src/main/java/com/cloud/cloud/network/NetworkMigrationManager.java rename to server/src/main/java/com/cloud/network/NetworkMigrationManager.java diff --git a/server/src/main/java/com/cloud/cloud/network/NetworkMigrationManagerImpl.java b/server/src/main/java/com/cloud/network/NetworkMigrationManagerImpl.java similarity index 100% rename from server/src/main/java/com/cloud/cloud/network/NetworkMigrationManagerImpl.java rename to server/src/main/java/com/cloud/network/NetworkMigrationManagerImpl.java diff --git a/server/src/main/java/org/apache/cloudstack/cloudstack/direct/download/DirectDownloadManagerImpl.java b/server/src/main/java/org/apache/cloudstack/direct/download/DirectDownloadManagerImpl.java old mode 100755 new mode 100644 similarity index 100% rename from server/src/main/java/org/apache/cloudstack/cloudstack/direct/download/DirectDownloadManagerImpl.java rename to server/src/main/java/org/apache/cloudstack/direct/download/DirectDownloadManagerImpl.java diff --git a/server/src/test/java/org/apache/cloudstack/cloudstack/direct/download/DirectDownloadManagerImplTest.java b/server/src/test/java/org/apache/cloudstack/direct/download/DirectDownloadManagerImplTest.java similarity index 100% rename from server/src/test/java/org/apache/cloudstack/cloudstack/direct/download/DirectDownloadManagerImplTest.java rename to server/src/test/java/org/apache/cloudstack/direct/download/DirectDownloadManagerImplTest.java diff --git a/usage/src/main/java/com/cloud/cloud/usage/parser/VMSanpshotOnPrimaryParser.java b/usage/src/main/java/com/cloud/usage/parser/VMSanpshotOnPrimaryParser.java similarity index 100% rename from usage/src/main/java/com/cloud/cloud/usage/parser/VMSanpshotOnPrimaryParser.java rename to usage/src/main/java/com/cloud/usage/parser/VMSanpshotOnPrimaryParser.java ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
