This is an automated email from the ASF dual-hosted git repository. sureshanaparti pushed a change to branch dummy in repository https://gitbox.apache.org/repos/asf/cloudstack.git
omit 24d56589c97 donot merge add 3a5c4a0cba5 fix build error with LinstorVMSnapshotStrategy add aab13619491 server: fix mgmt server 503 error by renaming kubernetesClusterHelper to kubernetesServiceHelper add a9caee3c6f8 add readratemax and writeratemax (#9227) add ed86dc973b1 protect against missing service offering (#9235) add 00fe25ab01c Fix allocation of VMs with multiple clusters (#8611) add 96288ecf1fa fix: domain limits tab ui is now able to present 0 to the user (#9166) add bb0c1f93afe Add volume encryption checks during the disk offering change (#9209) add 7e71e505788 [Quota] Improve Quota balance calculation flow (#8581) add f360f7048da vmware: do not tear down vm disks if deploy-as-is vm has vm snapshots (#9243) add 591cc4f0027 Add action button to enable/disable Oauth provider (#9242) add a10eee25b34 Add method for decrypting values accordingly (#9088) add 75341963614 UI: Fix Userdata registration from UI (#8791) add 6c7426e3a7e Prevent network disruption on adding a VPC tier for redundant VRs (#9251) add 4e7c6682fd4 While starting VM with considerlasthost enabled, don't load host tags/details for the last host when it doesn't exist (#9037) add 56b69b157ea prevent duplicate ip table rules in SSVM (#8530) add 7c5b7ca0777 Extra parameter for UpdateImageStore (#8941) add 050ee44137a Merge branch '4.18' into 4.19 add 373f0170020 Merge branch '4.19' add 3e6900ac1a5 api,server: purge expunged resources (#8999) add 8b02624e610 User data content size validation, and related code improvements (#8418) add 227c15624d9 vxlan: do not create duplicated network for private gateway (#9232) add 7a0cd55e989 ui: fix user create featured template from volume (#9253) add 2315a73a209 User friendly name of Downloaded Templates Volumes and ISOs (#9252) add 81269ad62af VNF: add API listVnfAppliances (#8994) add cc52b38e54d Update extraconfig for platform param in xen/xcpng (#9248) add 3997e596786 Merge release branch 4.18 to 4.19 add 84b91cc9a3d assertion improvement on cluster DRS (#8508) add d81ffd2d864 Merge remote-tracking branch 'apache/4.19' add fbeee491377 fix build errors after forward-merge add 7dce3d87d48 [linstor] Fix revertSnapshot (#9271) add 8806e44e4fb Merge release branch 4.19 to main add 8fc887ef75f donot merge This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (24d56589c97) \ N -- N -- N refs/heads/dummy (8fc887ef75f) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. No new revisions were added by this update. Summary of changes: .github/workflows/ci.yml | 3 +- PULL_REQUEST_TEMPLATE.md | 1 + api/src/main/java/com/cloud/event/EventTypes.java | 2 + .../network/VpcVirtualNetworkApplianceService.java | 22 +- .../element/LoadBalancingServiceProvider.java | 3 + .../java/com/cloud/offering/ServiceOffering.java | 3 + .../java/com/cloud/storage/StorageService.java | 3 + .../org/apache/cloudstack/api/ApiConstants.java | 2 + .../admin/offering/CreateServiceOfferingCmd.java | 12 +- .../admin/offering/UpdateServiceOfferingCmd.java | 9 + .../admin/resource/PurgeExpungedResourcesCmd.java | 131 ++++ .../command/admin/storage/UpdateImageStoreCmd.java | 21 +- .../admin/vm/ListVnfAppliancesCmdByAdmin.java | 36 + .../autoscale/CreateAutoScaleVmProfileCmd.java | 2 +- .../autoscale/UpdateAutoScaleVmProfileCmd.java | 2 +- .../command/user/userdata/RegisterUserDataCmd.java | 9 +- .../api/command/user/vm/DeployVMCmd.java | 6 +- .../api/command/user/vm/ListVnfAppliancesCmd.java | 39 + .../api/command/user/vm/ResetVMUserDataCmd.java | 2 +- .../api/command/user/vm/UpdateVMCmd.java | 2 +- .../api/response/AutoScaleVmProfileResponse.java | 2 +- .../api/response/ImageStoreResponse.java | 14 +- .../response/PurgeExpungedResourcesResponse.java | 29 +- .../api/response/ServiceOfferingResponse.java | 8 + .../api/response/VMUserDataResponse.java | 2 +- .../resource/ResourceCleanupService.java | 74 ++ .../cloudstack/userdata/UserDataManager.java | 5 + .../offering/CreateServiceOfferingCmdTest.java | 18 + ...Test.java => UpdateServiceOfferingCmdTest.java} | 23 +- .../resource/PurgeExpungedResourcesCmdTest.java | 104 +++ .../storage/CreateEntityDownloadURLCommand.java | 27 +- .../agent/resource/virtualnetwork/VRScripts.java | 1 + .../virtualnetwork/VirtualRoutingResource.java | 19 + .../agent/routing/ManageServiceCommand.java | 31 +- .../service/NetworkOrchestrationService.java | 2 + .../engine/subsystem/api/storage/DataObject.java | 2 + .../subsystem/api/storage/VolumeService.java | 2 + .../cloud/configuration/ConfigurationManager.java | 3 - .../java/com/cloud/ha/HighAvailabilityManager.java | 1 + .../java/com/cloud/storage/StorageManager.java | 2 + .../com/cloud/vm/VirtualMachineManagerImpl.java | 4 + .../engine/orchestration/NetworkOrchestrator.java | 13 + .../com/cloud/domain/dao/DomainDetailsDao.java | 2 + .../com/cloud/domain/dao/DomainDetailsDaoImpl.java | 15 +- .../network/as/dao/AutoScaleVmGroupVmMapDao.java | 2 + .../as/dao/AutoScaleVmGroupVmMapDaoImpl.java | 18 +- .../java/com/cloud/network/dao/IPAddressDao.java | 2 + .../com/cloud/network/dao/IPAddressDaoImpl.java | 13 + .../network/dao/InlineLoadBalancerNicMapDao.java | 4 + .../dao/InlineLoadBalancerNicMapDaoImpl.java | 15 + .../cloud/network/dao/LoadBalancerVMMapDao.java | 1 + .../network/dao/LoadBalancerVMMapDaoImpl.java | 15 +- .../network/dao/OpRouterMonitorServiceDao.java | 4 + .../network/dao/OpRouterMonitorServiceDaoImpl.java | 19 +- .../network/rules/dao/PortForwardingRulesDao.java | 1 + .../rules/dao/PortForwardingRulesDaoImpl.java | 13 + .../com/cloud/secstorage/CommandExecLogDao.java | 2 + .../cloud/secstorage/CommandExecLogDaoImpl.java | 13 + .../com/cloud/service/dao/ServiceOfferingDao.java | 4 +- .../cloud/service/dao/ServiceOfferingDaoImpl.java | 4 +- .../java/com/cloud/storage/dao/SnapshotDao.java | 1 + .../com/cloud/storage/dao/SnapshotDaoImpl.java | 14 + .../main/java/com/cloud/storage/dao/VolumeDao.java | 1 + .../java/com/cloud/storage/dao/VolumeDaoImpl.java | 21 +- .../java/com/cloud/user/AccountDetailsDao.java | 2 + .../java/com/cloud/user/AccountDetailsDaoImpl.java | 15 +- .../src/main/java/com/cloud/vm/ItWorkDao.java | 1 + .../src/main/java/com/cloud/vm/ItWorkDaoImpl.java | 14 +- .../java/com/cloud/vm/dao/ConsoleSessionDao.java | 3 + .../com/cloud/vm/dao/ConsoleSessionDaoImpl.java | 15 +- .../src/main/java/com/cloud/vm/dao/NicDao.java | 1 + .../src/main/java/com/cloud/vm/dao/NicDaoImpl.java | 16 + .../com/cloud/vm/dao/NicExtraDhcpOptionDao.java | 1 + .../cloud/vm/dao/NicExtraDhcpOptionDaoImpl.java | 17 +- .../java/com/cloud/vm/dao/NicSecondaryIpDao.java | 1 + .../com/cloud/vm/dao/NicSecondaryIpDaoImpl.java | 13 + .../main/java/com/cloud/vm/dao/VMInstanceDao.java | 3 + .../java/com/cloud/vm/dao/VMInstanceDaoImpl.java | 24 + .../com/cloud/vm/snapshot/dao/VMSnapshotDao.java | 2 + .../cloud/vm/snapshot/dao/VMSnapshotDaoImpl.java | 29 +- .../resourcedetail/ResourceDetailsDao.java | 2 + .../resourcedetail/ResourceDetailsDaoBase.java | 16 +- .../storage/datastore/db/SnapshotDataStoreDao.java | 2 + .../datastore/db/SnapshotDataStoreDaoImpl.java | 12 + .../storage/datastore/db/VolumeDataStoreDao.java | 2 + .../as/dao/AutoScaleVmGroupVmMapDaoImplTest.java | 45 +- .../cloud/network/dao/IPAddressDaoImplTest.java | 67 ++ .../dao/InlineLoadBalancerNicMapDaoImplTest.java | 67 ++ .../network/dao/LoadBalancerVMMapDaoImplTest.java | 67 ++ .../dao/OpRouterMonitorServiceDaoImplTest.java | 67 ++ .../rules/dao/PortForwardingRulesDaoImplTest.java | 68 ++ .../secstorage/CommandExecLogDaoImplTest.java | 67 ++ .../com/cloud/storage/dao/VolumeDaoImplTest.java | 40 + .../test/java/com/cloud/vm/ItWorkDaoImplTest.java | 67 ++ .../cloud/vm/dao/ConsoleSessionDaoImplTest.java | 68 ++ .../test/java/com/cloud/vm/dao/NicDaoImplTest.java | 69 ++ .../vm/dao/NicExtraDhcpOptionDaoImplTest.java | 68 ++ .../cloud/vm/dao/NicSecondaryIpDaoImplTest.java | 67 ++ .../com/cloud/vm/dao/VMInstanceDaoImplTest.java | 31 + .../vm/snapshot/dao/VMSnapshotDaoImplTest.java | 69 ++ .../datastore/db/SnapshotDataStoreDaoImplTest.java | 67 ++ .../storage/image/db/VolumeDataStoreDaoImpl.java | 12 + .../image/db/VolumeDataStoreDaoImplTest.java | 68 ++ .../storage/volume/VolumeServiceImpl.java | 80 +- .../storage/volume/VolumeServiceTest.java | 72 +- .../cloudstack/userdata/UserDataManagerImpl.java | 81 +- .../main/java/com/cloud/utils/db/GenericDao.java | 18 + .../java/com/cloud/utils/db/GenericDaoBase.java | 53 +- .../framework/jobs/dao/VmWorkJobDao.java | 1 + .../framework/jobs/dao/VmWorkJobDaoImpl.java | 14 +- .../framework/jobs/dao/VmWorkJobDaoImplTest.java | 68 ++ .../apache/cloudstack/quota/QuotaManagerImpl.java | 102 +-- .../manager/allocator/impl/RandomAllocator.java | 16 +- .../hypervisor/vmware/resource/VmwareResource.java | 4 +- .../xenserver/ExtraConfigurationUtility.java | 50 +- .../xenserver/ExtraConfigurationUtilityTest.java | 52 ++ .../element/ElasticLoadBalancerElement.java | 4 + .../network/lb/ElasticLoadBalancerManager.java | 2 + .../network/lb/ElasticLoadBalancerManagerImpl.java | 4 + .../cloud/network/lb/dao/ElasticLbVmMapDao.java | 2 + .../network/lb/dao/ElasticLbVmMapDaoImpl.java | 13 + .../cloud/network/guru/VxlanGuestNetworkGuru.java | 2 +- .../driver/CloudStackImageStoreDriverImpl.java | 44 +- .../driver/LinstorPrimaryDataStoreDriverImpl.java | 2 +- .../snapshot/LinstorVMSnapshotStrategy.java | 5 +- .../cloudstack/oauth2/OAuth2AuthManagerImpl.java | 12 +- .../manager/allocator/impl/FirstFitAllocator.java | 46 +- .../allocator/impl/RecreateHostAllocator.java | 3 +- server/src/main/java/com/cloud/api/ApiDBUtils.java | 4 +- .../java/com/cloud/api/query/QueryManagerImpl.java | 2 +- .../api/query/dao/ServiceOfferingJoinDaoImpl.java | 22 +- .../com/cloud/api/query/dao/VolumeJoinDaoImpl.java | 24 +- .../configuration/ConfigurationManagerImpl.java | 52 +- .../deploy/DeploymentPlanningManagerImpl.java | 61 +- .../java/com/cloud/deploy/FirstFitPlanner.java | 18 +- .../com/cloud/ha/HighAvailabilityManagerImpl.java | 5 + .../java/com/cloud/ha/dao/HighAvailabilityDao.java | 1 + .../com/cloud/ha/dao/HighAvailabilityDaoImpl.java | 14 +- .../com/cloud/network/as/AutoScaleManagerImpl.java | 7 +- .../network/element/VpcVirtualRouterElement.java | 91 ++- .../VpcVirtualNetworkApplianceManagerImpl.java | 50 ++ .../com/cloud/server/ManagementServerImpl.java | 103 ++- .../main/java/com/cloud/server/StatsCollector.java | 17 +- .../java/com/cloud/storage/StorageManagerImpl.java | 75 +- .../com/cloud/storage/VolumeApiServiceImpl.java | 4 +- .../cloud/storage/upload/UploadMonitorImpl.java | 4 +- .../src/main/java/com/cloud/vm/UserVmManager.java | 2 - .../main/java/com/cloud/vm/UserVmManagerImpl.java | 84 +-- .../diagnostics/to/DiagnosticsDataObject.java | 5 + .../resource/ResourceCleanupServiceImpl.java | 827 +++++++++++++++++++++ .../storage/template/VnfTemplateManagerImpl.java | 4 + .../core/spring-server-core-managers-context.xml | 4 +- .../cloud/ha/dao/HighAvailabilityDaoImplTest.java | 68 ++ .../cloud/network/as/AutoScaleManagerImplTest.java | 10 +- .../java/com/cloud/user/MockUsageEventDao.java | 15 + .../java/com/cloud/vm/UserVmManagerImplTest.java | 42 -- .../java/com/cloud/vpc/MockNetworkManagerImpl.java | 4 + .../vpc/MockVpcVirtualNetworkApplianceManager.java | 14 + .../resource/ResourceCleanupServiceImplTest.java | 656 ++++++++++++++++ .../SecondaryStorageManagerImpl.java | 4 +- .../storage/resource/IpTablesHelper.java | 67 ++ .../resource/NfsSecondaryStorageResource.java | 24 +- .../storage/template/DownloadManagerImpl.java | 40 +- .../storage/template/UploadManagerImpl.java | 5 +- systemvm/debian/opt/cloud/bin/cs/CsHelper.py | 2 +- systemvm/debian/opt/cloud/bin/manage_service.sh | 19 + .../plugins/quota/test_quota_balance.py | 191 +++++ test/integration/smoke/test_cluster_drs.py | 61 +- test/integration/smoke/test_purge_expunged_vms.py | 364 +++++++++ tools/apidoc/gen_toc.py | 3 +- ui/public/locales/en.json | 4 + ui/public/locales/pt_BR.json | 2 + ui/src/components/view/ResourceLimitTab.vue | 1 + ui/src/config/section/config.js | 20 +- ui/src/config/section/image.js | 2 +- ui/src/config/section/infra/secondaryStorages.js | 17 +- ui/src/config/section/network.js | 4 +- ui/src/config/section/offering.js | 6 +- ui/src/config/section/storage.js | 8 +- ui/src/utils/plugins.js | 12 +- ui/src/views/AutogenView.vue | 1 - ui/src/views/compute/RegisterUserData.vue | 9 +- ui/src/views/network/VnfAppliancesTab.vue | 2 +- ui/src/views/offering/AddComputeOffering.vue | 9 +- ui/src/views/offering/AddDiskOffering.vue | 24 + .../java/com/cloud/usage/UsageManagerImpl.java | 7 +- .../main/java/com/cloud/utils/script/Script.java | 11 +- 187 files changed, 5400 insertions(+), 703 deletions(-) create mode 100644 api/src/main/java/org/apache/cloudstack/api/command/admin/resource/PurgeExpungedResourcesCmd.java create mode 100644 api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ListVnfAppliancesCmdByAdmin.java create mode 100644 api/src/main/java/org/apache/cloudstack/api/command/user/vm/ListVnfAppliancesCmd.java copy engine/schema/src/main/java/com/cloud/network/as/dao/AutoScaleVmGroupVmMapDao.java => api/src/main/java/org/apache/cloudstack/api/response/PurgeExpungedResourcesResponse.java (56%) create mode 100644 api/src/main/java/org/apache/cloudstack/resource/ResourceCleanupService.java copy api/src/test/java/org/apache/cloudstack/api/command/admin/offering/{CreateServiceOfferingCmdTest.java => UpdateServiceOfferingCmdTest.java} (57%) create mode 100644 api/src/test/java/org/apache/cloudstack/api/command/admin/resource/PurgeExpungedResourcesCmdTest.java copy engine/schema/src/main/java/com/cloud/vm/dao/ConsoleSessionDao.java => core/src/main/java/org/apache/cloudstack/agent/routing/ManageServiceCommand.java (56%) create mode 100644 engine/schema/src/test/java/com/cloud/network/dao/IPAddressDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/network/dao/InlineLoadBalancerNicMapDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/network/dao/LoadBalancerVMMapDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/network/dao/OpRouterMonitorServiceDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/network/rules/dao/PortForwardingRulesDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/secstorage/CommandExecLogDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/vm/ItWorkDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/vm/dao/ConsoleSessionDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/vm/dao/NicDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/vm/dao/NicExtraDhcpOptionDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/vm/dao/NicSecondaryIpDaoImplTest.java create mode 100644 engine/schema/src/test/java/com/cloud/vm/snapshot/dao/VMSnapshotDaoImplTest.java create mode 100644 engine/schema/src/test/java/org/apache/cloudstack/storage/datastore/db/SnapshotDataStoreDaoImplTest.java create mode 100644 engine/storage/src/test/java/org/apache/cloudstack/storage/image/db/VolumeDataStoreDaoImplTest.java create mode 100644 framework/jobs/src/test/java/org/apache/cloudstack/framework/jobs/dao/VmWorkJobDaoImplTest.java create mode 100644 plugins/hypervisors/xenserver/src/test/java/org/apache/cloudstack/hypervisor/xenserver/ExtraConfigurationUtilityTest.java create mode 100644 server/src/main/java/org/apache/cloudstack/resource/ResourceCleanupServiceImpl.java create mode 100644 server/src/test/java/com/cloud/ha/dao/HighAvailabilityDaoImplTest.java create mode 100644 server/src/test/java/org/apache/cloudstack/resource/ResourceCleanupServiceImplTest.java create mode 100644 services/secondary-storage/server/src/main/java/org/apache/cloudstack/storage/resource/IpTablesHelper.java create mode 100755 systemvm/debian/opt/cloud/bin/manage_service.sh create mode 100644 test/integration/plugins/quota/test_quota_balance.py create mode 100644 test/integration/smoke/test_purge_expunged_vms.py