This is an automated email from the ASF dual-hosted git repository.

rohit pushed a change to branch 4.20-sonar-jre17
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


 discard 7ebf9430d0e drop centos8, just use el8 in paths and distribution name
 discard c3935dfe981 remove el7 packaging, rename el8 folder
     add 6b4955affe9 Fix message publish in transaction (#8980)
     add a0f87187da1 ui: fix documentation link for VM autoscaling (#9044)
     add ea9a0f4adf8 ui: fix haenable in edit vm form (#9049)
     add f0df8d7831a ui: fix limit format (#9060)
     add 33659fdf069 server,test: fix resourceid for VOLUME.DETROY in restore 
VM (#9032)
     add b38f1364e6a Merge branch '4.19'
     add e817e04343a  Fix typo keyparis -> keypairs in 
InvalidParameterValueException (#9100)
     add c6762f1a41d ui: fix projectrolepermissions listing with description 
(#9091)
     add daf6b9d1030 api,ui: vm template format, fix vm info link (#9094)
     add 2d4d370be80 ui: support isdynamicallyscalable param for iso (#9092)
     add 57e67afdf0d api,server: list autoscalevmgroups with keyword (#9046)
     add acce88ff392 Merge remote-tracking branch 'apache/4.19'
     add 371ce12abef Normalize dates in Usage and Quota APIs (#8243)
     add c563fda0819 Add two more `pre-commit` hooks (#9077)
     add e159a593f12 Add `markdownlint` with `pre-commit` (#9078)
     add 40c5d353773 Fix spelling in docs, logs, exception messages etc (#9076)
     add 28e8e2d0096 pre-commit: add hook to trim trailing whitespace (#8205)
     add ad66edf6e65 UI: Add search filters (#9068)
     add 283a4853aad ui: fix create network access in deploy vm wizard (#9117)
     add c07953cc93e ui: fix columns for exportacls csv (#9118)
     add 8bb7bbea888 ui: add move to top/bottom for acl rules list (#9119)
     add 261530c92a9 server: honor listall param for listiso api (#9064)
     add c36a3b8cc33 ui: fix create menu item access (#9104)
     add c970141e250 engine-schema: add removed columne for cloud.user_data, 
fix delete op (#9120)
     add f1c3d2c4bee Merge release branch 4.19 to main
     add 5433e775e53 New feature: Implicit host tags (#8929)
     add 9b3c318db6a upgrade: move 4.19.0->4.20.0 to 4.19.1->4.20.0 (#8893)
     add 19f96355ac0 Update .asf.yaml
     add 0c615312f95 log messages (#9093)
     add 87b55af1979 Fixup response code on incorrect credentials (#8671)
     add d77998c2d44 utils,ui: obfuscate sensitive log info, use POST for 
configureOutOfBandManagement (#9126)
     add 875cd149195 server: fix fail to list public ips of shared networks 
sometimes (#8624)
     add 68a231aaee0 Show site to site VPN connections in UI (#9066)
     add 631d6ad09bc Do not retrieve VM's stats on normal VM listing (#8782)
     add 91c7bc722f2 server,cks: check if vm is cks node during vm destroy 
(#9057)
     add 7a341942373 cleanup: remove test/src-not-used/ (#9007)
     add c791c138e75 ui: change reporting link to Github Discussions (#9023)
     add 2339412f734 linstor: make getDevicePath more robust (#9143)
     add c779b1c6164 Merge branch '4.18' into 4.19
     add b29391c3291 Merge LTS branch '4.19' into main
     add 81cdf3cfbfe Fix instance & backup resource table columns (#9147)
     add 2542582c1e0 logging migration in merge missing
     add be552fdce9c feature: webhooks (#8674)
     add cc8dc84f647 server: fix resource reservation leakage (#9169)
     add 10f4de03181 kvm: consider provisioning type for local data volumes 
(#9141)
     add 0b54fbb5399 ui: Updated units names (#8543)
     add 3f2761ec7c6 Merge remote-tracking branch 'origin/4.18' into 4.19
     add 8d211e75c01 Merge remote-tracking branch 'origin/4.19'
     add 21d07132add engine-schema: make adding/dropping indexes idempotent 
(#9171)
     add ee39104ec04 fix  null host tags while creating zone (#8976)
     add 1383625c93e Fix `*.smtp.useAuth`, `quota.usage.smtp.useStartTLS` and 
`*.smtp.enabledSecurityProtocols` settings definitions (#9031)
     add 3fe2b46dd0b [UI] Add option to specify account/project while deploying 
VMs and creating networks (#8919)
     add 3b8d2202dcd fix unwanted kvm root volume migration (#8908)
     add faf94387a63 Disable logs to stdout and capture remaining stdout logs 
to a file (#8880)
     add c9a95bc22c5 Add unit tests for null cpu for null parameters for set 
allocated cpu (#9137)
     add 66f7f762636 fix createVMSchedule action name (#9226)
     add 64593574d88 test update and get connected hosts (#9136)
     add 6fda757936b While starting VM with 'considerlasthost' enabled, don't 
load host tags/details for the last host when it doesn't exist [main] (#9063)
     add 525c2c6fe93 Show in which primary storage volumes are allocated in 
instance details page and volume migration pop-ups (#8835)
     add 3321971adc1 UI: Update AddAccountOrUserToProject to show a drop down 
for account & user (#9072)
     add fcca3e8f391 api,server: encryptformat in volume response (#9106)
     add 7aacbcb559e api: listApis should return params based on caller (#8973)
     add 4bd0b1c24f1 ui: refactor global createmenu (#9139)
     add 43ab8a93674 cks,ui: fix npe and check for disable zone (#9105)
     add acae5c5b9eb kvm: Update the java doc for the method 
disconnectPhysicalDiskByPath (#9210)
     add 6edcf32c5ee Fix vsphere storage policy when compute offering uses the 
disk offering attached to it (#9203)
     add 2e3f76ec031 Improve error messaging / logs when listing VMs on the 
remote KVM host (for import) (#9204)
     add edf7394919f server: search template name and display text if keyword 
is passed (#9215)
     add ca597200156 vpc,event: fix events for createVpc (#9055)
     add 15772189990 server,event: fix events for storage maintenance (#9056)
     add 4ec0f823cf3 ScaleIO volume live migration - use usable bytes from 
source disk to format the destination disk (#9174)
     add 0f770194df7 Configure config drive ISO with password file on 
reinstallation of VM  with password-enabled template (#9113)
     add 503ae64a3db Upload volume format check with the supported hypervisor, 
fail if supported hypervisor not found on zone (#9224)
     add 4de975ff252 list by isEncrypted (#8643)
     add c756e4370ad List volumes by service offering id (#9211)
     add 10dc5ad7744 ui; fix admin dashboard vue warnings (#9140)
     add e2e46e31087 ui: fix dashboard on saml user login (#9097)
     add 5c749eced26 logging: httpupload do not warn with exception trace 
(#9220)
     add b2ef53b8a2d kvm: replace ISO path in vm XML configuration during vm 
migration (#9212)
     add 6fe835e1183 Merge branch '4.19'
     add cb48202b348 fix build error LibvirtGetVolumeStatCommandWrapper
     add 1cf1786ebb8 [Quota] Add API to list preset variables (#8372)
     add 8221be3a8ce Fix marvin package version while building packages (#9230)
     add 78ace3a750c saml: introduce saml2.check.signature (#9219)
     add f45267174a1 ui: list only accessible networks during import (#9194)
     add 0f8a839a1d9 engine/schema: force index in user_vm_view to speed up VM 
instance listing (#9198)
     add b3c3f917186 api: add to cpu speed parameter a description of the 
cgroup2 case (#9191)
     add 517cddcb15c Fix error message if specific host does not have capacity 
(#9218)
     add 2fef0a32bc8 cks: fix list apis response count (#8701)
     add abbc61c01ec engine-orchestration: expunge destroyed system vm volume 
(#9197)
     add 19e9020c9bb ui: fix dashboard retrievals based on permissions (#9237)
     add 034a5c84662 linstor: ui show Server and resource-group fields with 
custom protocol (#9138)
     add 37f4398c80e linstor: Support VM-Instance Disk snapshots (#8796)
     add 74f5e52e6ea Fix unit test failure (#9238)
     add 2ca0857bd59 api: listVM API improvement followup, change returning of 
stats detail (#9177)
     add 6ce2a58f9bc ui: improve sort utility for metrics (#9247)
     add df5c5465594 server: remove username required condition for 
listVmsForImport (#9124)
     add ce9b2c52f32 cks: fix events (#9070)
     add 8d02e5f808c test: fix test/integration/smoke/test_register_userdata.py 
which caused networks not to be deleted (#9244)
     add cb9b3134f7f Merge branch '4.19'
     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 f6ceeab3b3a server: Enforce strict host tag check (#9017)
     add ae3fa5d0de3 Add configuration to limit the number of rows deleted from 
vm_stats (#8740)
     add 097359bef9e plugins/shutdown: fix triggerShutdown scheduling and 
response (#9276)
     add 5ab23cd9c97 Timeout config to copy the disks of remote KVM instance 
while importing the instance from an external host (#9213)
     add ded7b4dbe5a test: fix test failure on ubuntu 24.04: "top: unknown 
option 'n'" (#9262)
     add 083ac069ca4 fix assignvm template permission check (#8886)
     add 60f234c682d remove Project Template Permissions inhibition (#9196)
     add 0c422aca767 server: fix additional zones cannot be removed (#9261)
     add 674495b162b Fixup startVM on simulator (#9199)
     add 313a165e62b server: add global setting consoleproxy.sslEnabled (#8809)
     add 9055610034b Remove duplicate network state checks before shutdown 
network (#8462)
     add 59e9ab9efee Fix volume response for service offering with disk 
offering (#9273)
     add 7e00678691e set isSystem for SVM IPs (#9281)
     add f4612c51ec4 libvirtstorage: Make sure netfs storage was really mounted 
(#8887)
     add 6a518e29b74 Allow deletion of external managed cks nodes (#9183)
     add c17aa0d9ada Import Remote KVM VM logging improvements (#9284)
     add f792684b9c4 Support migration of VM imported from a remote host (#9259)
     add f944d4c61d1 debian: add cpu-checker to debian/control (#9263)
     add 3e30283500f Fix migration from local storage to NFS in KVM (#8909)
     add 8b07b66f145 Fix volume snapshot of encrypted NFS/StorPool volume 
(#8873)
     add de266a4cb85 api,server: allow updating hypervisor capabilities with 
hypervisor and  version (#8475)
     add 4d6df586da2 engine-schema: fix options for host.allocators.order 
config (#8733)
     add fcfa3713373 kvm: support Rocky/RHEL/OL/Alma in the same cluster (#8641)
     add 42e71175d77 Merge remote-tracking branch 'origin/4.18' into 4.19
     add 6ee66033596 Updates to HPE-Primera and Pure FlashArray Drivers to use 
Host-based VLUN Assignments (#8889)
     add 620ed164d8b VMware: Improve error messaging / logs when starting 
non-user VMs, and secondary storage not available or doesn't have enough 
capacity (#9207)
     add 3923f80c225 Merge branch '4.19'
     add 3a0c3125916 fix build error with FiberChannelAdapter after 
forward-merge
     add 4eb43651e2d Ability to specify NFS mount options while adding a 
primary storage and modify them on a pre-existing primary storage  (#8947)
     add 7f0d9a03045 [Veeam] Check for failures in the restore process (#7224)
     add 6d7c042bc1d Accept a role ID on linking an account to LDAP (#8236)
     add 2bf36ef9353 DRS: Ensure the destination host is part of the same 
cluster (#9245)
     add dc74d5ba888 Let network guru decide if ipv6 cidr size can't be equal 
to 64 (#9289)
     add 4f85c3fd231 Honour listall param for list templates api (#9300)
     add ae4b6d3b6c4 CKS/calico: set arp_ignore and arp_announce to 0 in k8s 
controller/nodes (#9186)
     add 121839277b9 UI: ignore error host is already in the database when 
create a zone (#9231)
     add 6c06e85c803 Temporarily backup StorPool volume before expunge (#8843)
     add f7f7013ed02 Added ostypeid in the snapshot response (#9150)
     add 52247c57bb9 agent: reconnect after waiting 5 seconds (#9258)
     add 7a8066d3cad server: fix resource count updated unmanage vm (#8169)
     add b22315db85e server: event for HA vm start (#9202)
     add 22cd00ffb17 veeam: fix issues with PreSetup and DVS and Solidfire 
(#9256)
     add 53faf0f66a5 xenserver: attach regular iso with configdrive (#9216)
     add 23f8856c7d4 Update AssignToLoadBalancerRuleCmd.java (#9306)
     add 46f672563eb Improve migration of external VMware VMs into KVM cluster 
(#8815)
     add a4e9d7f21a7 Change vm.stats.remove.batch.size to 
delete.batch.query.size & allow delete of volume_stats in batches (#9283)
     add a5c8bb3bfc3 server: apply rules when VR of Domain VPC is recreated 
(#8354)
     add d4446ee09dc Revert listAll behaviour for templates (#9309)
     add 646c894ec68 Fix for race when automatically assigning IP to Vms (#9240)
     add c7f1ba5b8ee server: refactor listNetworks api database retrievals 
(#9184)
     add 65753755379 extract host from websocket to add route (#8922)
     add 94503e687ca UI: improve ux and fix some minor bugs (#9307)
     add 351de5fabd9 engine/orchestration: Update overcommit ratio during live 
VM migration (#9178)
     add 6b25ed7a027 prevent an NPE on an uninitialised TemplateObject (#8898)
     add 644f3a3f48f Add, Delete Storage Pool commands should be able execute 
on a host in maintenance (#9301)
     add 983f164c57f Fixed src datastore on copy check for PowerFlex/ScaleIO 
storage driver (#9310)
     add bcbf152a052 Merge branch '4.18' into 4.19
     add 90fe1d5fdcc Merge branch '4.19'
     add e010c9be936 Fixup main build error (#9314)
     add 814c8b6a121 differentiate between instalation ISO and attached ISO 
(#9146)
     add 2ca1b474bd6 PowerFlex/ScaleIO SDC client connection improvements 
(#9268)
     add 063dc601140 Change storage pool scope from Cluster to Zone and vise 
versa (#8875)
     add d79735606bb Handle public IP race conditions (#9234)
     add 0ec7c728758 Merge branch '4.19'
     add de683a51633 add ownership selection to create volume (#9265)
     add 7c32bd2506e Fixup main build errors (#9330)
     add a35d79a681e ui: fix minor issue with webhook forms (#9335)
     add 79b1427d3e5 test_primary_storage_scope.py should only run with kvm, 
vmware and simulator (#9323)
     add 94e5ceff7ff linstor-ui: Fix add primary storage if Linstor protocol 
selected (#9327)
     add 374ea7d4823 UI: fix "Request failed." error when open vnf appliances 
tab of network (#9334)
     add 121a35d6666 linstor: do not use the same static ApiClient for all 
calls (#9326)
     add eb1a0ef7f2b linstor: deleteAsync fallback to volume UUID if path not 
set yet (#9325)
     add ba85b4d4ffc Merge release branch 4.18 to 4.19
     add 2cf838cc1d1 framework/cluster: improve cluster service, integration 
API server
     add beebeed5e23 framework/cluster: improve cluster service and integration 
API service
     add d99cf93d7c2 Merge remote-tracking branch 'apache/4.18' into 4.19
     add 3c9bc07d069 Merge remote-tracking branch 'apache/4.19'
     add b080215c085 utils: honor custom timeout for script execution for exit 
value
     add 1144f5258d5 Merge remote-tracking branch 'apache/4.19'
     add b69cc0272d4 pre-commit: enable Python Flake8 rule `E713` (#9016)
     add f35f3f6a965 UI: create network form constantly tries to list domains - 
which is not permitted for normal users (#9348)
     add c35ba606a10 ui: fix account list on domain change in filterview (#9345)
     add f381763917a test: fix simulator CI failure test_cluster_drs (#9354)
     add 7977d1475e2 plugins: make default signature check mandatory (#9357)
     add ca66b76cb92 Fix instance & backup resource table columns (#9147)
     add 0af88353fbd Merge branch '4.19'
     add 354627a19d5 UI: fix CreateIsolatedNetworkForm.vue (#9359)
     add a1d8bab43f2 Bump actions/cache to `v4` (#9353)
     add c6d3f6e623e pre-commit: enable Python flake8 rule `E271` (#9358)
     add 806692bceaa pre-commit: enable Python flake8 rule `E272` (#9361)
     add 9f1577d2a8d pre-commit: check more file types for trailing whitespace 
(#9352)
     add 37c91abd3d4 NPE fix, for test_hostha_kvm_host_fencing (#9355)
     add 5c365fa8202 systemvmtemplate: bump new systemvmtemplate 4.19.1 (#9349)
     add 32cc1d46a5c Copy on pool host when storage pool has ScopeType.HOST 
(#9356)
     add cea4801be18 Merge remote-tracking branch 'origin/4.19'
     add c923e673cfd pre-commit: add `XML` files to the `trailing-whitespace` 
check (#9131)
     add 2919cac6432 pre-commit: add `codespell` to check spelling (#8197)
     add 407990650f6 Improvements on information about disk sizes and offerings 
on VM deployment wizard's InfoCard (#9249)
     add 77cc75ab02a Fix radio buttons in instance migration pop-up (#8836)
     add a87778be9a4 Refactor KubernetesClusterResourceModifierActionWorker 
(#8801)
     add b9c7275c253 Quota tariff order (#8347)
     add afdf4d7d46c Add limit configuration for number of projects (#9172)
     add c71ab9598e3 test: refactor ActionEventInterceptorTest to prevent 
failures (#9384)
     add d9f77b841c5 Ignore non-managed pools for storage pool access 
preparation (#9376)
     add 22ef08154dc Switch back to CLOUD_DB after purging usage records (#9367)
     add 877c4d9a64b LibvirtOvsFetchInterfaceCommandWrapperTest fix (test fails 
in mac) - skip it if no interfaces with eth and wl (#9382)
     add 7f8f1137099 Merge branch '4.18' into 4.19
     add 50586a94816 UI assorted fixes (#9381)
     add 2cfb541a1d7 saml: purge token after first response and improve setting 
description (#9377)
     add 6a8494be3be engine-schema,cks: fix finding non removed network vms 
(#9339)
     add 7db83db3dd9 Fix radio buttons in instance migration pop-up (#8836)
     add 21c98af13de Fix backup offering buttons for instances in data view 
(#9391)
     add 8a00e25de91 Fix list backups after backup vm is expunged (#9392)
     add a53365d1c7f Merge release branch 4.18 to 4.19
     add 35fd17c62ee Merge branch '4.19'
     add 56c661c1dff Icon changed for control-outlined (#9402)
     add f24fb20e6b3 ui: add new API docs tab (#9409)
     add 9f4c8959743 Updating pom.xml version numbers for release 4.19.1.0
     add 3faf7cd2f15 Updating pom.xml version numbers for release 
4.19.2.0-SNAPSHOT
     add e41add31e72 saml: signature check improvements
     add 54c8b71fb54 Merge remote-tracking branch 'apache/4.18' into 4.19
     add d41dc17b2c2 Merge remote-tracking branch 'apache/4.19'
     add dc1556ca383 Change exception when orchestrating VM start (#9062)
     add 817251f1f89 Enhancement in the accuracy of the logs regarding the 
capacity, usage, and threshold of secondary storages (#9043)
     add 1662af131e7 [4.20] VR: fix issue if userdata is binary data (#8739)
     add 61deb67a356 Merge remote-tracking branch 'origin/main' into 
4.20-sonar-jre17

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   (7ebf9430d0e)
            \
             N -- N -- N   refs/heads/4.20-sonar-jre17 (61deb67a356)

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:
 .asf.yaml                                          |    1 +
 .github/linters/.flake8                            |    5 +-
 .github/linters/.markdown-lint.yml                 |  100 +
 .github/linters/codespell.txt                      |  526 +++++
 .github/workflows/ci.yml                           |    5 +-
 .github/workflows/linter.yml                       |    2 +-
 .github/workflows/main-sonar-check.yml             |    4 +-
 .github/workflows/sonar-check.yml                  |    4 +-
 .pre-commit-config.yaml                            |   25 +-
 CHANGES.md                                         |   16 +-
 CONTRIBUTING.md                                    |   18 +-
 PULL_REQUEST_TEMPLATE.md                           |    1 +
 README.md                                          |    2 +-
 agent/bindir/cloud-setup-agent.in                  |    4 +-
 agent/bindir/cloud-ssh.in                          |    4 +-
 agent/conf/agent.properties                        |    3 +
 agent/conf/cloudstack-agent.logrotate.in           |    4 +-
 agent/conf/environment.properties.in               |    4 +-
 agent/conf/log4j-cloud.xml.in                      |    2 +-
 agent/src/main/java/com/cloud/agent/Agent.java     |    6 +
 .../cloud/agent/properties/AgentProperties.java    |    9 +-
 .../test/java/com/cloud/agent/AgentShellTest.java  |   12 +
 .../com/cloud/agent/api/to/RemoteInstanceTO.java   |   29 +-
 api/src/main/java/com/cloud/event/EventTypes.java  |   10 +-
 api/src/main/java/com/cloud/host/Host.java         |    1 +
 .../java/com/cloud/hypervisor/HypervisorGuru.java  |   33 +-
 .../cluster/KubernetesClusterHelper.java           |   26 -
 .../cluster/KubernetesServiceHelper.java           |   29 +
 .../main/java/com/cloud/network/NetworkModel.java  |    2 +
 .../java/com/cloud/network/NetworkService.java     |    5 +
 .../network/VirtualNetworkApplianceService.java    |    9 +
 .../network/VpcVirtualNetworkApplianceService.java |   22 +-
 .../element/LoadBalancingServiceProvider.java      |    3 +
 .../java/com/cloud/network/guru/NetworkGuru.java   |    3 +
 .../java/com/cloud/network/vpc/VpcService.java     |    2 +
 .../java/com/cloud/offering/ServiceOffering.java   |    3 +
 .../java/com/cloud/storage/StorageService.java     |    7 +
 .../java/com/cloud/user/ResourceLimitService.java  |    9 +-
 api/src/main/java/com/cloud/uservm/UserVm.java     |    2 +
 api/src/main/java/com/cloud/vm/NicProfile.java     |    8 +
 api/src/main/java/com/cloud/vm/UserVmService.java  |   32 +-
 .../java/com/cloud/vm/VirtualMachineProfile.java   |    4 +
 .../cloudstack/api/ApiCommandResourceType.java     |   15 +-
 .../org/apache/cloudstack/api/ApiConstants.java    |   41 +-
 .../config/UpdateHypervisorCapabilitiesCmd.java    |   14 +
 .../admin/offering/CreateServiceOfferingCmd.java   |   18 +-
 .../admin/offering/UpdateServiceOfferingCmd.java   |    9 +
 .../admin/resource/PurgeExpungedResourcesCmd.java  |  131 ++
 .../admin/storage/ChangeStoragePoolScopeCmd.java   |   98 +
 .../command/admin/storage/ListStoragePoolsCmd.java |    7 +-
 .../command/admin/storage/UpdateImageStoreCmd.java |   21 +-
 .../command/admin/usage/ListUsageRecordsCmd.java   |   20 +-
 .../api/command/admin/user/UpdateUserCmd.java      |    2 +-
 .../admin/vm/ImportUnmanagedInstanceCmd.java       |    8 +-
 .../api/command/admin/vm/ImportVmCmd.java          |   25 +-
 .../ListAffectedVmsForStorageScopeChangeCmd.java   |   77 +
 .../admin/vm/ListVnfAppliancesCmdByAdmin.java      |   36 +
 .../autoscale/CreateAutoScaleVmProfileCmd.java     |    2 +-
 .../autoscale/UpdateAutoScaleVmProfileCmd.java     |    2 +-
 .../api/command/user/backup/ListBackupsCmd.java    |    1 +
 .../user/firewall/CreateFirewallRuleCmd.java       |   24 +
 .../loadbalancer/AssignToLoadBalancerRuleCmd.java  |    2 +-
 .../command/user/network/CreateNetworkACLCmd.java  |   31 +-
 .../user/resource/UpdateResourceCountCmd.java      |    7 +-
 .../user/resource/UpdateResourceLimitCmd.java      |    1 +
 .../command/user/userdata/RegisterUserDataCmd.java |    9 +-
 .../api/command/user/vm/CreateVMScheduleCmd.java   |    2 +-
 .../api/command/user/vm/DeployVMCmd.java           |    6 +-
 .../cloudstack/api/command/user/vm/ListVMsCmd.java |   48 +-
 .../api/command/user/vm/ListVnfAppliancesCmd.java  |   39 +
 .../api/command/user/vm/ResetVMUserDataCmd.java    |    2 +-
 .../cloudstack/api/command/user/vm/StartVMCmd.java |    4 +
 .../api/command/user/vm/UpdateVMCmd.java           |    2 +-
 .../api/command/user/volume/ListVolumesCmd.java    |   18 +
 .../api/command/user/volume/ResizeVolumeCmd.java   |    8 +
 .../api/command/user/vpc/CreateVPCCmd.java         |    6 +-
 .../api/response/AutoScaleVmProfileResponse.java   |    2 +-
 .../cloudstack/api/response/BucketResponse.java    |    2 +-
 .../api/response/HostForMigrationResponse.java     |   16 +
 .../cloudstack/api/response/HostResponse.java      |   44 +-
 .../cloudstack/api/response/HostTagResponse.java   |   13 +
 .../api/response/ImageStoreResponse.java           |   14 +-
 .../response/PurgeExpungedResourcesResponse.java   |   39 +
 .../api/response/ServiceOfferingResponse.java      |    8 +
 .../api/response/StoragePoolResponse.java          |   24 +
 .../api/response/UsageRecordResponse.java          |   11 +-
 .../cloudstack/api/response/UserVmResponse.java    |   28 +
 .../api/response/VMUserDataResponse.java           |    2 +-
 .../api/response/VirtualMachineResponse.java       |  124 ++
 .../cloudstack/api/response/VolumeResponse.java    |   12 +-
 .../java/org/apache/cloudstack/backup/Backup.java  |    1 +
 .../java/org/apache/cloudstack/ca/CAManager.java   |    8 +
 .../org/apache/cloudstack/query/QueryService.java  |    7 +
 .../resource/ResourceCleanupService.java           |   74 +
 .../cloudstack/user/ResourceReservation.java       |    4 +
 .../cloudstack/userdata/UserDataManager.java       |    5 +
 .../apache/cloudstack/vm/UnmanagedInstanceTO.java  |   21 +
 .../apache/cloudstack/vm/UnmanagedVMsManager.java  |   40 +
 .../api-config/spring-api-config-context.xml       |    2 +-
 .../api-planner/spring-api-planner-context.xml     |    2 +-
 .../offering/CreateServiceOfferingCmdTest.java     |   18 +
 .../offering/UpdateServiceOfferingCmdTest.java     |   51 +
 .../resource/PurgeExpungedResourcesCmdTest.java    |  104 +
 .../api/command/user/vpc/CreateVPCCmdTest.java     |    5 +-
 .../cloudstack/api/response/HostResponseTest.java  |    8 +-
 build/replace.properties                           |    4 +-
 client/bindir/cloud-update-xenserver-licenses.in   |   18 +-
 client/conf/log4j-cloud.xml.in                     |    2 +-
 client/pom.xml                                     |    5 +
 .../META-INF/cloudstack/webApplicationContext.xml  |    2 +-
 .../agent/api/CheckConvertInstanceAnswer.java      |   43 +
 .../agent/api/CheckConvertInstanceCommand.java     |   37 +
 .../com/cloud/agent/api/CheckVolumeAnswer.java     |    1 -
 .../com/cloud/agent/api/CheckVolumeCommand.java    |    1 -
 .../cloud/agent/api/ConvertInstanceCommand.java    |   30 +-
 .../cloud/agent/api/CopyRemoteVolumeAnswer.java    |    1 -
 .../cloud/agent/api/CopyRemoteVolumeCommand.java   |    5 +-
 .../com/cloud/agent/api/GetRemoteVmsAnswer.java    |    2 +-
 .../com/cloud/agent/api/GetRemoteVmsCommand.java   |    2 +-
 .../agent/api/GetUnmanagedInstancesAnswer.java     |    2 +-
 .../agent/api/GetUnmanagedInstancesCommand.java    |    2 +-
 .../com/cloud/agent/api/GetVolumeStatAnswer.java   |   85 +
 .../com/cloud/agent/api/GetVolumeStatCommand.java  |   72 +
 .../cloud/agent/api/ModifyStoragePoolCommand.java  |    4 +
 .../agent/api/PrepareStorageClientAnswer.java      |   43 +
 .../agent/api/PrepareStorageClientCommand.java     |   56 +
 .../com/cloud/agent/api/StartupRoutingCommand.java |    4 +
 .../agent/api/UnprepareStorageClientAnswer.java    |   34 +
 .../agent/api/UnprepareStorageClientCommand.java   |   48 +
 .../storage/CreateEntityDownloadURLCommand.java    |   27 +-
 .../agent/resource/virtualnetwork/VRScripts.java   |    1 +
 .../virtualnetwork/VirtualRoutingResource.java     |   19 +
 .../java/com/cloud/resource/CommandWrapper.java    |   29 +-
 .../agent/routing/ManageServiceCommand.java        |   49 +
 .../cloudstack/storage/to/VolumeObjectTO.java      |    9 +
 .../allocator/spring-core-allocator-context.xml    |    2 +-
 ...ore-lifecycle-allocator-context-inheritable.xml |    2 +-
 ...ring-core-lifecycle-api-context-inheritable.xml |    4 +-
 .../core/spring-core-registry-core-context.xml     |   17 +-
 .../META-INF/cloudstack/event/module.properties    |   21 +
 ...ng-core-lifecycle-event-context-inheritable.xml |   31 +
 ...re-lifecycle-kubernetes-context-inheritable.xml |    4 +-
 ...-core-lifecycle-network-context-inheritable.xml |    2 +-
 ...pring-lifecycle-storage-context-inheritable.xml |    6 +-
 .../spring-core-system-context-inheritable.xml     |   10 +-
 .../system/spring-core-system-context.xml          |    6 +-
 debian/control                                     |    2 +-
 debian/rules                                       |    4 +
 deps/install-non-oss.sh                            |    2 +-
 .../service/NetworkOrchestrationService.java       |    2 +
 .../engine/subsystem/api/storage/DataObject.java   |    2 +
 .../api/storage/PrimaryDataStoreDriver.java        |   26 +
 .../api/storage/PrimaryDataStoreLifeCycle.java     |    3 +
 .../subsystem/api/storage/VolumeService.java       |    2 +
 .../core/spring-engine-api-core-context.xml        |    2 +-
 .../main/java/com/cloud/alert/AlertManager.java    |    6 +-
 .../cloud/configuration/ConfigurationManager.java  |    6 +-
 .../main/java/com/cloud/event/UsageEventUtils.java |   22 +-
 .../java/com/cloud/ha/HighAvailabilityManager.java |    1 +
 .../com/cloud/network/NetworkStateListener.java    |   32 +-
 .../java/com/cloud/resource/ResourceManager.java   |    6 +
 .../java/com/cloud/storage/StorageManager.java     |   36 +-
 .../com/cloud/vm/VirtualMachineProfileImpl.java    |    2 +
 .../cloud/network/NetworkStateListenerTest.java    |   40 +
 .../java/com/cloud/agent/manager/AgentAttache.java |    7 +-
 .../com/cloud/vm/VirtualMachineManagerImpl.java    |   96 +-
 .../engine/orchestration/NetworkOrchestrator.java  |  183 +-
 .../engine/orchestration/VolumeOrchestrator.java   |   14 +-
 .../spring-engine-orchestration-core-context.xml   |   14 +-
 .../orchestration/NetworkOrchestratorTest.java     |  391 +++-
 .../main/java/com/cloud/capacity/CapacityVO.java   |    8 +-
 .../com/cloud/domain/dao/DomainDetailsDao.java     |    2 +
 .../com/cloud/domain/dao/DomainDetailsDaoImpl.java |   15 +-
 .../src/main/java/com/cloud/host/HostTagVO.java    |   10 +
 .../src/main/java/com/cloud/host/HostVO.java       |   46 +-
 .../src/main/java/com/cloud/host/dao/HostDao.java  |    2 +
 .../main/java/com/cloud/host/dao/HostDaoImpl.java  |   31 +
 .../main/java/com/cloud/host/dao/HostTagsDao.java  |    8 +
 .../java/com/cloud/host/dao/HostTagsDaoImpl.java   |  125 ++
 .../cloud/hypervisor/HypervisorCapabilitiesVO.java |   12 +
 .../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 +
 .../com/cloud/storage/dao/SnapshotDetailsDao.java  |    3 +
 .../cloud/storage/dao/SnapshotDetailsDaoImpl.java  |   33 +
 .../com/cloud/storage/dao/StoragePoolHostDao.java  |    2 +
 .../cloud/storage/dao/StoragePoolHostDaoImpl.java  |   28 +
 .../main/java/com/cloud/storage/dao/VolumeDao.java |    6 +-
 .../java/com/cloud/storage/dao/VolumeDaoImpl.java  |   37 +-
 .../java/com/cloud/storage/dao/VolumeStatsDao.java |    6 +-
 .../com/cloud/storage/dao/VolumeStatsDaoImpl.java  |   22 +-
 .../com/cloud/upgrade/DatabaseUpgradeChecker.java  |    6 +-
 .../com/cloud/upgrade/dao/Upgrade41900to42000.java |   83 -
 .../com/cloud/upgrade/dao/Upgrade41910to42000.java |   83 +
 .../java/com/cloud/usage/dao/UsageDaoImpl.java     |   35 +-
 .../java/com/cloud/user/AccountDetailsDao.java     |    2 +
 .../java/com/cloud/user/AccountDetailsDaoImpl.java |   15 +-
 .../src/main/java/com/cloud/user/UserDataVO.java   |   15 +
 .../src/main/java/com/cloud/vm/ItWorkDao.java      |    1 +
 .../src/main/java/com/cloud/vm/ItWorkDaoImpl.java  |   14 +-
 .../src/main/java/com/cloud/vm/UserVmVO.java       |    1 +
 .../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  |    5 +
 .../java/com/cloud/vm/dao/VMInstanceDaoImpl.java   |   63 +-
 .../src/main/java/com/cloud/vm/dao/VmStatsDao.java |    6 +-
 .../main/java/com/cloud/vm/dao/VmStatsDaoImpl.java |   22 +-
 .../com/cloud/vm/snapshot/dao/VMSnapshotDao.java   |    2 +
 .../cloud/vm/snapshot/dao/VMSnapshotDaoImpl.java   |   29 +-
 .../org/apache/cloudstack/backup/BackupVO.java     |    1 +
 .../cloudstack/backup/dao/BackupDaoImpl.java       |    6 +-
 .../cloudstack/reservation/ReservationVO.java      |   23 +
 .../cloudstack/reservation/dao/ReservationDao.java |    6 +-
 .../reservation/dao/ReservationDaoImpl.java        |   79 +-
 .../resourcedetail/ResourceDetailsDao.java         |    2 +
 .../resourcedetail/ResourceDetailsDaoBase.java     |   16 +-
 .../storage/datastore/db/PrimaryDataStoreDao.java  |    6 +
 .../datastore/db/PrimaryDataStoreDaoImpl.java      |   34 +-
 .../storage/datastore/db/SnapshotDataStoreDao.java |    2 +
 .../datastore/db/SnapshotDataStoreDaoImpl.java     |   12 +
 .../storage/datastore/db/VolumeDataStoreDao.java   |    2 +
 .../spring-engine-schema-core-daos-context.xml     |    1 -
 .../main/resources/META-INF/db/data-217to218.sql   |    4 +-
 .../main/resources/META-INF/db/schema-20to21.sql   |   12 +-
 .../main/resources/META-INF/db/schema-217to218.sql |    4 +-
 .../META-INF/db/schema-21to22-cleanup.sql          |    4 +-
 .../META-INF/db/schema-21to22-premium.sql          |    6 +-
 .../main/resources/META-INF/db/schema-21to22.sql   |   28 +-
 .../resources/META-INF/db/schema-2210to2211.sql    |    4 +-
 .../META-INF/db/schema-2211to2212-premium.sql      |    4 +-
 .../resources/META-INF/db/schema-2211to2212.sql    |    4 +-
 .../resources/META-INF/db/schema-2212to2213.sql    |    4 +-
 .../resources/META-INF/db/schema-2213to2214.sql    |    6 +-
 .../META-INF/db/schema-2214to30-cleanup.sql        |    6 +-
 .../main/resources/META-INF/db/schema-2214to30.sql |   76 +-
 .../META-INF/db/schema-221to222-cleanup.sql        |    4 +-
 .../META-INF/db/schema-221to222-premium.sql        |    4 +-
 .../main/resources/META-INF/db/schema-221to222.sql |    6 +-
 .../META-INF/db/schema-222to224-cleanup.sql        |    4 +-
 .../META-INF/db/schema-222to224-premium.sql        |    4 +-
 .../main/resources/META-INF/db/schema-222to224.sql |   10 +-
 .../META-INF/db/schema-224to225-cleanup.sql        |    4 +-
 .../main/resources/META-INF/db/schema-224to225.sql |    4 +-
 .../main/resources/META-INF/db/schema-225to226.sql |    4 +-
 .../META-INF/db/schema-227to228-premium.sql        |    4 +-
 .../main/resources/META-INF/db/schema-227to228.sql |    8 +-
 .../main/resources/META-INF/db/schema-228to229.sql |    4 +-
 .../resources/META-INF/db/schema-229to2210.sql     |    4 +-
 .../META-INF/db/schema-22beta1to22beta2.sql        |    4 +-
 .../META-INF/db/schema-22beta3to22beta4.sql        |   12 +-
 .../META-INF/db/schema-301to302-cleanup.sql        |    4 +-
 .../main/resources/META-INF/db/schema-301to302.sql |    6 +-
 .../main/resources/META-INF/db/schema-302to303.sql |    6 +-
 .../META-INF/db/schema-302to40-cleanup.sql         |    4 +-
 .../main/resources/META-INF/db/schema-302to40.sql  |   18 +-
 .../META-INF/db/schema-304to305-cleanup.sql        |    4 +-
 .../main/resources/META-INF/db/schema-304to305.sql |    8 +-
 .../META-INF/db/schema-305to306-cleanup.sql        |    4 +-
 .../main/resources/META-INF/db/schema-305to306.sql |    4 +-
 .../main/resources/META-INF/db/schema-306to307.sql |    4 +-
 .../main/resources/META-INF/db/schema-307to410.sql |   12 +-
 .../main/resources/META-INF/db/schema-30to301.sql  |    4 +-
 .../main/resources/META-INF/db/schema-40to410.sql  |   56 +-
 .../main/resources/META-INF/db/schema-410to420.sql |   88 +-
 .../resources/META-INF/db/schema-41310to41400.sql  |    2 +-
 .../META-INF/db/schema-41900to41910-cleanup.sql    |    4 +
 .../resources/META-INF/db/schema-41900to41910.sql  |    7 +
 .../resources/META-INF/db/schema-41900to42000.sql  |   81 -
 ...cleanup.sql => schema-41910to42000-cleanup.sql} |    0
 .../resources/META-INF/db/schema-41910to42000.sql  |  156 ++
 .../main/resources/META-INF/db/schema-420to421.sql |    4 +-
 .../main/resources/META-INF/db/schema-442to450.sql |    4 +-
 .../META-INF/db/schema-481to490-cleanup.sql        |    2 +-
 .../main/resources/META-INF/db/schema-481to490.sql |   16 +-
 .../resources/META-INF/db/schema-4930to41000.sql   |    4 +-
 .../main/resources/META-INF/db/schema-level.sql    |    4 +-
 .../META-INF/db/schema-snapshot-217to224.sql       |    4 +-
 .../META-INF/db/schema-snapshot-223to224.sql       |    4 +-
 .../META-INF/db/views/cloud.host_view.sql          |    8 +-
 .../META-INF/db/views/cloud.user_vm_view.sql       |    3 +-
 .../META-INF/db/views/cloud.volume_view.sql        |    1 +
 .../db/views/cloud.webhook_delivery_view.sql       |   48 +
 .../META-INF/db/views/cloud.webhook_view.sql       |   52 +
 .../src/test/java/com/cloud/host/HostVOTest.java   |   53 +-
 .../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 +
 .../spring-engine-storage-cache-core-context.xml   |    2 +-
 .../motion/StorageSystemDataMotionStrategy.java    |  387 ++--
 .../KvmNonManagedStorageSystemDataMotionTest.java  |    8 +-
 .../StorageSystemDataMotionStrategyTest.java       |   71 -
 .../storage/image/TemplateDataFactoryImpl.java     |    3 +
 .../manager/ImageStoreProviderManagerImpl.java     |    2 +-
 .../storage/image/store/TemplateObject.java        |    8 +
 .../src/test/resources/component.xml               |   28 +-
 .../src/test/resources/s3_testng.xml               |    6 +-
 .../src/test/resources/storageContext.xml          |   32 +-
 .../integration-test/src/test/resources/testng.xml |    8 +-
 .../object/src/test/resource/testContext.xml       |   12 +-
 ...spring-engine-storage-snapshot-core-context.xml |    2 +-
 ...ing-engine-storage-snapshot-storage-context.xml |    2 +-
 .../test/resources/SnapshotManagerTestContext.xml  |   20 +-
 .../storage/image/db/VolumeDataStoreDaoImpl.java   |   12 +
 .../volume/datastore/PrimaryDataStoreHelper.java   |   52 +-
 .../core/spring-engine-storage-core-context.xml    |    6 +-
 ...ng-engine-storage-storage-allocator-context.xml |    4 +-
 .../image/db/VolumeDataStoreDaoImplTest.java       |   68 +
 .../datastore/PrimaryDataStoreHelperTest.java      |  114 +
 .../BasePrimaryDataStoreLifeCycleImpl.java         |  108 +
 .../datastore/provider/DefaultHostListener.java    |   10 +-
 .../storage/volume/VolumeServiceImpl.java          |   84 +-
 .../spring-engine-storage-volume-core-context.xml  |    2 +-
 .../BasePrimaryDataStoreLifeCycleImplTest.java     |  127 ++
 .../storage/volume/VolumeServiceTest.java          |   72 +-
 .../volume/src/test/resource/testContext.xml       |   12 +-
 .../cloudstack/userdata/UserDataManagerImpl.java   |   81 +-
 .../core/spring-engine-userdata-core-context.xml   |    2 +-
 .../apache/cloudstack/framework/ca/CAProvider.java |    4 +
 .../apache/cloudstack/framework/ca/CAService.java  |    3 +
 .../java/com/cloud/cluster/ClusterManager.java     |    4 +-
 .../java/com/cloud/cluster/ClusterManagerImpl.java |    7 +-
 .../com/cloud/cluster/ClusterServiceAdapter.java   |    2 -
 .../cluster/ClusterServiceServletAdapter.java      |   16 +-
 .../cluster/ClusterServiceServletContainer.java    |  116 +-
 .../cloud/cluster/ClusterServiceServletImpl.java   |  164 +-
 .../core/spring-framework-cluster-core-context.xml |    6 +-
 .../com/cloud/cluster/ClusterManagerImplTest.java  |   38 +
 .../cluster/ClusterServiceServletAdapterTest.java  |    2 +-
 .../ClusterServiceServletContainerTest.java        |   87 +
 .../cluster/ClusterServiceServletImplTest.java     |   64 +
 .../cloudstack/framework/config/ConfigKey.java     |    6 +-
 ...framework-config-system-context-inheritable.xml |    4 +-
 .../main/java/com/cloud/utils/db/GenericDao.java   |   26 +
 .../java/com/cloud/utils/db/GenericDaoBase.java    |   59 +-
 .../system/spring-framework-db-system-context.xml  |    2 +-
 .../apache/cloudstack/framework/events/Event.java  |   63 +-
 .../cloudstack/framework/events/EventBus.java      |    2 +
 .../framework/events/EventDistributor.java         |   35 +
 .../framework/events/EventDistributorImpl.java     |   68 +
 .../framework/events/EventDistributorImplTest.java |   67 +
 .../core/spring-framework-ipc-core-context.xml     |    6 +-
 .../src/test/resources/MessageBusTestContext.xml   |   10 +-
 .../resources/SampleManagementServerAppContext.xml |   12 +-
 .../framework/jobs/dao/VmWorkJobDao.java           |    1 +
 .../framework/jobs/dao/VmWorkJobDaoImpl.java       |   14 +-
 .../framework/jobs/dao/VmWorkJobDaoImplTest.java   |   68 +
 .../test/resources/AsyncJobManagerTestContext.xml  |    4 +-
 .../jobs/src/test/resources/commonContext.xml      |   20 +-
 .../apache/cloudstack/quota/QuotaManagerImpl.java  |  122 +-
 .../activationrule/presetvariables/Account.java    |    4 +-
 .../presetvariables/BackupOffering.java            |    1 +
 .../presetvariables/ComputeOffering.java           |    1 +
 .../presetvariables/ComputingResources.java        |    5 +
 .../activationrule/presetvariables/Domain.java     |    1 +
 .../presetvariables/GenericPresetVariable.java     |    4 +
 .../quota/activationrule/presetvariables/Host.java |    2 +
 .../presetvariables/PresetVariableDefinition.java  |   42 +
 .../presetvariables/PresetVariables.java           |   11 +
 .../quota/activationrule/presetvariables/Role.java |    1 +
 .../activationrule/presetvariables/Storage.java    |    4 +
 .../activationrule/presetvariables/Tariff.java     |   33 +
 .../activationrule/presetvariables/Value.java      |   50 +
 .../cloudstack/quota/constant/QuotaConfig.java     |    6 +-
 .../cloudstack/quota/constant/QuotaTypes.java      |   10 +
 .../apache/cloudstack/quota/vo/QuotaTariffVO.java  |   14 +
 .../cloudstack/quota/QuotaManagerImplTest.java     |   53 +-
 .../activationrule/presetvariables/ValueTest.java  |   14 +
 .../model/impl/DefaultModuleDefinitionSet.java     |    4 +-
 .../base/test-context-inheritable.xml              |    2 +-
 .../resources/testhierarchy/base/test-context.xml  |    4 +-
 .../testhierarchy/child1-1/test-context.xml        |    4 +-
 .../testhierarchy/child1/test-context-override.xml |    4 +-
 .../testhierarchy/child1/test-context.xml          |    6 +-
 .../testhierarchy/child2/test-context.xml          |    2 +-
 .../testhierarchy/excluded/test-context.xml        |    2 +-
 .../testhierarchy/excluded2/test-context.xml       |    2 +-
 .../orphan-of-excluded/test-context.xml            |    2 +-
 .../testhierarchy/orphan1/test-context.xml         |    2 +-
 packaging/README.md                                |    8 +-
 packaging/{el8 => centos7}/cloud-ipallocator.rc    |    0
 packaging/{el8 => centos7}/cloud.limits            |    0
 packaging/centos7/cloud.spec                       |  725 +++++++
 packaging/{el8 => centos7}/cloudstack-agent.te     |    0
 packaging/{el8 => centos7}/cloudstack-sccs         |    0
 packaging/centos7/replace.properties               |   59 +
 packaging/centos8                                  |    1 -
 packaging/{el8 => centos8}/cloud-ipallocator.rc    |    0
 packaging/{el8 => centos8}/cloud.limits            |    0
 packaging/centos8/cloud.spec                       |  702 ++++++
 packaging/{el8 => centos8}/cloudstack-agent.te     |    0
 packaging/{el8 => centos8}/cloudstack-sccs         |    0
 packaging/centos8/replace.properties               |   59 +
 packaging/debian/replace.properties                |    4 +-
 packaging/el8/cloud.spec                           |  698 ------
 packaging/el8/replace.properties                   |   59 -
 packaging/el9                                      |    2 +-
 packaging/package.sh                               |   16 +-
 packaging/suse15                                   |    2 +-
 packaging/systemd/cloudstack-agent.service         |    2 +
 packaging/systemd/cloudstack-management.default    |    2 +-
 packaging/systemd/cloudstack-management.service    |    2 +
 packaging/systemd/cloudstack-usage.service         |    2 +
 .../acl/DynamicRoleBasedAPIAccessChecker.java      |    4 +-
 .../acl/ProjectRoleBasedApiAccessChecker.java      |    8 +-
 .../spring-acl-static-role-based-context.xml       |    2 +-
 .../spring-explicit-dedication-context.xml         |    2 +-
 .../spring-host-anti-affinity-context.xml          |    2 +-
 .../spring-non-strict-host-affinity-context.xml    |    2 +-
 ...pring-non-strict-host-anti-affinity-context.xml |    2 +-
 .../api/response/ApiDiscoveryResponse.java         |   25 +-
 .../api/response/ApiParameterResponse.java         |   13 +-
 .../discovery/ApiDiscoveryServiceImpl.java         |   38 +-
 .../rate-limit/spring-rate-limit-context.xml       |    2 +-
 .../cloudstack/backup/veeam/VeeamClient.java       |   43 +-
 .../cloudstack/backup/veeam/VeeamClientTest.java   |   40 +-
 .../cloudstack/ca/provider/RootCAProvider.java     |   37 +-
 .../cloudstack/ca/provider/RootCAProviderTest.java |   62 +-
 .../cloudstack/api/command/QuotaBalanceCmd.java    |    6 +-
 .../api/command/QuotaPresetVariablesListCmd.java   |   66 +
 .../cloudstack/api/command/QuotaStatementCmd.java  |    6 +-
 .../api/command/QuotaTariffCreateCmd.java          |   20 +-
 .../cloudstack/api/command/QuotaTariffListCmd.java |   10 +-
 .../api/command/QuotaTariffUpdateCmd.java          |   16 +-
 .../response/QuotaPresetVariablesItemResponse.java |   47 +
 .../api/response/QuotaResponseBuilder.java         |    8 +
 .../api/response/QuotaResponseBuilderImpl.java     |  168 +-
 .../api/response/QuotaTariffResponse.java          |   61 +-
 .../org/apache/cloudstack/quota/QuotaService.java  |    2 -
 .../apache/cloudstack/quota/QuotaServiceImpl.java  |   64 +-
 .../api/response/QuotaResponseBuilderImplTest.java |   70 +-
 .../cloudstack/quota/QuotaServiceImplTest.java     |   10 -
 .../spring-dedicated-resources-core-context.xml    |    2 +-
 .../spring-implicit-dedication-context.xml         |   18 +-
 .../spring-user-concentrated-pod-context.xml       |    2 +-
 .../cloudstack/mom/inmemory/InMemoryEventBus.java  |    5 +
 .../apache/cloudstack/mom/kafka/KafkaEventBus.java |    8 +-
 .../cloudstack/mom/rabbitmq/RabbitMQEventBus.java  |    5 +-
 plugins/event-bus/webhook/pom.xml                  |   46 +
 .../org/apache/cloudstack/mom/webhook/Webhook.java |   48 +
 .../cloudstack/mom/webhook/WebhookApiService.java  |   44 +
 .../mom/webhook/WebhookApiServiceImpl.java         |  574 +++++
 .../cloudstack/mom/webhook/WebhookDelivery.java    |   39 +
 .../mom/webhook/WebhookDeliveryThread.java         |  287 +++
 .../cloudstack/mom/webhook/WebhookEventBus.java    |   88 +
 .../cloudstack/mom/webhook/WebhookService.java     |   63 +
 .../cloudstack/mom/webhook/WebhookServiceImpl.java |  354 +++
 .../webhook/api/command/user/CreateWebhookCmd.java |  167 ++
 .../webhook/api/command/user/DeleteWebhookCmd.java |   84 +
 .../api/command/user/DeleteWebhookDeliveryCmd.java |  126 ++
 .../command/user/ExecuteWebhookDeliveryCmd.java    |  132 ++
 .../api/command/user/ListWebhookDeliveriesCmd.java |  125 ++
 .../webhook/api/command/user/ListWebhooksCmd.java  |   95 +
 .../webhook/api/command/user/UpdateWebhookCmd.java |  136 ++
 .../api/response/WebhookDeliveryResponse.java      |  136 ++
 .../mom/webhook/api/response/WebhookResponse.java  |  149 ++
 .../cloudstack/mom/webhook/dao/WebhookDao.java     |   31 +
 .../cloudstack/mom/webhook/dao/WebhookDaoImpl.java |   99 +
 .../mom/webhook/dao/WebhookDeliveryDao.java        |   29 +
 .../mom/webhook/dao/WebhookDeliveryDaoImpl.java    |   73 +
 .../mom/webhook/dao/WebhookDeliveryJoinDao.java    |   33 +
 .../webhook/dao/WebhookDeliveryJoinDaoImpl.java    |   71 +
 .../cloudstack/mom/webhook/dao/WebhookJoinDao.java |   28 +
 .../mom/webhook/dao/WebhookJoinDaoImpl.java        |   45 +
 .../mom/webhook/vo/WebhookDeliveryJoinVO.java      |  182 ++
 .../mom/webhook/vo/WebhookDeliveryVO.java          |  174 ++
 .../cloudstack/mom/webhook/vo/WebhookJoinVO.java   |  234 ++
 .../cloudstack/mom/webhook/vo/WebhookVO.java       |  232 ++
 .../META-INF/cloudstack/webhook/module.properties  |   18 +
 .../webhook/spring-event-webhook-context.xml       |   41 +
 .../mom/webhook/WebhookApiServiceImplTest.java     |  253 +++
 .../mom/webhook/WebhookDeliveryThreadTest.java     |   62 +
 .../mom/webhook/WebhookEventBusTest.java           |  106 +
 .../api/command/user/CreateWebhookCmdTest.java     |  173 ++
 .../api/command/user/DeleteWebhookCmdTest.java     |  106 +
 .../command/user/DeleteWebhookDeliveryCmdTest.java |  108 +
 .../user/ExecuteWebhookDeliveryCmdTest.java        |  153 ++
 .../command/user/ListWebhookDeliveriesCmdTest.java |  141 ++
 .../api/command/user/ListWebhooksCmdTest.java      |  105 +
 .../api/command/user/UpdateWebhookCmdTest.java     |  163 ++
 .../spring-skip-heurestics-context.xml             |   18 +-
 .../manager/allocator/impl/RandomAllocator.java    |   16 +-
 .../spring-host-allocator-random-context.xml       |    2 +-
 .../spring-hyperv-compute-context.xml              |   18 +-
 .../spring-hyperv-discoverer-context.xml           |   18 +-
 .../kvm/resource/LibvirtComputingResource.java     |  109 +-
 .../kvm/resource/LibvirtStoragePoolDef.java        |  131 +-
 .../kvm/resource/LibvirtStoragePoolXMLParser.java  |   21 +-
 .../LibvirtCheckConvertInstanceCommandWrapper.java |   53 +
 .../LibvirtConvertInstanceCommandWrapper.java      |  204 +-
 .../LibvirtCopyRemoteVolumeCommandWrapper.java     |   17 +-
 .../LibvirtDeleteVMSnapshotCommandWrapper.java     |   17 +-
 .../wrapper/LibvirtGetRemoteVmsCommandWrapper.java |   29 +-
 .../LibvirtGetVmIpAddressCommandWrapper.java       |   47 +-
 .../LibvirtGetVolumeStatCommandWrapper.java        |   63 +
 .../wrapper/LibvirtMigrateCommandWrapper.java      |   86 +
 .../LibvirtMigrateVolumeCommandWrapper.java        |   41 +-
 .../LibvirtOvsFetchInterfaceCommandWrapper.java    |   76 +-
 .../LibvirtPrepareForMigrationCommandWrapper.java  |    5 +-
 .../LibvirtPrepareStorageClientCommandWrapper.java |   48 +
 .../wrapper/LibvirtReadyCommandWrapper.java        |   16 +-
 ...virtRevokeDirectDownloadCertificateWrapper.java |   29 +-
 ...tupDirectDownloadCertificateCommandWrapper.java |   48 +-
 .../wrapper/LibvirtStopCommandWrapper.java         |   16 +-
 ...ibvirtUnprepareStorageClientCommandWrapper.java |   45 +
 .../kvm/storage/FiberChannelAdapter.java           |   29 +
 .../hypervisor/kvm/storage/KVMStoragePool.java     |    3 +
 .../kvm/storage/KVMStoragePoolManager.java         |   11 +
 .../kvm/storage/KVMStorageProcessor.java           |   74 +-
 .../kvm/storage/LibvirtStorageAdaptor.java         |   77 +-
 .../kvm/storage/MultipathSCSIAdapterBase.java      |  262 +--
 .../kvm/storage/ScaleIOStorageAdaptor.java         |   79 +-
 .../hypervisor/kvm/storage/ScaleIOStoragePool.java |    5 +
 .../hypervisor/kvm/storage/StorageAdaptor.java     |   42 +-
 .../kvm-compute/spring-kvm-compute-context.xml     |    2 +-
 .../kvm/resource/LibvirtComputingResourceTest.java |   36 +
 .../kvm/resource/LibvirtStoragePoolDefTest.java    |   43 +-
 .../resource/LibvirtStoragePoolXMLParserTest.java  |   10 +-
 ...virtCheckConvertInstanceCommandWrapperTest.java |   67 +
 .../LibvirtConvertInstanceCommandWrapperTest.java  |  139 +-
 .../wrapper/LibvirtMigrateCommandWrapperTest.java  |   12 +
 ...LibvirtOvsFetchInterfaceCommandWrapperTest.java |  107 +
 ...bvirtPrepareForMigrationCommandWrapperTest.java |   45 +-
 ...virtPrepareStorageClientCommandWrapperTest.java |   87 +
 ...irectDownloadCertificateCommandWrapperTest.java |   91 +
 .../wrapper/LibvirtStopCommandWrapperTest.java     |   61 +
 ...rtUnprepareStorageClientCommandWrapperTest.java |   73 +
 .../kvm/storage/KVMStorageProcessorTest.java       |   66 +-
 .../kvm/storage/LibvirtStorageAdaptorTest.java     |   91 +
 .../kvm/storage/ScaleIOStorageAdaptorTest.java     |  191 ++
 .../ovm-compute/spring-ovm-compute-context.xml     |    2 +-
 .../spring-ovm-discoverer-context.xml              |    2 +-
 .../scripts/vm/hypervisor/ovm/ConfigFileOps.py     |    2 +-
 .../scripts/vm/hypervisor/ovm/OvmCommonModule.py   |    4 +-
 .../main/scripts/vm/hypervisor/ovm/configureOvm.sh |    4 +-
 .../com/cloud/agent/manager/MockVmManagerImpl.java |   79 +-
 .../spring-simulator-discover-context.xml          |    2 +-
 .../cloudstack/core/spring-ucs-core-context.xml    |    2 +-
 .../java/com/cloud/hypervisor/guru/VMwareGuru.java |  331 ++-
 .../vmware/manager/VmwareManagerImpl.java          |   13 +-
 .../hypervisor/vmware/resource/VmwareResource.java |   23 +-
 .../storage/resource/VmwareStorageProcessor.java   |    2 +-
 .../spring-vmware-compute-context.xml              |    2 +-
 .../com/cloud/hypervisor/guru/VMwareGuruTest.java  |  459 ++++
 .../xenserver/resource/CitrixResourceBase.java     |   26 +-
 .../wrapper/xenbase/CitrixStopCommandWrapper.java  |    4 +-
 .../xenserver/ExtraConfigurationUtility.java       |   50 +-
 .../xenserver/ExtraConfigurationUtilityTest.java   |   52 +
 .../cluster/KubernetesClusterHelperImpl.java       |   61 -
 .../cluster/KubernetesClusterManagerImpl.java      |  114 +-
 .../cluster/KubernetesClusterService.java          |    5 +-
 .../cluster/KubernetesServiceHelperImpl.java       |  128 ++
 .../KubernetesClusterActionWorker.java             |   14 +-
 .../KubernetesClusterDestroyWorker.java            |    6 +
 ...ernetesClusterResourceModifierActionWorker.java |  269 ++-
 .../KubernetesClusterScaleWorker.java              |   11 +-
 .../KubernetesClusterStartWorker.java              |    2 +-
 .../actionworkers/KubernetesClusterStopWorker.java |    6 +
 .../cluster/dao/KubernetesClusterVmMapDao.java     |    2 +
 .../cluster/dao/KubernetesClusterVmMapDaoImpl.java |   10 +
 .../cluster/utils/KubernetesClusterUtil.java       |    6 +-
 .../version/KubernetesVersionManagerImpl.java      |   65 +-
 .../version/AddKubernetesSupportedVersionCmd.java  |    6 +
 .../DeleteKubernetesSupportedVersionCmd.java       |    6 +
 .../UpdateKubernetesSupportedVersionCmd.java       |   14 +-
 .../cluster/CreateKubernetesClusterCmd.java        |   11 +-
 .../cluster/DeleteKubernetesClusterCmd.java        |   11 +
 ...oveVirtualMachinesFromKubernetesClusterCmd.java |    6 +
 .../cluster/ScaleKubernetesClusterCmd.java         |    6 +
 .../cluster/StartKubernetesClusterCmd.java         |   28 +-
 .../cluster/StopKubernetesClusterCmd.java          |    6 +
 .../cluster/UpgradeKubernetesClusterCmd.java       |    6 +
 .../spring-kubernetes-service-context.xml          |    4 +-
 .../main/resources/conf/k8s-control-node-add.yml   |   11 +
 .../src/main/resources/conf/k8s-control-node.yml   |   11 +
 .../src/main/resources/conf/k8s-node.yml           |   11 +
 .../cluster/KubernetesServiceHelperImplTest.java   |   87 +
 .../version/KubernetesVersionManagerImplTest.java  |   73 +
 .../version/KubernetesVersionServiceTest.java      |   22 +-
 .../apache/cloudstack/api/ListVMsMetricsCmd.java   |   13 +-
 .../cloudstack/metrics/MetricsServiceImpl.java     |    1 -
 .../cloudstack/response/VmMetricsResponse.java     |   11 -
 .../response/HostMetricsResponseTest.java          |   23 +
 .../META-INF/cloudstack/vcs/spring-vcs-context.xml |   18 +-
 .../network/cisco/associate-acl-policy-set.xml     |    2 +-
 .../scripts/network/cisco/create-dhcp-policy.xml   |   14 +-
 .../scripts/network/cisco/create-edge-firewall.xml |    2 +-
 .../network/cisco/create-nat-policy-ref.xml        |    2 +-
 .../network/cisco/create-source-nat-pool.xml       |    2 +-
 .../network/cisco/create-source-nat-rule.xml       |    6 +-
 .../src/main/resources/components-example.xml      |    4 +-
 .../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 +
 .../core/spring-internallb-core-context.xml        |    2 +-
 .../src/test/resources/lb_element.xml              |   20 +-
 .../src/test/resources/lb_mgr.xml                  |   24 +-
 .../src/test/resources/lb_svc.xml                  |   26 +-
 .../network/contrail/management/EventUtils.java    |   37 +-
 .../src/test/resources/commonContext.xml           |   20 +-
 .../src/test/resources/mysql_db_start.sh           |    2 +-
 .../src/test/resources/providerContext.xml         |    2 +-
 .../src/test/resources/publicNetworkContext.xml    |   20 +-
 .../cloud/network/guru/VxlanGuestNetworkGuru.java  |    2 +-
 plugins/pom.xml                                    |    1 +
 .../cloudstack/shutdown/ShutdownManagerImpl.java   |    5 +-
 .../driver/CloudStackImageStoreDriverImpl.java     |   44 +-
 .../spring-storage-image-default-context.xml       |    2 +-
 .../spring-storage-image-s3-context.xml            |    2 +-
 .../spring-storage-image-swift-context.xml         |    2 +-
 plugins/storage/volume/adaptive/README.md          |   41 +
 .../storage/datastore/adapter/ProviderAdapter.java |   22 +-
 .../datastore/adapter/ProviderAdapterFactory.java  |    4 +
 .../datastore/adapter/ProviderVolumeNamer.java     |    1 -
 .../driver/AdaptiveDataStoreDriverImpl.java        |  222 +-
 .../lifecycle/AdaptiveDataStoreLifeCycleImpl.java  |   17 +-
 .../AdaptivePrimaryDatastoreAdapterFactoryMap.java |    4 +
 .../provider/AdaptivePrimaryHostListener.java      |    2 +
 .../ElastistorPrimaryDataStoreLifeCycle.java       |    7 +-
 plugins/storage/volume/datera/pom.xml              |   18 +-
 .../lifecycle/DateraPrimaryDataStoreLifeCycle.java |   21 +-
 .../CloudStackPrimaryDataStoreLifeCycleImpl.java   |   17 +-
 .../spring-storage-volume-default-context.xml      |    2 +-
 ...loudStackPrimaryDataStoreLifeCycleImplTest.java |   21 +-
 .../adapter/flasharray/FlashArrayAdapter.java      |  274 +--
 .../flasharray/FlashArrayAdapterFactory.java       |    5 +
 .../adapter/flasharray/FlashArrayHost.java         |   46 +
 .../adapter/flasharray/FlashArrayVolume.java       |    4 +-
 .../adapter/flasharray/FlashArrayVolumePod.java    |   17 +-
 .../kvm/storage/LinstorStorageAdaptor.java         |   24 +-
 .../driver/LinstorPrimaryDataStoreDriverImpl.java  |   94 +-
 .../LinstorPrimaryDataStoreLifeCycleImpl.java      |    6 +-
 .../storage/datastore/util/LinstorUtil.java        |   42 +-
 .../snapshot/LinstorVMSnapshotStrategy.java        |  372 ++++
 .../spring-storage-volume-linstor-context.xml      |    2 +
 .../NexentaPrimaryDataStoreLifeCycle.java          |   14 +-
 .../datastore/adapter/primera/PrimeraAdapter.java  |  201 +-
 .../adapter/primera/PrimeraAdapterFactory.java     |    5 +
 .../datastore/adapter/primera/PrimeraHost.java     |   56 +
 .../adapter/primera/PrimeraHostDescriptor.java     |   40 +
 .../datastore/adapter/primera/PrimeraHostset.java  |   44 +-
 .../datastore/adapter/primera/PrimeraPort.java     |   40 +
 .../datastore/adapter/primera/PrimeraPortPos.java  |   47 +
 .../PrimeraVolumeCopyRequestParameters.java        |    2 +-
 .../primera/PrimeraVolumePromoteRequest.java       |    5 +-
 .../SamplePrimaryDataStoreLifeCycleImpl.java       |    8 +
 .../datastore/client/ScaleIOGatewayClient.java     |    2 +
 .../datastore/client/ScaleIOGatewayClientImpl.java |   26 +
 .../driver/ScaleIOPrimaryDataStoreDriver.java      |  127 +-
 .../ScaleIOPrimaryDataStoreLifeCycle.java          |   36 +-
 .../datastore/manager/ScaleIOSDCManager.java       |   47 +
 .../datastore/manager/ScaleIOSDCManagerImpl.java   |  347 +++
 .../datastore/provider/ScaleIOHostListener.java    |   66 +-
 .../storage/datastore/util/ScaleIOUtil.java        |   45 +
 .../spring-storage-volume-scaleio-context.xml      |    2 +
 .../driver/ScaleIOPrimaryDataStoreDriverTest.java  |   31 +-
 .../ScaleIOPrimaryDataStoreLifeCycleTest.java      |    5 +-
 .../SolidFirePrimaryDataStoreLifeCycle.java        |   16 +-
 .../SolidFireSharedPrimaryDataStoreLifeCycle.java  |    7 +-
 .../solidfire/src/test/resource/storageContext.xml |    8 +-
 plugins/storage/volume/storpool/README.md          |    2 +-
 .../StorPoolBackupSnapshotCommandWrapper.java      |   63 +-
 .../storage/datastore/api/StorPoolSnapshotDef.java |   98 +
 .../driver/StorPoolPrimaryDataStoreDriver.java     |   87 +-
 .../datastore/driver/StorPoolStatsCollector.java   |  111 +-
 .../StorPoolPrimaryDataStoreLifeCycle.java         |    6 +-
 .../storage/datastore/util/StorPoolUtil.java       |   41 +-
 .../storage/motion/StorPoolDataMotionStrategy.java |    9 +-
 .../snapshot/StorPoolConfigurationManager.java     |   12 +-
 .../storage/snapshot/StorPoolSnapshotStrategy.java |   26 +-
 .../spring-storage-volume-storpool-context.xml     |   18 +-
 .../api/command/LinkAccountToLdapCmd.java          |   17 +-
 .../apache/cloudstack/ldap/LdapManagerImpl.java    |    3 +-
 .../META-INF/cloudstack/md5/spring-md5-context.xml |    2 +-
 .../cloudstack/oauth2/OAuth2AuthManagerImpl.java   |   12 +-
 .../cloudstack/oauth2/OAuth2UserAuthenticator.java |   31 +-
 .../oauth2/OAuth2UserAuthenticatorTest.java        |   32 +-
 .../plaintext/spring-plaintext-context.xml         |    2 +-
 .../api/command/SAML2LoginAPIAuthenticatorCmd.java |   16 +-
 .../apache/cloudstack/saml/SAML2AuthManager.java   |   50 +-
 .../cloudstack/saml/SAML2AuthManagerImpl.java      |    9 +-
 .../command/SAML2LoginAPIAuthenticatorCmdTest.java |   24 +
 .../sha256salted/spring-sha256salted-context.xml   |    2 +-
 .../staticpin/spring-staticpin-context.xml         |    2 +-
 .../cloudstack/totp/spring-google-context.xml      |    2 +-
 pom.xml                                            |    3 +-
 .../SYSCONFDIR/rc.d/init.d/cloud-ipallocator.in    |    4 +-
 .../SYSCONFDIR/rc.d/init.d/cloud-ipallocator.in    |    4 +-
 .../SYSCONFDIR/init.d/cloud-ipallocator.in         |    4 +-
 .../SYSCONFDIR/rc.d/init.d/cloud-ipallocator.in    |    4 +-
 .../sles/SYSCONFDIR/init.d/cloud-ipallocator.in    |    4 +-
 .../ubuntu/SYSCONFDIR/init.d/cloud-ipallocator.in  |    6 +-
 python/lib/cloud_utils.py                          |    6 +-
 python/lib/cloudutils/configFileOps.py             |    2 +-
 python/lib/cloudutils/syscfg.py                    |    4 +-
 python/lib/cloudutils/utilities.py                 |    4 +-
 .../spring-quickcloud-core-context-override.xml    |    2 +-
 scripts/installer/createtmplt.sh                   |   28 +-
 scripts/installer/createvolume.sh                  |   26 +-
 scripts/installer/installcentos.sh                 |   10 +-
 scripts/installer/installdomp.sh                   |    6 +-
 scripts/installer/run_installer.sh                 |    6 +-
 scripts/network/domr/router_proxy.sh               |    6 +-
 scripts/network/exdhcp/dnsmasq_edithosts.sh        |   16 +-
 scripts/network/exdhcp/prepare_dhcpd.sh            |    4 +-
 scripts/network/exdhcp/prepare_dnsmasq.sh          |    8 +-
 scripts/network/juniper/application-add.xml        |    8 +-
 scripts/network/juniper/application-getone.xml     |    6 +-
 scripts/network/juniper/dest-nat-rule-add.xml      |    6 +-
 .../network/juniper/guest-vlan-filter-term-add.xml |   22 +-
 scripts/network/juniper/private-interface-add.xml  |   30 +-
 .../network/juniper/private-interface-getone.xml   |   14 +-
 .../juniper/private-interface-with-filters-add.xml |   32 +-
 scripts/network/juniper/proxy-arp-add.xml          |   22 +-
 scripts/network/juniper/proxy-arp-getall.xml       |   12 +-
 scripts/network/juniper/proxy-arp-getone.xml       |   22 +-
 .../network/juniper/public-ip-filter-term-add.xml  |   32 +-
 scripts/network/juniper/security-policy-group.xml  |   14 +-
 scripts/network/juniper/zone-interface-add.xml     |   18 +-
 scripts/network/juniper/zone-interface-getone.xml  |   18 +-
 scripts/network/ping/baremetal_user_data.py        |    2 +-
 scripts/storage/checkchildren.sh                   |    4 +-
 scripts/storage/installIso.sh                      |   14 +-
 scripts/storage/multipath/copyVolume.sh            |    2 +-
 scripts/storage/qcow2/create_private_template.sh   |    8 +-
 scripts/storage/qcow2/createtmplt.sh               |   20 +-
 scripts/storage/qcow2/createvm.sh                  |   58 +-
 scripts/storage/qcow2/createvolume.sh              |   20 +-
 scripts/storage/qcow2/delvm.sh                     |   14 +-
 scripts/storage/qcow2/get_domr_kernel.sh           |   12 +-
 scripts/storage/qcow2/get_iqn.sh                   |    4 +-
 scripts/storage/qcow2/importmpl.sh                 |   20 +-
 scripts/storage/qcow2/listvmdisk.sh                |   16 +-
 scripts/storage/qcow2/listvmdisksize.sh            |   12 +-
 scripts/storage/qcow2/listvmtmplt.sh               |   10 +-
 scripts/storage/qcow2/listvolume.sh                |   10 +-
 scripts/storage/qcow2/managevolume.sh              |   44 +-
 .../create_privatetemplate_from_snapshot_xen.sh    |   10 +-
 scripts/storage/secondary/createtmplt.sh           |   18 +-
 scripts/storage/secondary/createvolume.sh          |   20 +-
 scripts/storage/secondary/installIso.sh            |   14 +-
 scripts/storage/secondary/listvmtmplt.sh           |    8 +-
 scripts/storage/secondary/listvolume.sh            |    8 +-
 scripts/util/prepare_linmin.sh                     |    4 +-
 scripts/vm/hypervisor/kvm/kvmheartbeat.sh          |   22 +-
 scripts/vm/hypervisor/kvm/setup_agent.sh           |   38 +-
 scripts/vm/hypervisor/xenserver/check_heartbeat.sh |   10 +-
 .../vm/hypervisor/xenserver/cloud-clean-vlan.sh    |    4 +-
 .../hypervisor/xenserver/cloud-prepare-upgrade.sh  |    6 +-
 .../hypervisor/xenserver/cloud-propagate-vlan.sh   |    4 +-
 .../vm/hypervisor/xenserver/cloud-setup-bonding.sh |   12 +-
 .../xenserver/copy_vhd_from_secondarystorage.sh    |   12 +-
 .../xenserver/copy_vhd_to_secondarystorage.sh      |   12 +-
 .../create_privatetemplate_from_snapshot.sh        |   14 +-
 .../vm/hypervisor/xenserver/kill_copy_process.sh   |   10 +-
 scripts/vm/hypervisor/xenserver/launch_hb.sh       |    6 +-
 scripts/vm/hypervisor/xenserver/make_migratable.sh |    6 +-
 scripts/vm/hypervisor/xenserver/network_info.sh    |    4 +-
 scripts/vm/hypervisor/xenserver/ovs-get-bridge.sh  |    4 +-
 .../vm/hypervisor/xenserver/ovs-get-dhcp-iface.sh  |    4 +-
 scripts/vm/hypervisor/xenserver/perfmon.py         |    2 +-
 .../hypervisor/xenserver/setup_heartbeat_file.sh   |   14 +-
 scripts/vm/hypervisor/xenserver/setup_iscsi.sh     |    6 +-
 scripts/vm/hypervisor/xenserver/setupxenserver.sh  |    6 +-
 .../vm/hypervisor/xenserver/upgrade_snapshot.sh    |   14 +-
 .../vm/hypervisor/xenserver/upgrade_vnc_config.sh  |    4 +-
 scripts/vm/hypervisor/xenserver/xs_cleanup.sh      |    8 +-
 scripts/vm/network/ovs-pvlan-cleanup.sh            |    4 +-
 scripts/vm/network/ovs-pvlan-dhcp-host.sh          |    4 +-
 scripts/vm/network/ovs-pvlan-kvm-dhcp-host.sh      |    4 +-
 scripts/vm/network/ovs-pvlan-vm.sh                 |    4 +-
 scripts/vm/network/security_group.py               |    6 +-
 scripts/vm/network/vnet/modifyvlan.sh              |   30 +-
 scripts/vm/network/vnet/ovstunnel.py               |    2 +-
 scripts/vm/pingtest.sh                             |    6 +-
 scripts/vm/systemvm/injectkeys.sh                  |    4 +-
 server/conf/cloudstack-management.logrotate.in     |   28 +
 server/conf/log4j-cloud.xml.in                     |    2 +-
 .../manager/allocator/impl/FirstFitAllocator.java  |   46 +-
 .../allocator/impl/RecreateHostAllocator.java      |    3 +-
 .../java/com/cloud/alert/AlertManagerImpl.java     |    2 +-
 server/src/main/java/com/cloud/api/ApiDBUtils.java |   16 +-
 .../main/java/com/cloud/api/ApiResponseHelper.java |   14 +-
 server/src/main/java/com/cloud/api/ApiServer.java  |   59 +-
 .../java/com/cloud/api/query/QueryManagerImpl.java |  126 +-
 .../com/cloud/api/query/ViewResponseHelper.java    |    7 +-
 .../com/cloud/api/query/dao/HostJoinDaoImpl.java   |    5 +-
 .../java/com/cloud/api/query/dao/HostTagDao.java   |   30 -
 .../com/cloud/api/query/dao/HostTagDaoImpl.java    |  122 --
 .../api/query/dao/ServiceOfferingJoinDaoImpl.java  |   22 +-
 .../cloud/api/query/dao/SnapshotJoinDaoImpl.java   |   15 +
 .../cloud/api/query/dao/StoragePoolJoinDao.java    |    2 +-
 .../api/query/dao/StoragePoolJoinDaoImpl.java      |   12 +-
 .../com/cloud/api/query/dao/UserVmJoinDaoImpl.java |    1 +
 .../com/cloud/api/query/dao/VolumeJoinDaoImpl.java |   27 +-
 .../java/com/cloud/api/query/vo/HostJoinVO.java    |   14 +
 .../java/com/cloud/api/query/vo/HostTagVO.java     |   61 -
 .../java/com/cloud/api/query/vo/UserVmJoinVO.java  |    8 +
 .../java/com/cloud/api/query/vo/VolumeJoinVO.java  |    8 +-
 .../com/cloud/capacity/CapacityManagerImpl.java    |    2 +
 .../main/java/com/cloud/configuration/Config.java  |   18 +-
 .../configuration/ConfigurationManagerImpl.java    |  192 +-
 .../AgentBasedConsoleProxyManager.java             |   11 +-
 .../java/com/cloud/consoleproxy/AgentHookBase.java |    2 +-
 .../cloud/consoleproxy/ConsoleProxyManager.java    |   20 +-
 .../consoleproxy/ConsoleProxyManagerImpl.java      |   15 +-
 .../consoleproxy/StaticConsoleProxyManager.java    |    2 +-
 .../deploy/DeploymentPlanningManagerImpl.java      |   80 +-
 .../java/com/cloud/deploy/FirstFitPlanner.java     |   18 +-
 .../com/cloud/event/ActionEventInterceptor.java    |   13 +-
 .../java/com/cloud/event/ActionEventUtils.java     |   63 +-
 .../main/java/com/cloud/event/AlertGenerator.java  |   20 +-
 .../com/cloud/ha/HighAvailabilityManagerImpl.java  |   55 +-
 .../java/com/cloud/ha/dao/HighAvailabilityDao.java |    1 +
 .../com/cloud/ha/dao/HighAvailabilityDaoImpl.java  |   14 +-
 .../com/cloud/hypervisor/HypervisorGuruBase.java   |   15 +-
 .../kvm/discoverer/LibvirtServerDiscoverer.java    |   18 +-
 .../com/cloud/network/IpAddressManagerImpl.java    |   77 +-
 .../java/com/cloud/network/NetworkModelImpl.java   |    6 +
 .../java/com/cloud/network/NetworkServiceImpl.java |  276 +--
 .../com/cloud/network/as/AutoScaleManagerImpl.java |   12 +-
 .../network/element/VpcVirtualRouterElement.java   |   91 +-
 .../network/firewall/FirewallManagerImpl.java      |   95 +-
 .../com/cloud/network/guru/GuestNetworkGuru.java   |    1 +
 .../com/cloud/network/guru/PublicNetworkGuru.java  |    2 +-
 .../network/lb/LoadBalancingRulesManagerImpl.java  |   94 +-
 .../router/VirtualNetworkApplianceManagerImpl.java |   25 +-
 .../VpcVirtualNetworkApplianceManagerImpl.java     |   52 +-
 .../com/cloud/network/rules/RulesManagerImpl.java  |  262 ++-
 .../cloud/network/vpc/NetworkACLServiceImpl.java   |    4 +-
 .../java/com/cloud/network/vpc/VpcManagerImpl.java |   11 +
 .../network/vpn/RemoteAccessVpnManagerImpl.java    |  130 +-
 .../java/com/cloud/projects/ProjectManager.java    |    9 +-
 .../com/cloud/projects/ProjectManagerImpl.java     |   21 +-
 .../com/cloud/resource/ResourceManagerImpl.java    |   48 +-
 .../cloud/resourcelimit/CheckedReservation.java    |   33 +-
 .../resourcelimit/ResourceLimitManagerImpl.java    |   34 +-
 .../com/cloud/server/ManagementServerImpl.java     |  159 +-
 .../main/java/com/cloud/server/StatsCollector.java |   45 +-
 .../java/com/cloud/storage/StorageManagerImpl.java |  329 ++-
 .../cloud/storage/StoragePoolAutomationImpl.java   |   18 +-
 .../com/cloud/storage/VolumeApiServiceImpl.java    |   61 +-
 .../storage/listener/SnapshotStateListener.java    |   26 +-
 .../storage/listener/VolumeStateListener.java      |   43 +-
 .../secondary/SecondaryStorageVmManager.java       |   12 +
 .../cloud/storage/upload/UploadMonitorImpl.java    |    4 +-
 .../com/cloud/template/TemplateManagerImpl.java    |    7 +-
 .../java/com/cloud/usage/UsageServiceImpl.java     |   38 +-
 .../java/com/cloud/user/AccountManagerImpl.java    |   21 +-
 .../src/main/java/com/cloud/vm/UserVmManager.java  |   35 +-
 .../main/java/com/cloud/vm/UserVmManagerImpl.java  |  203 +-
 .../java/com/cloud/vm/UserVmStateListener.java     |   29 +-
 .../annotation/AnnotationManagerImpl.java          |   14 +-
 .../org/apache/cloudstack/ca/CAManagerImpl.java    |   11 +-
 .../cloudstack/cluster/ClusterDrsServiceImpl.java  |    2 +-
 .../diagnostics/to/DiagnosticsDataObject.java      |    5 +
 .../resource/ResourceCleanupServiceImpl.java       |  827 +++++++
 .../apache/cloudstack/snapshot/SnapshotHelper.java |    4 +-
 .../storage/template/VnfTemplateManagerImpl.java   |    4 +
 .../cloudstack/vm/UnmanagedVMsManagerImpl.java     |  335 ++-
 .../apache/cloudstack/webhook/WebhookHelper.java   |   28 +
 .../core/spring-server-core-managers-context.xml   |   10 +-
 .../core/spring-server-core-misc-context.xml       |    4 +-
 ...spring-server-alert-adapter-backend-context.xml |    2 +-
 ...spring-server-alert-adapter-compute-context.xml |    2 +-
 ...spring-server-alert-adapter-storage-context.xml |    2 +-
 .../spring-server-allocator-context.xml            |    2 +-
 .../server-fencer/spring-server-fencer-context.xml |    4 +-
 .../spring-server-investigator-context.xml         |    2 +-
 .../spring-server-template-adapter-context.xml     |    2 +-
 .../com/cloud/upgrade/databaseCreatorContext.xml   |    6 +-
 .../src/test/java/com/cloud/api/ApiServerTest.java |   64 +
 .../com/cloud/api/query/QueryManagerImplTest.java  |   71 +
 .../cloud/api/query/dao/UserVmJoinDaoImplTest.java |   40 +-
 .../ConfigurationManagerImplTest.java              |  105 +-
 .../cloud/event/ActionEventInterceptorTest.java    |   38 +-
 .../java/com/cloud/event/ActionEventUtilsTest.java |   20 +-
 .../cloud/ha/HighAvailabilityManagerImplTest.java  |    6 +
 .../cloud/ha/dao/HighAvailabilityDaoImplTest.java  |   68 +
 .../discoverer/LibvirtServerDiscovererTest.java    |   54 +
 .../com/cloud/network/MockNetworkModelImpl.java    |    4 +
 .../java/com/cloud/network/NetworkModelTest.java   |   12 +-
 .../cloud/network/as/AutoScaleManagerImplTest.java |   10 +-
 .../com/cloud/projects/ProjectManagerImplTest.java |   40 +-
 .../cloud/resource/MockResourceManagerImpl.java    |   17 +
 .../resourcelimit/CheckedReservationTest.java      |   39 +
 .../ResourceLimitManagerImplTest.java              |   98 +
 .../java/com/cloud/server/StatsCollectorTest.java  |    8 +-
 .../com/cloud/storage/StorageManagerImplTest.java  |  249 ++-
 .../template/HypervisorTemplateAdapterTest.java    |  100 +-
 .../com/cloud/user/AccountManagerImplTest.java     |   79 +-
 .../java/com/cloud/user/MockUsageEventDao.java     |   20 +
 .../java/com/cloud/vm/UserVmManagerImplTest.java   |   82 +-
 .../cloud/vpc/MockConfigurationManagerImpl.java    |    5 +-
 .../java/com/cloud/vpc/MockNetworkManagerImpl.java |   11 +
 .../java/com/cloud/vpc/MockNetworkModelImpl.java   |    5 +
 .../vpc/MockVpcVirtualNetworkApplianceManager.java |   40 +-
 .../cluster/ClusterDrsServiceImplTest.java         |   60 +-
 .../resource/ResourceCleanupServiceImplTest.java   |  656 ++++++
 .../cloudstack/vm/UnmanagedVMsManagerImplTest.java |   43 +-
 .../test/resources/StoragePoolDaoTestContext.xml   |    2 +-
 .../src/test/resources/VpcApiUnitTestContext.xml   |   22 +-
 server/src/test/resources/VpcTestContext.xml       |   22 +-
 server/src/test/resources/appLoadBalancer.xml      |   28 +-
 server/src/test/resources/testContext.xml          |   14 +-
 services/console-proxy/rdpconsole/README.txt       |    2 +-
 .../consoleproxy/ConsoleProxyNoVncClient.java      |   11 +-
 .../SecondaryStorageManagerImpl.java               |   15 +-
 .../storage/resource/HttpUploadServerHandler.java  |    3 +-
 .../storage/resource/IpTablesHelper.java           |   67 +
 .../resource/NfsSecondaryStorageResource.java      |   24 +-
 .../storage/template/DownloadManagerImpl.java      |   40 +-
 .../storage/template/UploadManagerImpl.java        |    5 +-
 ...spring-secondary-storage-discoverer-context.xml |    2 +-
 setup/bindir/cloud-migrate-databases.in            |    4 +-
 .../bindir/cloud-set-guest-password-configdrive.in |    4 +-
 setup/bindir/cloud-setup-baremetal.in              |   59 +-
 setup/bindir/cloud-setup-encryption.in             |   75 +-
 setup/db/221to222upgrade.sh                        |   10 +-
 setup/db/22beta4to22GA.sql                         |    8 +-
 setup/db/create-database-premium.sql               |    4 +-
 setup/db/create-database-simulator.sql             |    4 +-
 setup/db/create-database.sql                       |   14 +-
 setup/db/create-schema-premium.sql                 |   10 +-
 setup/db/create-schema-simulator.sql               |    4 +-
 setup/db/data-20to21.sql                           |    8 +-
 setup/db/data-22beta1to22beta2.sql                 |    4 +-
 setup/db/deploy-db-clouddev.sh                     |    4 +-
 setup/db/deploy-db-dev.sh                          |   10 +-
 setup/db/deploy-db-simulator.sh                    |   10 +-
 setup/db/index-20to21.sql                          |    4 +-
 setup/db/index-212to213.sql                        |    4 +-
 setup/db/postprocess-20to21.sql                    |    4 +-
 setup/db/server-setup.sql                          |    4 +-
 setup/db/server-setup.xml                          |   38 +-
 setup/db/templates.simulator.sql                   |    4 +-
 setup/db/templates.sql                             |    4 +-
 systemvm/debian/opt/cloud/bin/configure.py         |   27 +-
 systemvm/debian/opt/cloud/bin/cs/CsHelper.py       |    2 +-
 systemvm/debian/opt/cloud/bin/manage_service.sh    |   19 +
 systemvm/debian/opt/cloud/bin/passwd_server_ip.py  |    4 +-
 systemvm/debian/opt/cloud/bin/setup/patch.sh       |    6 +-
 systemvm/debian/opt/cloud/bin/vmdata.py            |   31 +-
 systemvm/debian/opt/cloud/bin/vr_cfg.sh            |    2 +-
 .../opt/cloud/templates/conntrackd.conf.templ      |    2 +-
 systemvm/debian/root/monitorServices.py            |    2 +-
 systemvm/patch-sysvms.sh                           |    2 +-
 test/bindirbak/cloud-run-test.in                   |    4 +-
 test/conf/config.xml                               |   10 +-
 test/conf/deploy.properties                        |    4 +-
 test/conf/deploy.xml                               |    8 +-
 test/conf/log4j-stdout.properties                  |    4 +-
 test/conf/log4j.properties                         |    4 +-
 test/conf/tool.properties                          |    4 +-
 .../maint/test_primary_storage_nfsmountopts_kvm.py |  184 ++
 .../maint/testpath_disable_enable_zone.py          |    2 +-
 .../component/maint/testpath_vMotion_vmware.py     |    2 +-
 .../component/test_acl_sharednetwork.py            |    2 +-
 ...est_acl_sharednetwork_deployVM-impersonation.py |    2 +-
 .../component/test_advancedsg_networks.py          |    2 +-
 test/integration/component/test_assign_vm.py       |    6 +-
 test/integration/component/test_egress_fw_rules.py |    6 +-
 test/integration/component/test_interop_xd_ccp.py  |    4 +-
 test/integration/component/test_ldap.py            |    7 +-
 test/integration/component/test_project_limits.py  |    2 +-
 test/integration/component/test_resource_limits.py |    2 +-
 .../component/test_rootvolume_resize.py            |    2 +-
 .../component/test_snapshots_improvement.py        |    2 +-
 test/integration/component/test_tags.py            |    2 +-
 test/integration/plugins/ldap/test_ldap.py         |   20 +-
 .../plugins/quota/test_quota_balance.py            |  191 ++
 .../plugins/storpool/TestStorPoolVolumes.py        |    4 +-
 test/integration/plugins/storpool/sp_util.py       |    4 +-
 .../integration/plugins/test_quota_tariff_order.py |  175 ++
 .../smoke/test_attach_multiple_volumes.py          |    2 +-
 test/integration/smoke/test_cluster_drs.py         |   63 +-
 .../test_enable_account_settings_for_domain.py     |    4 +-
 test/integration/smoke/test_events_resource.py     |   15 +-
 test/integration/smoke/test_host_tags.py           |  160 ++
 test/integration/smoke/test_kubernetes_clusters.py |    2 +-
 .../smoke/test_primary_storage_scope.py            |  178 ++
 test/integration/smoke/test_privategw_acl.py       |    2 +-
 .../smoke/test_privategw_acl_ovs_gre.py            |    2 +-
 test/integration/smoke/test_purge_expunged_vms.py  |  364 ++++
 test/integration/smoke/test_register_userdata.py   |   65 +-
 test/integration/smoke/test_scale_vm.py            |   10 +-
 test/integration/smoke/test_service_offerings.py   |    2 +-
 test/integration/smoke/test_vm_strict_host_tags.py |  552 +++++
 test/integration/smoke/test_webhook_delivery.py    |  212 ++
 test/integration/smoke/test_webhook_lifecycle.py   |  392 ++++
 test/integration/testpaths/testpath_vmlc.py        |    2 +-
 test/metadata/adapter.xml                          |   20 +-
 .../delegatedAdmin/delegated_admin_cleanup.xml     |   16 +-
 .../delegatedAdmin/delegated_admin_createusers.xml |   22 +-
 .../delegated_admin_verify_part1.xml               |   70 +-
 .../delegated_admin_verify_part2.xml               |  176 +-
 .../pickuser_domainlevel1_domainlevel2.xml         |   14 +-
 ...ickuser_domainlevel1admin_domainlevel1admin.xml |   14 +-
 .../pickuser_domainlevel1admin_rootadmin.xml       |   14 +-
 .../pickuser_domainlevel2_child_domainlevel1.xml   |   14 +-
 ...pickuser_domainlevel2_nonchild_domainlevel1.xml |   14 +-
 .../pickuser_domainlevel2_rootadmin1.xml           |   14 +-
 .../pickuser_rootadmin1_rootadmin2.xml             |   14 +-
 .../pickuser_rootadmin_vs_domainlevel1admin.xml    |   14 +-
 test/metadata/func/directnw_regression.xml         |   84 +-
 test/metadata/func/error_events.properties         |    4 +-
 test/metadata/func/expunge.xml                     |  166 +-
 test/metadata/func/external_firewall.xml           |   60 +-
 test/metadata/func/flatnetwork.xml                 |   76 +-
 test/metadata/func/ha.xml                          |   48 +-
 test/metadata/func/iso.xml                         |  122 +-
 test/metadata/func/loadbalancers.xml               |  226 +-
 test/metadata/func/localstorage_volume_test.xml    |   28 +-
 test/metadata/func/mgmtvmsync.xml                  |   68 +-
 test/metadata/func/portforwarding.xml              |   94 +-
 test/metadata/func/private_templates.xml           |   92 +-
 test/metadata/func/regression.xml                  |  432 ++--
 test/metadata/func/regression_events.properties    |    4 +-
 test/metadata/func/regression_new.xml              |  106 +-
 test/metadata/func/regression_test.xml             |  496 ++---
 test/metadata/func/regression_user.xml             |  300 +--
 test/metadata/func/regression_works.xml            |  186 +-
 test/metadata/func/resource_limits.xml             |  326 +--
 test/metadata/func/roughflatstress.xml             |   92 +-
 test/metadata/func/roughregression.xml             |  546 ++---
 test/metadata/func/sanity.xml                      |   48 +-
 test/metadata/func/securitygroups.xml              |   90 +-
 test/metadata/func/sharedstorage_volume_test.xml   |  194 +-
 test/metadata/func/snapshot_iso.xml                |   82 +-
 test/metadata/func/snapshots.xml                   |   88 +-
 test/metadata/func/snapshots_contd.xml             |   84 +-
 test/metadata/func/static_nat.xml                  |  170 +-
 test/metadata/func/templatedwnldstress.xml         |  120 +-
 test/metadata/func/userapi.xml                     |  148 +-
 test/metadata/func/vmapi.xml                       |  120 +-
 test/metadata/func/vmsync.xml                      |   44 +-
 test/scripts/bootstrap-regression.sh               |    6 +-
 test/scripts/build-env.sh                          |    6 +-
 test/scripts/certDeleteEC2.sh                      |    6 +-
 test/scripts/certSubmitEC2.sh                      |    6 +-
 test/scripts/checkLog.sh                           |    6 +-
 test/scripts/checkOutOfMemory.sh                   |    6 +-
 test/scripts/cleanparallel.sh                      |    6 +-
 test/scripts/deploy-and-run-regression.sh          |    6 +-
 test/scripts/deploy.sh                             |    6 +-
 test/scripts/deploycluster.sh                      |    4 +-
 test/scripts/executeUserAPI.sh                     |    6 +-
 test/scripts/invoke.sh                             |    6 +-
 test/scripts/regression.sh                         |    6 +-
 test/scripts/run.sh                                |    6 +-
 test/scripts/script_lock_test/test.sh              |    4 +-
 test/scripts/script_lock_test/test_task.sh         |    4 +-
 test/scripts/sign.sh                               |    6 +-
 test/scripts/signEC2.sh                            |    6 +-
 test/scripts/usage/allocated.sh                    |    6 +-
 test/scripts/usage/network.sh                      |    6 +-
 test/scripts/usage/running.sh                      |    6 +-
 test/scripts/usage/volume_usage.sh                 |    6 +-
 test/scripts/usercloud.properties                  |    4 +-
 test/scripts/xen/corrupttemplate.sh                |    6 +-
 test/scripts/xen/createfaketemplate.sh             |    6 +-
 test/scripts/xen/killvm.sh                         |    6 +-
 test/scripts/xen/listtemplate.sh                   |    6 +-
 test/scripts/xen/listvdi.sh                        |    6 +-
 test/scripts/xen/listvm.sh                         |    6 +-
 test/scripts/xen/ms.sh                             |    6 +-
 test/scripts/xen/removetemplate.sh                 |    8 +-
 test/scripts/xen/shutdown.sh                       |    6 +-
 test/scripts/xen/sleep.sh                          |    6 +-
 test/scripts/xen/ssh.sh                            |    6 +-
 .../com/cloud/sample/UserCloudAPIExecutor.java     |  188 --
 .../com/cloud/test/longrun/BuildGuestNetwork.java  |  124 --
 .../java/com/cloud/test/longrun/GuestNetwork.java  |  108 -
 .../com/cloud/test/longrun/PerformanceWithAPI.java |  191 --
 .../main/java/com/cloud/test/longrun/User.java     |  203 --
 .../com/cloud/test/longrun/VirtualMachine.java     |   96 -
 .../java/com/cloud/test/regression/ApiCommand.java |  849 --------
 .../java/com/cloud/test/regression/ConfigTest.java |  123 --
 .../cloud/test/regression/DelegatedAdminTest.java  |  127 --
 .../java/com/cloud/test/regression/Deploy.java     |  107 -
 .../com/cloud/test/regression/EventsApiTest.java   |  174 --
 .../main/java/com/cloud/test/regression/HA.java    |   78 -
 .../cloud/test/regression/LoadBalancingTest.java   |  140 --
 .../cloud/test/regression/PortForwardingTest.java  |  141 --
 .../java/com/cloud/test/regression/SanityTest.java |   84 -
 .../main/java/com/cloud/test/regression/Test.java  |   86 -
 .../java/com/cloud/test/regression/TestCase.java   |  139 --
 .../com/cloud/test/regression/TestCaseEngine.java  |  276 ---
 .../java/com/cloud/test/regression/VMApiTest.java  |   89 -
 .../main/java/com/cloud/test/stress/SshTest.java   |   91 -
 .../cloud/test/stress/StressTestDirectAttach.java  | 1354 ------------
 .../com/cloud/test/stress/TestClientWithAPI.java   | 2290 --------------------
 .../main/java/com/cloud/test/stress/WgetTest.java  |  151 --
 .../cloud/test/ui/AbstractSeleniumTestCase.java    |   55 -
 .../java/com/cloud/test/ui/AddAndDeleteAISO.java   |  127 --
 .../com/cloud/test/ui/AddAndDeleteATemplate.java   |  126 --
 .../java/com/cloud/test/ui/UIScenarioTest.java     |   86 -
 .../java/com/cloud/test/utils/ConsoleProxy.java    |  108 -
 .../java/com/cloud/test/utils/IpSqlGenerator.java  |   89 -
 .../java/com/cloud/test/utils/ProxyLoadTemp.java   |  110 -
 .../main/java/com/cloud/test/utils/SignEC2.java    |  144 --
 .../java/com/cloud/test/utils/SignRequest.java     |  112 -
 .../com/cloud/test/utils/SqlDataGenerator.java     |   49 -
 .../main/java/com/cloud/test/utils/SubmitCert.java |  199 --
 .../main/java/com/cloud/test/utils/TestClient.java |  386 ----
 .../java/com/cloud/test/utils/UtilsForTest.java    |  210 --
 tools/apidoc/build-apidoc.sh                       |    6 +-
 tools/apidoc/gen_toc.py                            |    6 +-
 tools/appliance/systemvmtemplate/template.json     |    2 +-
 tools/build/build_asf.sh                           |    8 +-
 tools/build/installer/debinstall_full.sh           |    8 +-
 tools/build/installer/rpminstall_full.sh           |   10 +-
 tools/build/setnextversion.sh                      |    4 +-
 tools/checkstyle/src/main/resources/cloud-pmd.xml  |    4 +-
 .../checkstyle/src/main/resources/cloud-style.xml  |   16 +-
 tools/devcloud-kvm/devcloud-kvm.sql                |    4 +-
 tools/devcloud-kvm/kvm.properties                  |    4 +-
 tools/devcloud4/README.md                          |   27 +-
 tools/devcloud4/advanced/README.md                 |   20 +-
 tools/devcloud4/basic/README.md                    |   14 +-
 .../attributes/database_server.rb                  |    4 +-
 .../binary-installation/attributes/default.rb      |    4 +-
 .../common/binary-installation/metadata.rb         |    4 +-
 .../binary-installation/recipes/database_server.rb |    4 +-
 .../common/binary-installation/recipes/default.rb  |    4 +-
 .../recipes/management_server.rb                   |    4 +-
 .../binary-installation/recipes/nfsshares.rb       |    4 +-
 tools/devcloud4/common/configure-network.sh        |    4 +-
 .../attributes/database_server.rb                  |    4 +-
 .../development-installation/attributes/default.rb |    4 +-
 .../files/default/createtmplt.sh                   |   20 +-
 .../common/development-installation/metadata.rb    |    4 +-
 .../recipes/database_server.rb                     |    4 +-
 .../development-installation/recipes/default.rb    |    4 +-
 .../development-installation/recipes/nfsshares.rb  |    4 +-
 .../recipes/system_templates.rb                    |    4 +-
 tools/devcloud4/prefill.sql                        |    4 +-
 tools/docker/README.md                             |    4 +-
 tools/docker/systemtpl.sh                          |    4 +-
 tools/eclipse/set-eclipse-profile.sh               |   44 +-
 tools/marvin/CHANGES.txt                           |    4 +-
 tools/marvin/DISCLAIMER.txt                        |   12 +-
 tools/marvin/MANIFEST.in                           |    4 +-
 tools/marvin/marvin/cloudstackException.py         |    2 +-
 tools/marvin/marvin/cloudstackTestCase.py          |    2 +-
 tools/marvin/marvin/config/test_data.py            |   19 +-
 tools/marvin/marvin/dbConnection.py                |    2 +-
 tools/marvin/marvin/deployDataCenter.py            |    2 +-
 tools/marvin/marvin/lib/base.py                    |   65 +-
 tools/marvin/marvin/lib/ncc.py                     |    2 +-
 tools/marvin/marvin/misc/build/CI.md               |   12 +-
 tools/marvin/marvin/misc/build/README.md           |    2 +-
 tools/marvin/marvin/misc/build/kvm.properties      |    4 +-
 tools/marvin/marvin/misc/build/redeploy.sh         |    6 +-
 tools/marvin/marvin/misc/build/xen.properties      |    4 +-
 .../marvin/sandbox/advanced/setup.properties       |    4 +-
 .../marvin/sandbox/advancedsg/setup.properties     |    4 +-
 tools/marvin/marvin/sandbox/basic/setup.properties |    4 +-
 .../demo/simulator/simulatordemo.properties        |    4 +-
 tools/marvin/marvin/sandbox/run-marvin.sh          |    4 +-
 tools/marvin/mvn-setup.py                          |    2 +
 tools/ngui/static/js/lib/angular.js                |    4 +-
 tools/transifex/README-transifex.txt               |    4 +-
 tools/transifex/sync-transifex-ui.sh               |   10 +-
 .../cloud_schema_comparision.sh                    |   10 +-
 ...test_config_between_fresh_and_upgraded_setup.sh |   12 +-
 tools/whisker/descriptor-for-packaging.xml         |  192 +-
 tools/whisker/descriptor.xml                       |  186 +-
 ui/public/config.json                              |    5 +-
 ui/public/index.html                               |    4 +-
 ui/public/locales/en.json                          |  100 +-
 ui/public/locales/pt_BR.json                       |    8 +-
 ui/src/components/header/CreateMenu.vue            |  181 +-
 ui/src/components/page/GlobalFooter.vue            |    2 +-
 ui/src/components/view/DateTimeFilter.vue          |  173 ++
 ui/src/components/view/DetailsTab.vue              |   20 +-
 ui/src/components/view/InfoCard.vue                |   58 +-
 .../InstanceVolumesStoragePoolSelectListView.vue   |    7 +-
 ui/src/components/view/ListResourceTable.vue       |   21 +-
 ui/src/components/view/ListView.vue                |   61 +-
 ui/src/components/view/ResourceLimitTab.vue        |    1 +
 ui/src/components/view/SearchView.vue              |  475 +++-
 ui/src/components/view/StatsTab.vue                |    7 +-
 ui/src/components/view/TestWebhookDeliveryView.vue |  278 +++
 ui/src/components/view/VolumesTab.vue              |   22 +-
 ui/src/components/view/WebhookDeliveriesTab.vue    |  526 +++++
 ui/src/components/view/stats/FilterStats.vue       |  165 --
 ui/src/components/widgets/Console.vue              |    9 +-
 ui/src/components/widgets/CopyLabel.vue            |   10 +-
 ui/src/components/widgets/ResourceLabel.vue        |   17 +-
 ui/src/config/router.js                            |   12 +
 ui/src/config/section/account.js                   |   25 +
 ui/src/config/section/compute.js                   |   25 +-
 ui/src/config/section/config.js                    |   22 +-
 ui/src/config/section/domain.js                    |   16 +
 ui/src/config/section/image.js                     |   17 +-
 ui/src/config/section/infra.js                     |    2 +-
 ui/src/config/section/infra/clusters.js            |    1 +
 ui/src/config/section/infra/hosts.js               |   14 +-
 ui/src/config/section/infra/managementServers.js   |    4 +-
 ui/src/config/section/infra/pods.js                |    1 +
 ui/src/config/section/infra/primaryStorages.js     |   26 +-
 ui/src/config/section/infra/secondaryStorages.js   |   18 +-
 ui/src/config/section/infra/systemVms.js           |    1 +
 ui/src/config/section/infra/zones.js               |    1 +
 ui/src/config/section/network.js                   |    6 +-
 ui/src/config/section/offering.js                  |   12 +-
 ui/src/config/section/role.js                      |    1 +
 ui/src/config/section/storage.js                   |   10 +-
 ui/src/config/section/tools.js                     |  149 ++
 ui/src/core/lazy_lib/components_use.js             |    2 +
 ui/src/core/lazy_lib/icons_use.js                  |   12 +
 ui/src/permission.js                               |    6 +-
 ui/src/store/modules/user.js                       |    5 +-
 ui/src/style/vars.less                             |    4 +
 ui/src/utils/plugins.js                            |   16 +-
 ui/src/utils/sort.js                               |   15 +-
 ui/src/views/AutogenView.vue                       |   19 +-
 ui/src/views/compute/AssignInstance.vue            |  167 +-
 ui/src/views/compute/CreateKubernetesCluster.vue   |    3 +-
 ui/src/views/compute/DeployVM.vue                  |  148 +-
 ui/src/views/compute/EditVM.vue                    |    3 +-
 ui/src/views/compute/KubernetesServiceTab.vue      |    7 +-
 ui/src/views/compute/MigrateVMStorage.vue          |    2 +-
 ui/src/views/compute/RegisterUserData.vue          |    9 +-
 .../views/compute/wizard/MultiNetworkSelection.vue |   32 +-
 ui/src/views/compute/wizard/NetworkSelection.vue   |    2 +-
 ui/src/views/compute/wizard/OwnershipSelection.vue |  257 +++
 .../views/compute/wizard/TemplateIsoRadioGroup.vue |    3 +
 ui/src/views/dashboard/CapacityDashboard.vue       |    6 +-
 ui/src/views/dashboard/UsageDashboard.vue          |  112 +-
 ui/src/views/image/RegisterOrUploadIso.vue         |   71 +-
 ui/src/views/image/UpdateISO.vue                   |    8 +-
 ui/src/views/infra/AddPrimaryStorage.vue           |   34 +-
 ui/src/views/infra/ChangeStoragePoolScope.vue      |  223 ++
 ui/src/views/infra/HostInfo.vue                    |   34 +-
 ui/src/views/infra/HostUpdate.vue                  |  183 ++
 ui/src/views/infra/UpdatePrimaryStorage.vue        |  195 ++
 ui/src/views/infra/network/IpRangesTabPublic.vue   |   63 +-
 ui/src/views/infra/zone/ZoneWizard.vue             |    2 +-
 ui/src/views/infra/zone/ZoneWizardAddResources.vue |    9 +
 ui/src/views/infra/zone/ZoneWizardLaunchZone.vue   |    9 +-
 .../views/infra/zone/ZoneWizardZoneDetailsStep.vue |    4 +-
 ui/src/views/network/AclListRulesTab.vue           |   26 +
 ui/src/views/network/CreateIsolatedNetworkForm.vue |  171 +-
 ui/src/views/network/CreateL2NetworkForm.vue       |  144 +-
 ui/src/views/network/VnfAppliancesTab.vue          |    4 +-
 ui/src/views/offering/AddComputeOffering.vue       |    9 +-
 ui/src/views/offering/AddDiskOffering.vue          |   24 +
 ui/src/views/plugins/ApiDocsPlugin.vue             |  222 ++
 ui/src/views/project/AddAccountOrUserToProject.vue |   70 +-
 .../views/project/iam/ProjectRolePermissionTab.vue |    2 +-
 ui/src/views/setting/ConfigurationValue.vue        |   19 +-
 ui/src/views/storage/CreateVolume.vue              |   44 +-
 ui/src/views/storage/MigrateVolume.vue             |    2 +-
 ui/src/views/tools/CreateWebhook.vue               |  359 +++
 ui/src/views/tools/ImportUnmanagedInstance.vue     |   37 +-
 ui/src/views/tools/TestWebhookDelivery.vue         |  202 ++
 usage/conf/cloudstack-usage.logrotate.in           |   28 +
 usage/conf/log4j-cloud_usage.xml.in                |    2 +-
 .../java/com/cloud/usage/UsageManagerImpl.java     |    7 +-
 .../src/main/resources/usageApplicationContext.xml |    2 +-
 usage/src/test/resources/cloud_usage1.xml          |   16 +-
 usage/src/test/resources/cloud_usage2.xml          |   16 +-
 usage/src/test/resources/cloud_usage3.xml          |   16 +-
 utils/pom.xml                                      |    4 +
 utils/src/main/java/com/cloud/utils/FileUtil.java  |   69 +-
 .../cloud/utils/component/ComponentContext.java    |   30 +-
 .../main/java/com/cloud/utils/net/NetUtils.java    |    5 +
 .../main/java/com/cloud/utils/script/Script.java   |  159 +-
 .../main/java/com/cloud/utils/ssh/SshHelper.java   |    8 +-
 .../cloudstack/utils/process/ProcessRunner.java    |   47 +-
 .../java/com/cloud/utils/script/ScriptTest.java    |   81 +
 .../utils/process/ProcessRunnerTest.java           |   63 +
 .../com/cloud/utils/QualifierTestContext.xml       |    6 +-
 .../utils/db/transactionContextBuilderTest.xml     |   10 +-
 utils/src/test/resources/testContext.xml           |    6 +-
 .../com/cloud/hypervisor/vmware/mo/BaseMO.java     |    7 +-
 .../hypervisor/vmware/mo/VirtualMachineMO.java     |  116 +-
 .../hypervisor/vmware/util/VmwareContext.java      |    7 +-
 .../cloud/hypervisor/vmware/util/VmwareHelper.java |   11 +-
 1316 files changed, 39157 insertions(+), 20432 deletions(-)
 create mode 100644 .github/linters/.markdown-lint.yml
 create mode 100644 .github/linters/codespell.txt
 delete mode 100644 
api/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterHelper.java
 create mode 100644 
api/src/main/java/com/cloud/kubernetes/cluster/KubernetesServiceHelper.java
 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/storage/ChangeStoragePoolScopeCmd.java
 create mode 100644 
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ListAffectedVmsForStorageScopeChangeCmd.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
 create mode 100644 
api/src/main/java/org/apache/cloudstack/api/response/PurgeExpungedResourcesResponse.java
 create mode 100644 
api/src/main/java/org/apache/cloudstack/api/response/VirtualMachineResponse.java
 create mode 100644 
api/src/main/java/org/apache/cloudstack/resource/ResourceCleanupService.java
 create mode 100644 
api/src/test/java/org/apache/cloudstack/api/command/admin/offering/UpdateServiceOfferingCmdTest.java
 create mode 100644 
api/src/test/java/org/apache/cloudstack/api/command/admin/resource/PurgeExpungedResourcesCmdTest.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/CheckConvertInstanceAnswer.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/CheckConvertInstanceCommand.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/GetVolumeStatAnswer.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/GetVolumeStatCommand.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/PrepareStorageClientAnswer.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/PrepareStorageClientCommand.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/UnprepareStorageClientAnswer.java
 create mode 100644 
core/src/main/java/com/cloud/agent/api/UnprepareStorageClientCommand.java
 create mode 100644 
core/src/main/java/org/apache/cloudstack/agent/routing/ManageServiceCommand.java
 create mode 100644 
core/src/main/resources/META-INF/cloudstack/event/module.properties
 create mode 100644 
core/src/main/resources/META-INF/cloudstack/event/spring-core-lifecycle-event-context-inheritable.xml
 create mode 100644 
engine/components-api/src/test/java/com/cloud/network/NetworkStateListenerTest.java
 delete mode 100644 
engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade41900to42000.java
 create mode 100644 
engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade41910to42000.java
 delete mode 100644 
engine/schema/src/main/resources/META-INF/db/schema-41900to42000.sql
 rename 
engine/schema/src/main/resources/META-INF/db/{schema-41900to42000-cleanup.sql 
=> schema-41910to42000-cleanup.sql} (100%)
 create mode 100644 
engine/schema/src/main/resources/META-INF/db/schema-41910to42000.sql
 create mode 100644 
engine/schema/src/main/resources/META-INF/db/views/cloud.webhook_delivery_view.sql
 create mode 100644 
engine/schema/src/main/resources/META-INF/db/views/cloud.webhook_view.sql
 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 
engine/storage/src/test/java/org/apache/cloudstack/storage/volume/datastore/PrimaryDataStoreHelperTest.java
 create mode 100644 
engine/storage/volume/src/main/java/org/apache/cloudstack/storage/datastore/lifecycle/BasePrimaryDataStoreLifeCycleImpl.java
 create mode 100644 
engine/storage/volume/src/test/java/org/apache/cloudstack/storage/datastore/lifecycle/BasePrimaryDataStoreLifeCycleImplTest.java
 create mode 100644 
framework/cluster/src/test/java/com/cloud/cluster/ClusterManagerImplTest.java
 create mode 100644 
framework/cluster/src/test/java/com/cloud/cluster/ClusterServiceServletContainerTest.java
 create mode 100644 
framework/cluster/src/test/java/com/cloud/cluster/ClusterServiceServletImplTest.java
 create mode 100644 
framework/events/src/main/java/org/apache/cloudstack/framework/events/EventDistributor.java
 create mode 100644 
framework/events/src/main/java/org/apache/cloudstack/framework/events/EventDistributorImpl.java
 create mode 100644 
framework/events/src/test/java/org/apache/cloudstack/framework/events/EventDistributorImplTest.java
 create mode 100644 
framework/jobs/src/test/java/org/apache/cloudstack/framework/jobs/dao/VmWorkJobDaoImplTest.java
 create mode 100644 
framework/quota/src/main/java/org/apache/cloudstack/quota/activationrule/presetvariables/PresetVariableDefinition.java
 create mode 100644 
framework/quota/src/main/java/org/apache/cloudstack/quota/activationrule/presetvariables/Tariff.java
 copy packaging/{el8 => centos7}/cloud-ipallocator.rc (100%)
 copy packaging/{el8 => centos7}/cloud.limits (100%)
 create mode 100644 packaging/centos7/cloud.spec
 copy packaging/{el8 => centos7}/cloudstack-agent.te (100%)
 copy packaging/{el8 => centos7}/cloudstack-sccs (100%)
 create mode 100644 packaging/centos7/replace.properties
 delete mode 120000 packaging/centos8
 rename packaging/{el8 => centos8}/cloud-ipallocator.rc (100%)
 rename packaging/{el8 => centos8}/cloud.limits (100%)
 create mode 100644 packaging/centos8/cloud.spec
 rename packaging/{el8 => centos8}/cloudstack-agent.te (100%)
 rename packaging/{el8 => centos8}/cloudstack-sccs (100%)
 create mode 100644 packaging/centos8/replace.properties
 delete mode 100644 packaging/el8/cloud.spec
 delete mode 100644 packaging/el8/replace.properties
 create mode 100644 
plugins/database/quota/src/main/java/org/apache/cloudstack/api/command/QuotaPresetVariablesListCmd.java
 create mode 100644 
plugins/database/quota/src/main/java/org/apache/cloudstack/api/response/QuotaPresetVariablesItemResponse.java
 create mode 100644 plugins/event-bus/webhook/pom.xml
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/Webhook.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookApiService.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookApiServiceImpl.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookDelivery.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookDeliveryThread.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookEventBus.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookService.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/WebhookServiceImpl.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/CreateWebhookCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/DeleteWebhookCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/DeleteWebhookDeliveryCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/ExecuteWebhookDeliveryCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/ListWebhookDeliveriesCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/ListWebhooksCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/command/user/UpdateWebhookCmd.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/response/WebhookDeliveryResponse.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/api/response/WebhookResponse.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookDao.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookDaoImpl.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookDeliveryDao.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookDeliveryDaoImpl.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookDeliveryJoinDao.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookDeliveryJoinDaoImpl.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookJoinDao.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/dao/WebhookJoinDaoImpl.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/vo/WebhookDeliveryJoinVO.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/vo/WebhookDeliveryVO.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/vo/WebhookJoinVO.java
 create mode 100644 
plugins/event-bus/webhook/src/main/java/org/apache/cloudstack/mom/webhook/vo/WebhookVO.java
 create mode 100644 
plugins/event-bus/webhook/src/main/resources/META-INF/cloudstack/webhook/module.properties
 create mode 100644 
plugins/event-bus/webhook/src/main/resources/META-INF/cloudstack/webhook/spring-event-webhook-context.xml
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/WebhookApiServiceImplTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/WebhookDeliveryThreadTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/WebhookEventBusTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/CreateWebhookCmdTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/DeleteWebhookCmdTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/DeleteWebhookDeliveryCmdTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/ExecuteWebhookDeliveryCmdTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/ListWebhookDeliveriesCmdTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/ListWebhooksCmdTest.java
 create mode 100644 
plugins/event-bus/webhook/src/test/java/org/apache/cloudstack/mom/webhook/api/command/user/UpdateWebhookCmdTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckConvertInstanceCommandWrapper.java
 create mode 100644 
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtGetVolumeStatCommandWrapper.java
 create mode 100644 
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtPrepareStorageClientCommandWrapper.java
 create mode 100644 
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtUnprepareStorageClientCommandWrapper.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckConvertInstanceCommandWrapperTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtOvsFetchInterfaceCommandWrapperTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtPrepareStorageClientCommandWrapperTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtSetupDirectDownloadCertificateCommandWrapperTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtStopCommandWrapperTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtUnprepareStorageClientCommandWrapperTest.java
 create mode 100644 
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/storage/LibvirtStorageAdaptorTest.java
 create mode 100644 
plugins/hypervisors/xenserver/src/test/java/org/apache/cloudstack/hypervisor/xenserver/ExtraConfigurationUtilityTest.java
 delete mode 100644 
plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterHelperImpl.java
 create mode 100644 
plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesServiceHelperImpl.java
 create mode 100644 
plugins/integrations/kubernetes-service/src/test/java/com/cloud/kubernetes/cluster/KubernetesServiceHelperImplTest.java
 create mode 100644 
plugins/integrations/kubernetes-service/src/test/java/com/cloud/kubernetes/version/KubernetesVersionManagerImplTest.java
 create mode 100644 
plugins/storage/volume/flasharray/src/main/java/org/apache/cloudstack/storage/datastore/adapter/flasharray/FlashArrayHost.java
 create mode 100644 
plugins/storage/volume/linstor/src/main/java/org/apache/cloudstack/storage/snapshot/LinstorVMSnapshotStrategy.java
 create mode 100644 
plugins/storage/volume/primera/src/main/java/org/apache/cloudstack/storage/datastore/adapter/primera/PrimeraHost.java
 create mode 100644 
plugins/storage/volume/primera/src/main/java/org/apache/cloudstack/storage/datastore/adapter/primera/PrimeraHostDescriptor.java
 create mode 100644 
plugins/storage/volume/primera/src/main/java/org/apache/cloudstack/storage/datastore/adapter/primera/PrimeraPort.java
 create mode 100644 
plugins/storage/volume/primera/src/main/java/org/apache/cloudstack/storage/datastore/adapter/primera/PrimeraPortPos.java
 create mode 100644 
plugins/storage/volume/scaleio/src/main/java/org/apache/cloudstack/storage/datastore/manager/ScaleIOSDCManager.java
 create mode 100644 
plugins/storage/volume/scaleio/src/main/java/org/apache/cloudstack/storage/datastore/manager/ScaleIOSDCManagerImpl.java
 create mode 100644 
plugins/storage/volume/storpool/src/main/java/org/apache/cloudstack/storage/datastore/api/StorPoolSnapshotDef.java
 create mode 100644 server/conf/cloudstack-management.logrotate.in
 delete mode 100644 server/src/main/java/com/cloud/api/query/dao/HostTagDao.java
 delete mode 100644 
server/src/main/java/com/cloud/api/query/dao/HostTagDaoImpl.java
 delete mode 100644 server/src/main/java/com/cloud/api/query/vo/HostTagVO.java
 create mode 100644 
server/src/main/java/org/apache/cloudstack/resource/ResourceCleanupServiceImpl.java
 create mode 100644 
server/src/main/java/org/apache/cloudstack/webhook/WebhookHelper.java
 create mode 100644 server/src/test/java/com/cloud/api/ApiServerTest.java
 create mode 100644 
server/src/test/java/com/cloud/ha/dao/HighAvailabilityDaoImplTest.java
 create mode 100644 
server/src/test/java/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscovererTest.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/component/maint/test_primary_storage_nfsmountopts_kvm.py
 create mode 100644 test/integration/plugins/quota/test_quota_balance.py
 create mode 100644 test/integration/plugins/test_quota_tariff_order.py
 create mode 100644 test/integration/smoke/test_host_tags.py
 create mode 100644 test/integration/smoke/test_primary_storage_scope.py
 create mode 100644 test/integration/smoke/test_purge_expunged_vms.py
 create mode 100644 test/integration/smoke/test_vm_strict_host_tags.py
 create mode 100644 test/integration/smoke/test_webhook_delivery.py
 create mode 100644 test/integration/smoke/test_webhook_lifecycle.py
 delete mode 100644 
test/src-not-used/main/java/com/cloud/sample/UserCloudAPIExecutor.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/longrun/BuildGuestNetwork.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/longrun/GuestNetwork.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/longrun/PerformanceWithAPI.java
 delete mode 100644 test/src-not-used/main/java/com/cloud/test/longrun/User.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/longrun/VirtualMachine.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/ApiCommand.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/ConfigTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/DelegatedAdminTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/Deploy.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/EventsApiTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/HA.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/LoadBalancingTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/PortForwardingTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/SanityTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/Test.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/TestCase.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/TestCaseEngine.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/regression/VMApiTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/stress/SshTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/stress/StressTestDirectAttach.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/stress/TestClientWithAPI.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/stress/WgetTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/ui/AbstractSeleniumTestCase.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteAISO.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/ui/AddAndDeleteATemplate.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/ui/UIScenarioTest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/ConsoleProxy.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/IpSqlGenerator.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/ProxyLoadTemp.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/SignEC2.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/SignRequest.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/SqlDataGenerator.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/SubmitCert.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/TestClient.java
 delete mode 100644 
test/src-not-used/main/java/com/cloud/test/utils/UtilsForTest.java
 create mode 100644 ui/src/components/view/DateTimeFilter.vue
 create mode 100644 ui/src/components/view/TestWebhookDeliveryView.vue
 create mode 100644 ui/src/components/view/WebhookDeliveriesTab.vue
 delete mode 100644 ui/src/components/view/stats/FilterStats.vue
 create mode 100644 ui/src/views/compute/wizard/OwnershipSelection.vue
 create mode 100644 ui/src/views/infra/ChangeStoragePoolScope.vue
 create mode 100644 ui/src/views/infra/HostUpdate.vue
 create mode 100644 ui/src/views/infra/UpdatePrimaryStorage.vue
 create mode 100644 ui/src/views/plugins/ApiDocsPlugin.vue
 create mode 100644 ui/src/views/tools/CreateWebhook.vue
 create mode 100644 ui/src/views/tools/TestWebhookDelivery.vue
 create mode 100644 usage/conf/cloudstack-usage.logrotate.in
 create mode 100644 utils/src/test/java/com/cloud/utils/script/ScriptTest.java
 create mode 100644 
utils/src/test/java/org/apache/cloudstack/utils/process/ProcessRunnerTest.java

Reply via email to