You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by da...@apache.org on 2026/09/02 08:09:12 UTC
(cloudstack) branch 4.22 updated (7d45dcb4301 -> f2dec381726)
This is an automated email from the ASF dual-hosted git repository.
DaanHoogland pushed a change to branch 4.22
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
from 7d45dcb4301 Migrations triggered by Maintenance (system) not reported on VM events list (#13931)
add 5b49d6aa3f7 Errorprone static analysis tool integration and fixes of reported issues (#12419)
add b09005faaa9 UI: make serviceofferingid optional when add network offering (#13502)
add 3dc23056b73 server: fix lastpinged of hosts (#13030)
new f2dec381726 Merge branch '4.20' into 4.22
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/linters/codespell.txt | 1 +
.../java/com/cloud/agent/mockvm/MockVmMgr.java | 2 +-
.../admin/backup/UpdateBackupOfferingCmd.java | 4 +-
.../com/cloud/network/IsolationMethodTest.java | 2 +-
.../facade/AbstractConfigItemFacade.java | 2 +-
.../com/cloud/network/HAProxyConfigurator.java | 2 +-
.../java/com/cloud/resource/RequestWrapper.java | 2 +-
.../directdownload/DirectDownloadCommand.java | 1 -
.../com/cloud/resource/ServerResourceBaseTest.java | 23 +++----
.../java/com/cloud/agent/manager/AgentAttache.java | 9 ++-
.../cloud/agent/manager/DirectAgentAttache.java | 5 ++
.../com/cloud/vm/VirtualMachineManagerImpl.java | 2 +-
.../engine/orchestration/NetworkOrchestrator.java | 2 +-
.../agent/manager/ConnectedAgentAttacheTest.java | 6 +-
.../com/cloud/offerings/NetworkOfferingVO.java | 2 +-
.../upgrade/SystemVmTemplateRegistration.java | 59 ++++++++--------
.../cloud/upgrade/dao/DatabaseAccessObject.java | 2 +-
.../com/cloud/upgrade/dao/Upgrade41500to41510.java | 79 ++++++++++------------
.../cloud/network/as/AutoScaleVmProfileVOTest.java | 22 ++++--
.../upgrade/SystemVmTemplateRegistrationTest.java | 1 +
.../vmsnapshot/ScaleIOVMSnapshotStrategy.java | 2 +-
.../storage/endpoint/DefaultEndPointSelector.java | 8 +--
.../java/com/cloud/utils/db/GenericDaoBase.java | 4 +-
.../framework/serializer/OnwireClassRegistry.java | 2 +-
.../factory/ModuleBasedContextFactoryTest.java | 3 +-
.../cloudstack/ca/provider/RootCAProvider.java | 2 +-
.../test/HypervDirectConnectResourceTest.java | 3 +
.../kvm/resource/LibvirtComputingResource.java | 6 +-
.../kvm/storage/KVMStorageProcessor.java | 4 +-
.../kvm/storage/MultipathSCSIAdapterBase.java | 12 ++--
.../kvm/resource/LibvirtComputingResourceTest.java | 3 +
.../kvm/storage/ScaleIOStoragePoolTest.java | 2 +
.../hypervisor/ovm3/objects/ConnectionTest.java | 2 +-
.../com/cloud/hypervisor/ovm3/objects/NtpTest.java | 2 +
.../vmware/VmwareDatacenterApiUnitTest.java | 15 ++--
.../java/com/cloud/hypervisor/XenServerGuru.java | 7 +-
.../xenserver/resource/CitrixResourceBaseTest.java | 3 +
.../guru/BrocadeVcsGuestNetworkGuruTest.java | 2 -
.../network/cisco/CiscoVnmcConnectionTest.java | 3 +-
.../network/resource/CiscoVnmcResourceTest.java | 3 +
.../guru/NiciraNvpGuestNetworkGuruTest.java | 6 --
.../com/cloud/network/nicira/NiciraNvpApiIT.java | 2 -
.../cloudstack/agent/api/NsxNetworkCommand.java | 2 +-
.../AddTungstenFabricPolicyRuleCmdTest.java | 2 +
.../CreateTungstenFabricFirewallRuleCmdTest.java | 2 +
.../CreateTungstenFabricProviderCmdTest.java | 2 +
.../command/DeleteTungstenFabricTagCmdTest.java | 2 +
.../command/RemoveTungstenFabricTagCmdTest.java | 2 +
.../driver/redfish/RedfishWrapper.java | 2 +-
.../datastore/util/NexentaStorAppliance.java | 13 +++-
.../driver/StorPoolPrimaryDataStoreDriver.java | 2 +-
.../storage/motion/StorPoolDataMotionStrategy.java | 2 +-
.../cloudstack/ldap/ADLdapUserManagerImpl.java | 1 +
.../cloudstack/ldap/OpenLdapUserManagerImpl.java | 4 ++
.../ldap/LdapDirectoryServerConnectionTest.java | 3 +
.../ldap/LdapUnboundidZapdotConnectionTest.java | 3 +
.../java/com/cloud/api/doc/ApiXmlDocWriter.java | 2 +-
.../src/main/java/com/cloud/api/doc/Argument.java | 12 ++--
.../com/cloud/api/query/dao/HostJoinDaoImpl.java | 9 ++-
.../cloud/api/query/dao/TemplateJoinDaoImpl.java | 4 +-
.../configuration/ConfigurationManagerImpl.java | 2 +-
.../com/cloud/ha/HighAvailabilityManagerImpl.java | 4 +-
.../com/cloud/network/IpAddressManagerImpl.java | 2 +-
.../com/cloud/storage/VolumeApiServiceImpl.java | 2 +-
.../main/java/com/cloud/vm/UserVmManagerImpl.java | 4 +-
.../cloudstack/network/RoutedIpv4ManagerImpl.java | 8 +--
.../gslb/GlobalLoadBalancingRulesServiceImpl.java | 11 ++-
.../com/cloud/api/query/QueryManagerImplTest.java | 1 +
.../deploy/DeploymentPlanningManagerImplTest.java | 57 ++++++----------
.../cloud/network/as/AutoScaleManagerImplTest.java | 5 +-
.../template/HypervisorTemplateAdapterTest.java | 2 +
.../cloud/template/TemplateManagerImplTest.java | 2 +
.../java/com/cloud/user/DomainManagerImplTest.java | 7 +-
.../java/com/cloud/vm/UserVmManagerImplTest.java | 1 +
.../test/java/com/cloud/vm/UserVmManagerTest.java | 3 +
.../cloud/vm/snapshot/VMSnapshotManagerTest.java | 7 +-
.../deployment/RouterDeploymentDefinitionTest.java | 2 +-
.../rdpclient/ntlmssp/ServerNtlmsspChallenge.java | 5 +-
.../src/main/java/streamer/ByteBuffer.java | 2 +-
.../src/test/java/streamer/ByteBufferTest.java | 1 +
ui/public/locales/en.json | 1 +
ui/src/config/section/infra/hosts.js | 2 +-
ui/src/views/offering/AddNetworkOffering.vue | 1 -
.../hypervisor/vmware/mo/HypervisorHostHelper.java | 8 +--
84 files changed, 297 insertions(+), 236 deletions(-)
(cloudstack) 01/01: Merge branch '4.20' into 4.22
Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
DaanHoogland pushed a commit to branch 4.22
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
commit f2dec38172608f8efdc6d4cb22ed00693bd9b245
Merge: 7d45dcb4301 3dc23056b73
Author: Daan Hoogland <da...@apache.org>
AuthorDate: Wed Sep 2 10:08:42 2026 +0200
Merge branch '4.20' into 4.22
.github/linters/codespell.txt | 1 +
.../java/com/cloud/agent/mockvm/MockVmMgr.java | 2 +-
.../admin/backup/UpdateBackupOfferingCmd.java | 4 +-
.../com/cloud/network/IsolationMethodTest.java | 2 +-
.../facade/AbstractConfigItemFacade.java | 2 +-
.../com/cloud/network/HAProxyConfigurator.java | 2 +-
.../java/com/cloud/resource/RequestWrapper.java | 2 +-
.../directdownload/DirectDownloadCommand.java | 1 -
.../com/cloud/resource/ServerResourceBaseTest.java | 23 +++----
.../java/com/cloud/agent/manager/AgentAttache.java | 9 ++-
.../cloud/agent/manager/DirectAgentAttache.java | 5 ++
.../com/cloud/vm/VirtualMachineManagerImpl.java | 2 +-
.../engine/orchestration/NetworkOrchestrator.java | 2 +-
.../agent/manager/ConnectedAgentAttacheTest.java | 6 +-
.../com/cloud/offerings/NetworkOfferingVO.java | 2 +-
.../upgrade/SystemVmTemplateRegistration.java | 59 ++++++++--------
.../cloud/upgrade/dao/DatabaseAccessObject.java | 2 +-
.../com/cloud/upgrade/dao/Upgrade41500to41510.java | 79 ++++++++++------------
.../cloud/network/as/AutoScaleVmProfileVOTest.java | 22 ++++--
.../upgrade/SystemVmTemplateRegistrationTest.java | 1 +
.../vmsnapshot/ScaleIOVMSnapshotStrategy.java | 2 +-
.../storage/endpoint/DefaultEndPointSelector.java | 8 +--
.../java/com/cloud/utils/db/GenericDaoBase.java | 4 +-
.../framework/serializer/OnwireClassRegistry.java | 2 +-
.../factory/ModuleBasedContextFactoryTest.java | 3 +-
.../cloudstack/ca/provider/RootCAProvider.java | 2 +-
.../test/HypervDirectConnectResourceTest.java | 3 +
.../kvm/resource/LibvirtComputingResource.java | 6 +-
.../kvm/storage/KVMStorageProcessor.java | 4 +-
.../kvm/storage/MultipathSCSIAdapterBase.java | 12 ++--
.../kvm/resource/LibvirtComputingResourceTest.java | 3 +
.../kvm/storage/ScaleIOStoragePoolTest.java | 2 +
.../hypervisor/ovm3/objects/ConnectionTest.java | 2 +-
.../com/cloud/hypervisor/ovm3/objects/NtpTest.java | 2 +
.../vmware/VmwareDatacenterApiUnitTest.java | 15 ++--
.../java/com/cloud/hypervisor/XenServerGuru.java | 7 +-
.../xenserver/resource/CitrixResourceBaseTest.java | 3 +
.../guru/BrocadeVcsGuestNetworkGuruTest.java | 2 -
.../network/cisco/CiscoVnmcConnectionTest.java | 3 +-
.../network/resource/CiscoVnmcResourceTest.java | 3 +
.../guru/NiciraNvpGuestNetworkGuruTest.java | 6 --
.../com/cloud/network/nicira/NiciraNvpApiIT.java | 2 -
.../cloudstack/agent/api/NsxNetworkCommand.java | 2 +-
.../AddTungstenFabricPolicyRuleCmdTest.java | 2 +
.../CreateTungstenFabricFirewallRuleCmdTest.java | 2 +
.../CreateTungstenFabricProviderCmdTest.java | 2 +
.../command/DeleteTungstenFabricTagCmdTest.java | 2 +
.../command/RemoveTungstenFabricTagCmdTest.java | 2 +
.../driver/redfish/RedfishWrapper.java | 2 +-
.../datastore/util/NexentaStorAppliance.java | 13 +++-
.../driver/StorPoolPrimaryDataStoreDriver.java | 2 +-
.../storage/motion/StorPoolDataMotionStrategy.java | 2 +-
.../cloudstack/ldap/ADLdapUserManagerImpl.java | 1 +
.../cloudstack/ldap/OpenLdapUserManagerImpl.java | 4 ++
.../ldap/LdapDirectoryServerConnectionTest.java | 3 +
.../ldap/LdapUnboundidZapdotConnectionTest.java | 3 +
.../java/com/cloud/api/doc/ApiXmlDocWriter.java | 2 +-
.../src/main/java/com/cloud/api/doc/Argument.java | 12 ++--
.../com/cloud/api/query/dao/HostJoinDaoImpl.java | 9 ++-
.../cloud/api/query/dao/TemplateJoinDaoImpl.java | 4 +-
.../configuration/ConfigurationManagerImpl.java | 2 +-
.../com/cloud/ha/HighAvailabilityManagerImpl.java | 4 +-
.../com/cloud/network/IpAddressManagerImpl.java | 2 +-
.../com/cloud/storage/VolumeApiServiceImpl.java | 2 +-
.../main/java/com/cloud/vm/UserVmManagerImpl.java | 4 +-
.../cloudstack/network/RoutedIpv4ManagerImpl.java | 8 +--
.../gslb/GlobalLoadBalancingRulesServiceImpl.java | 11 ++-
.../com/cloud/api/query/QueryManagerImplTest.java | 1 +
.../deploy/DeploymentPlanningManagerImplTest.java | 57 ++++++----------
.../cloud/network/as/AutoScaleManagerImplTest.java | 5 +-
.../template/HypervisorTemplateAdapterTest.java | 2 +
.../cloud/template/TemplateManagerImplTest.java | 2 +
.../java/com/cloud/user/DomainManagerImplTest.java | 7 +-
.../java/com/cloud/vm/UserVmManagerImplTest.java | 1 +
.../test/java/com/cloud/vm/UserVmManagerTest.java | 3 +
.../cloud/vm/snapshot/VMSnapshotManagerTest.java | 7 +-
.../deployment/RouterDeploymentDefinitionTest.java | 2 +-
.../rdpclient/ntlmssp/ServerNtlmsspChallenge.java | 5 +-
.../src/main/java/streamer/ByteBuffer.java | 2 +-
.../src/test/java/streamer/ByteBufferTest.java | 1 +
ui/public/locales/en.json | 1 +
ui/src/config/section/infra/hosts.js | 2 +-
ui/src/views/offering/AddNetworkOffering.vue | 1 -
.../hypervisor/vmware/mo/HypervisorHostHelper.java | 8 +--
84 files changed, 297 insertions(+), 236 deletions(-)
diff --cc .github/linters/codespell.txt
index 27761c70f44,8b05c4ef621..e954402a57c
--- a/.github/linters/codespell.txt
+++ b/.github/linters/codespell.txt
@@@ -187,8 -188,11 +187,9 @@@ environmne
equivalant
erro
erronous
+ errorprone
everthing
everytime
-excetion
-excption
excute
execept
execption
diff --cc engine/orchestration/src/test/java/com/cloud/agent/manager/ConnectedAgentAttacheTest.java
index 66e6bbae5e2,69f77ecc672..72b217d0fdd
--- a/engine/orchestration/src/test/java/com/cloud/agent/manager/ConnectedAgentAttacheTest.java
+++ b/engine/orchestration/src/test/java/com/cloud/agent/manager/ConnectedAgentAttacheTest.java
@@@ -65,8 -64,8 +65,8 @@@ public class ConnectedAgentAttacheTest
Link link1 = mock(Link.class);
- ConnectedAgentAttache agentAttache1 = new ConnectedAgentAttache(null, 1, "uuid", null, Hypervisor.HypervisorType.KVM, link1, false);
- ConnectedAgentAttache agentAttache2 = new ConnectedAgentAttache(null, 2, "uuid", null, Hypervisor.HypervisorType.KVM, link1, false);
- ConnectedAgentAttache agentAttache1 = new ConnectedAgentAttache(null, 1, "uuid1", null, link1, false);
- ConnectedAgentAttache agentAttache2 = new ConnectedAgentAttache(null, 2, "uuid2", null, link1, false);
++ ConnectedAgentAttache agentAttache1 = new ConnectedAgentAttache(null, 1, "uuid1", null, Hypervisor.HypervisorType.KVM, link1, false);
++ ConnectedAgentAttache agentAttache2 = new ConnectedAgentAttache(null, 2, "uuid2", null, Hypervisor.HypervisorType.KVM, link1, false);
assertFalse(agentAttache1.equals(agentAttache2));
}
diff --cc plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java
index aaebd8c7aeb,4683a76fac9..c59ebe0f419
--- a/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java
+++ b/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java
@@@ -5639,9 -5605,10 +5640,10 @@@ public class LibvirtComputingResourceTe
extraConfig.put("extraconfig-2", "value2");
extraConfig.put("extraconfig-3", "value3");
libvirtComputingResourceMock.addExtraConfigComponent(extraConfig, vmDef);
- Mockito.verify(vmDef, times(1)).addComp(Mockito.any());
+ Mockito.verify(vmDef, times(1)).addComp(any());
}
+ @Ignore
public void validateGetCurrentMemAccordingToMemBallooningWithoutMemBalooning(){
VirtualMachineTO vmTo = Mockito.mock(VirtualMachineTO.class);
Mockito.when(vmTo.getType()).thenReturn(Type.User);
diff --cc plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/ldap/OpenLdapUserManagerImpl.java
index 80d394d7478,98d3be2f10c..837429c9e32
--- a/plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/ldap/OpenLdapUserManagerImpl.java
+++ b/plugins/user-authenticators/ldap/src/main/java/org/apache/cloudstack/ldap/OpenLdapUserManagerImpl.java
@@@ -277,7 -287,8 +279,8 @@@ public class OpenLdapUserManagerImpl im
return false;
}
+ @SuppressWarnings("BanJNDI")
- public LdapUser searchUser(final String basedn, final String searchString, final LdapContext context, Long domainId) throws NamingException, IOException {
+ public LdapUser searchUser(final String basedn, final String searchString, final LdapContext context, Long domainId) throws NamingException {
final SearchControls searchControls = new SearchControls();
searchControls.setSearchScope(_ldapConfiguration.getScope());
diff --cc server/src/main/java/com/cloud/api/query/dao/HostJoinDaoImpl.java
index 7e149020cb0,4f6afa7fb15..e8190a1a77e
--- a/server/src/main/java/com/cloud/api/query/dao/HostJoinDaoImpl.java
+++ b/server/src/main/java/com/cloud/api/query/dao/HostJoinDaoImpl.java
@@@ -131,16 -126,14 +131,23 @@@ public class HostJoinDaoImpl extends Ge
hostResponse.setHypervisor(hypervisorType);
}
hostResponse.setHostType(host.getType());
+ if (!details.contains(HostDetails.core) && (host.getType().equals(Host.Type.ConsoleProxy) || host.getType().equals(Host.Type.SecondaryStorageVM))) {
+ VMInstanceVO vm = virtualMachineDao.findVMByInstanceNameIncludingRemoved(host.getName());
+ if (vm != null) {
+ hostResponse.setVirtualMachineId(vm.getUuid());
+ }
+ }
- hostResponse.setLastPinged(new Date(host.getLastPinged()));
+ hostResponse.setLastPinged(new Date(host.getLastPinged() << 10));
+ Long mshostId = host.getManagementServerId();
+ if (mshostId != null) {
+ ManagementServerHostVO managementServer = managementServerHostDao.findByMsid(host.getManagementServerId());
+ if (managementServer != null) {
+ hostResponse.setManagementServerId(managementServer.getUuid());
+ }
+ }
+
+ setManagementServerResponse(hostResponse, host, details);
+
hostResponse.setName(host.getName());
hostResponse.setPodId(host.getPodUuid());
hostResponse.setRemoved(host.getRemoved());
diff --cc server/src/main/java/com/cloud/api/query/dao/TemplateJoinDaoImpl.java
index 8a933d7d91f,41d516f6dd3..bd73fee5c59
--- a/server/src/main/java/com/cloud/api/query/dao/TemplateJoinDaoImpl.java
+++ b/server/src/main/java/com/cloud/api/query/dao/TemplateJoinDaoImpl.java
@@@ -28,6 -28,18 +28,8 @@@ import java.util.stream.Collectors
import javax.inject.Inject;
-import com.cloud.deployasis.DeployAsIsConstants;
-import com.cloud.deployasis.TemplateDeployAsIsDetailVO;
-import com.cloud.deployasis.dao.TemplateDeployAsIsDetailsDao;
-import com.cloud.storage.DataStoreRole;
-import com.cloud.storage.VMTemplateStoragePoolVO;
-import com.cloud.storage.dao.VMTemplatePoolDao;
-import com.cloud.storage.VnfTemplateDetailVO;
-import com.cloud.storage.VnfTemplateNicVO;
-import com.cloud.storage.dao.VnfTemplateDetailsDao;
-import com.cloud.storage.dao.VnfTemplateNicDao;
-import com.cloud.user.dao.UserDataDao;
+ import com.google.common.primitives.Ints;
++
import org.apache.cloudstack.annotation.AnnotationService;
import org.apache.cloudstack.annotation.dao.AnnotationDao;
import org.apache.cloudstack.api.ApiConstants;
diff --cc server/src/main/java/com/cloud/ha/HighAvailabilityManagerImpl.java
index 66ab4b9ffee,52320f3589b..07d51c5deb3
--- a/server/src/main/java/com/cloud/ha/HighAvailabilityManagerImpl.java
+++ b/server/src/main/java/com/cloud/ha/HighAvailabilityManagerImpl.java
@@@ -1174,10 -1038,7 +1174,8 @@@ public class HighAvailabilityManagerImp
final VMInstanceVO vm = _instanceDao.findById(work.getInstanceId());
try {
if (vm != null && !VmHaEnabled.valueIn(vm.getDataCenterId())) {
- if (logger.isDebugEnabled()) {
- logger.debug("VM high availability manager is disabled, rescheduling the HA work {} for the VM {} ({}) " +
- logger.debug("VM high availability manager is disabled, rescheduling the HA work {}, for the VM {} (id: {}) to retry later in case VM high availability manager is enabled on retry attempt", work, vm.getName(), vm.getId());
++ logger.debug("VM high availability manager is disabled, rescheduling the HA work {}, for the VM {} (id: {})" +
+ "to retry later in case VM high availability manager is enabled on retry attempt", work, vm.getName(), vm.getId());
- }
long nextTime = getRescheduleTime(wt);
rescheduleWork(work, nextTime);
return;
diff --cc ui/src/config/section/infra/hosts.js
index 2f27db5780b,2a147656120..d7dd6f99b09
--- a/ui/src/config/section/infra/hosts.js
+++ b/ui/src/config/section/infra/hosts.js
@@@ -42,10 -42,9 +42,10 @@@ export default
}
fields.push('clustername')
fields.push('zonename')
+ fields.push('managementservername')
return fields
},
- details: ['name', 'id', 'resourcestate', 'ipaddress', 'hypervisor', 'externalprovisioner', 'arch', 'type', 'clustername', 'podname', 'zonename', 'storageaccessgroups', 'clusterstorageaccessgroups', 'podstorageaccessgroups', 'zonestorageaccessgroups', 'managementservername', 'disconnected', 'created', 'externaldetails'],
- details: ['name', 'id', 'resourcestate', 'ipaddress', 'hypervisor', 'arch', 'type', 'clustername', 'podname', 'zonename', 'lastpinged', 'disconnected', 'created'],
++ details: ['name', 'id', 'resourcestate', 'ipaddress', 'hypervisor', 'externalprovisioner', 'arch', 'type', 'clustername', 'podname', 'zonename', 'lastpinged', 'storageaccessgroups', 'clusterstorageaccessgroups', 'podstorageaccessgroups', 'zonestorageaccessgroups', 'managementservername', 'disconnected', 'created', 'externaldetails'],
tabs: [{
name: 'details',
component: shallowRef(defineAsyncComponent(() => import('@/components/view/DetailsTab.vue')))