Merge remote-tracking branch 'origin/4.17'

This commit is contained in:
Rohit Yadav 2022-06-16 15:17:02 +05:30
commit 691fd469ea
7 changed files with 85 additions and 20 deletions

View File

@ -210,6 +210,14 @@ public class NicResponse extends BaseResponse {
this.extraDhcpOptions = extraDhcpOptions;
}
@SerializedName(ApiConstants.VPC_ID)
@Param(description = "Id of the vpc to which the nic belongs")
private String vpcId;
@SerializedName(ApiConstants.VPC_NAME)
@Param(description = "name of the vpc to which the nic belongs")
private String vpcName;
@Override
public int hashCode() {
final int prime = 31;
@ -364,4 +372,20 @@ public class NicResponse extends BaseResponse {
public void setIpAddresses(List<String> ipAddresses) {
this.ipAddresses = ipAddresses;
}
public String getVpcId() {
return vpcId;
}
public void setVpcId(String vpcId) {
this.vpcId = vpcId;
}
public String getVpcName() {
return vpcName;
}
public void setVpcName(String vpcName) {
this.vpcName = vpcName;
}
}

View File

@ -37,6 +37,8 @@ import java.util.stream.Collectors;
import javax.inject.Inject;
import com.cloud.api.query.dao.UserVmJoinDao;
import com.cloud.network.vpc.VpcVO;
import org.apache.cloudstack.acl.ControlledEntity;
import org.apache.cloudstack.acl.ControlledEntity.ACLType;
import org.apache.cloudstack.affinity.AffinityGroup;
@ -442,6 +444,8 @@ public class ApiResponseHelper implements ResponseGenerator {
NetworkOfferingDao networkOfferingDao;
@Inject
Ipv6Service ipv6Service;
@Inject
UserVmJoinDao userVmJoinDao;
@Override
public UserResponse createUserResponse(User user) {
@ -4318,6 +4322,13 @@ public class ApiResponseHelper implements ResponseGenerator {
response.setNsxLogicalSwitchPort(((NicVO)result).getNsxLogicalSwitchPortUuid());
}
}
UserVmJoinVO userVm = userVmJoinDao.findById(vm.getId());
if (userVm != null && userVm.getVpcUuid() != null) {
response.setVpcId(userVm.getVpcUuid());
VpcVO vpc = _entityMgr.findByUuidIncludingRemoved(VpcVO.class, userVm.getVpcUuid());
response.setVpcName(vpc.getName());
}
return response;
}

View File

@ -28,6 +28,8 @@ import java.util.stream.Collectors;
import javax.inject.Inject;
import com.cloud.network.vpc.VpcVO;
import com.cloud.network.vpc.dao.VpcDao;
import com.cloud.storage.DiskOfferingVO;
import org.apache.cloudstack.affinity.AffinityGroupResponse;
import org.apache.cloudstack.annotation.AnnotationService;
@ -88,6 +90,8 @@ public class UserVmJoinDaoImpl extends GenericDaoBaseWithTagInformation<UserVmJo
@Inject
private AnnotationDao annotationDao;
@Inject
private VpcDao vpcDao;
@Inject
UserStatisticsDao userStatsDao;
private final SearchBuilder<UserVmJoinVO> VmDetailSearch;
@ -291,6 +295,12 @@ public class UserVmJoinDaoImpl extends GenericDaoBaseWithTagInformation<UserVmJo
if (userVm.getGuestType() != null) {
nicResponse.setType(userVm.getGuestType().toString());
}
if (userVm.getVpcUuid() != null) {
nicResponse.setVpcId(userVm.getVpcUuid());
VpcVO vpc = vpcDao.findByUuidIncludingRemoved(userVm.getVpcUuid());
nicResponse.setVpcName(vpc.getName());
}
nicResponse.setIsDefault(userVm.isDefaultNic());
nicResponse.setDeviceId(String.valueOf(userVm.getNicDeviceId()));
List<NicSecondaryIpVO> secondaryIps = ApiDBUtils.findNicSecondaryIps(userVm.getNicId());

View File

@ -19,7 +19,7 @@ from nose.plugins.attrib import attr
from component.test_vpc_vm_life_cycle import Services
class TestVMLifeCycleSharedNwVPC(cloudstackTestCase):
class TestVMLifeCycleSharedNwVPC(cloudstackTesTODOtCase):
@classmethod
def setUpClass(cls):

View File

@ -17,19 +17,22 @@
""" BVT tests for Hosts Maintenance
"""
# Import Local Modules
from marvin.codes import FAILED
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
from marvin.lib.utils import *
from marvin.lib.base import *
from marvin.lib.common import *
from nose.plugins.attrib import attr
from time import sleep
_multiprocess_shared_ = False
class TestHostHA(cloudstackTestCase):
hostCountMsg = "Host HA can be tested with at least two hosts, only %s found"
def setUp(self):
self.logger = logging.getLogger('TestHM')
self.stream_handler = logging.StreamHandler()
@ -83,8 +86,17 @@ class TestHostHA(cloudstackTestCase):
"timeout": 10,
}
def tearDown(self):
super(TestHostHA, self).tearDown()
try:
# Clean up, terminate the created templates
cleanup_resources(self.apiclient, self.cleanup)
except Exception as e:
raise Exception("Warning: Exception during cleanup : %s" % e)
return
def createVMs(self, hostId, number, local):
@ -307,9 +319,11 @@ class TestHostHA(cloudstackTestCase):
for host in listHost:
self.logger.debug('Hypervisor = {}'.format(host.id))
if len(listHost) < 2:
self.logger.debug(self.hostCountMsg % len(listHost))
raise unittest.SkipTest(self.hostCountMsg % len(listHost))
if len(listHost) != 2:
self.logger.debug("Host HA can be tested with two host only %s, found" % len(listHost))
raise unittest.SkipTest("Host HA can be tested with two host only %s, found" % len(listHost))
no_of_vms = self.noOfVMsOnHost(listHost[0].id)
@ -317,6 +331,7 @@ class TestHostHA(cloudstackTestCase):
self.logger.debug("Number of VMS on hosts = %s" % no_of_vms)
if no_of_vms < 5:
self.logger.debug("test_01: Create VMs as there are not enough vms to check host ha")
no_vm_req = 5 - no_of_vms
@ -381,9 +396,10 @@ class TestHostHA(cloudstackTestCase):
for host in listHost:
self.logger.debug('Hypervisor = {}'.format(host.id))
if len(listHost) < 2:
self.logger.debug(self.hostCountMsg % len(listHost))
raise unittest.SkipTest(self.hostCountMsg % len(listHost))
if len(listHost) != 2:
self.logger.debug("Host HA can be tested with two host only %s, found" % len(listHost))
raise unittest.SkipTest("Host HA can be tested with two host only %s, found" % len(listHost))
no_of_vms = self.noOfVMsOnHost(listHost[0].id)
@ -457,9 +473,10 @@ class TestHostHA(cloudstackTestCase):
for host in listHost:
self.logger.debug('Hypervisor = {}'.format(host.id))
if len(listHost) < 2:
self.logger.debug(self.hostCountMsg % len(listHost))
raise unittest.SkipTest(self.hostCountMsg % len(listHost))
if len(listHost) != 2:
self.logger.debug("Host HA can be tested with two host only %s, found" % len(listHost))
raise unittest.SkipTest("Host HA can be tested with two host only %s, found" % len(listHost))
no_of_vms = self.noOfVMsOnHost(listHost[0].id)
@ -531,9 +548,10 @@ class TestHostHA(cloudstackTestCase):
for host in listHost:
self.logger.debug('Hypervisor = {}'.format(host.id))
if len(listHost) < 2:
self.logger.debug(self.hostCountMsg % len(listHost))
raise unittest.SkipTest(self.hostCountMsg % len(listHost))
if len(listHost) != 2:
self.logger.debug("Host HA can be tested with two host only %s, found" % len(listHost))
raise unittest.SkipTest("Host HA can be tested with two host only %s, found" % len(listHost))
no_of_vms = self.noOfVMsOnHost(listHost[0].id)
@ -541,6 +559,7 @@ class TestHostHA(cloudstackTestCase):
self.logger.debug("Number of VMS on hosts = %s" % no_of_vms)
if no_of_vms < 5:
self.logger.debug("test_01: Create VMs as there are not enough vms to check host ha")
no_vm_req = 5 - no_of_vms

View File

@ -773,7 +773,7 @@ class TestResizeVolume(cloudstackTestCase):
return
@attr(tags=["advanced"], required_hardware="true")
def test_05_vmdeployment_with_size(self):
def test_5_vmdeployment_with_size(self):
"""Test vm deployment with new rootdisk size parameter
# Validate the following
@ -855,7 +855,7 @@ class TestResizeVolume(cloudstackTestCase):
@attr(tags=["advanced"], required_hardware="true")
def test_06_resized_rootvolume_with_lessvalue(self):
def test_6_resized_rootvolume_with_lessvalue(self):
"""Test resize root volume with less than original volume size
# Validate the following
@ -939,7 +939,7 @@ class TestResizeVolume(cloudstackTestCase):
# @attr(tags=["advanced"], required_hrdware="true")
@attr(tags=["TODO"], required_hrdware="true")
def test_07_usage_events_after_rootvolume_resized_(self):
def test_7_usage_events_after_rootvolume_resized_(self):
"""Test check usage events after root volume resize
# Validate the following

View File

@ -58,7 +58,8 @@ const user = {
darkMode: false,
defaultListViewPageSize: 20,
countNotify: 0,
logoutFlag: false
logoutFlag: false,
customColumns: {}
},
mutations: {