This is an automated email from the ASF dual-hosted git repository.
DaanHoogland pushed a change to branch ghi6934-test-ldap-connection
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
from e031775872e add test ldap test command and button
add 4e4a26b49ef dns: prevent creation of cross-tenant conflicting DNS
zones in the same server (#13946)
add 158fe4fad53 DNS Provider URL Validation (#13821)
add a7a293ed58d Update RAT plugin version from 0.12 to 0.18 (#12989)
add 6764ca5ea3f add prashanth
add 77fbb0f0333 github: skip Copilot reviews for draft PRs (#13996)
add 8fb3ad4c4e6 Updating pom.xml version numbers for release
4.24.0.0-SNAPSHOT
add 7ea1dca5167 Add NULL check during restoreVM operation when host is
removed (#13779)
add 7d45dcb4301 Migrations triggered by Maintenance (system) not reported
on VM events list (#13931)
add 5b49d6aa3f7 Errorprone static analysis tool integration and fixes of
reported issues (#12419)
add b09005faaa9 UI: make serviceofferingid optional when add network
offering (#13502)
add 3dc23056b73 server: fix lastpinged of hosts (#13030)
add f2dec381726 Merge branch '4.20' into 4.22
add c7605686190 ui: label instance volume sizes as GiB (#13831)
add a5954f94cf6 fix domain cleanup when a removed account owns templates
(#13630)
add 167320eb9fe Propagate StopAnswer error details up the call chain when
stopping a VM (#13558)
add 6434ff2c62a make sure virtual machine params exist (#12771)
add 8d26cb3da6c Support for migration of system VMs with volumes in the
GUI (#13144)
add 042ec7e1655 UI: fix usage records end date with local timezone (#13769)
add 15dcfd36e0d Merge branch '4.22'
add 3d70ce47f91 doc: add API parameter syntax examples for nodeofferings
and nodetemplates in createKubernetesCluster (#13902)
add 2cd8c5eddc7 Create bridge on dest host during SSVM migration when
using storage networks with dedicated vlan (#13379)
add e3c7b767998 Merge remote-tracking branch 'origin/4.20' into 4.22
add bef06d7462d Merge remote-tracking branch 'origin/4.22'
add b7a834ba922 fix test failure - due to forward merge
add 44ab7dd85d4 api: replace \" with \' in
CreateKubernetesClusterCmd.java (#14044)
add 4875fdecf81 Hide inactive offerings from User type accounts (#12865)
add 136ee82303e UI support for the scaleSystemVm API (#13321)
add 2c039526a6d [CI] Auto add license headers to `conf` files with
pre-commit (#12926)
add d0a9cbe945f pom: fix org.aspectj version drift (#13863)
add a723d44d1bb Updating version numbers for release 24.0.0-SNAPSHOT
(#14041)
add 469fa7ad318 [CI] Add pre-commit hook to stop ZIP files being committed
(#12930)
add 719dbe931fc Addition of type and VM filter in the backup listing API
(#13644)
add e9dbb5e36f9 security: run pre-commit autoupdate --freeze; Pin to sha
all hooks (#13855)
add 53d6516bcc9 merge acs-api-commands project into tools (#11098)
add 92946e1e6d6 improve test to read and set
nas.backup.incremental.enabled for the test zone (#13960)
add a53c5ae2404 server: treat a zero-capacity storage pool as full (#14052)
add 5c97979d458 ui: show related settings when (main) config value is
changed (#13965)
add d87c8049aae kvm: let libvirt remove RBD snapshots on volume delete
(#13763)
add bd35fb6f4b3 KVM: default x86 guests to vga video model when none is
configured (#13807)
add 068d393d012 allow update of ldap linked account (#13949)
add cddd2c6e57b Add timestamps to management, server and agent .err logs
(#12967)
add c77e16a7feb update comments and exception related to
kvm.snapshot.enabled configuration (#13733)
add 036493fd014 Fix backup type parameter version number in ListBackupsCmd
(#14078)
add 76b285bcd6d ui: implement event auto-suggestion in webhook filter tab
(#13227)
add e0f3006764d Network: default egress policy Allow for Isolated networks
on fresh installations (#13684)
add 8afd1148a2b Revert "Network: default egress policy Allow for Isolated
networks on fresh i…" (#14116)
add 7516e532f97 Add the pre-commit ecosystem to Dependabot (#14110)
add 2b3cca6cf47 SAML SLO does not clear session cookies on logout (#14017)
add 6ad0d75885f volume: reset pool_id on failed volume create for
zone-wide storage (#13611)
add f725211250a fix label key for gpudisplay (#13272)
add cdbda0ae158 engine: key removeNic work job lookup on nic uuid to fix
concurrent removal race (#13700)
add c860e0c214e kvm: fix RBD exclusive-lock leak that breaks
revertSnapshot on Ceph (#13835)
add f493d993dbf sharedfs: skip hypervisors without system templates
(#13830)
add 74e7105c9a5 ui: show selected template hypervisor in deploy form
(#13813)
add c7f2efad719 kvm: fix restore-and-attach of a backed up volume (#14007)
add a9b2f333d13 ui: filter accessible pools on live migration with storage
wizard (#14064)
add 10d3e115122 KVM: fix UEFI disk-only instance snapshot NVRAM handling
(#13020)
add c467686e4b9 [ConsoleProxy] Performance fixes on concurrency and
closing console sessions sockets and introduce reconnection window for console
sessions (#13683)
add af8691c6a95 Routed: get vm network statistics on Routed network
(#13105)
add 17098c15eb3 Fix lscpu speed checking order (#12190)
add 2327e83ed3e UI: Fix listing of resources for ASG belonging to a
project (#13187)
add c2c74c56e8f api: fix ProjectResponse.setVpcLimit assigning the network
limit (#14022)
add ac45be45e9e Change 2FA Field Type From Password to Text (#13723)
add 3a797993f3a Make `domainid` optional in `assignVirtualMachine` (#13213)
add 6a2e033322b apply the restored volume max IOPS to the max IOPS field
(#14024)
add bbf8c1a05ca server: do not NPE when a VPN provider returns no per-user
result (#14047)
add 223351c7a59 Add VR's system offering to network listing (#12862)
add 215ef984993 Allow cleaning up of networks stuck in Implementing state
(#12409)
add 245bbd9fe64 server: null-check public IP before the DNS/Source NAT
guard in createPublicLoadBalancerRule (#14027)
add 9c8bdf35843 config: persist config subgroups with their name and group
id (#14050)
add 1f761f0853a Update pmd config to make it pmd 7 compatible (#13168)
add 6e4413d59b7 engine: do not stall the host command queue on a failed
send in AgentAttache.sendNext (#14040)
add b93f603d315 api: fix inverted value comparison in
ImageStoreDetailResponse.equals (#14023)
add 02da97d172c Merge remote-tracking branch 'apache/4.20' into 4.22
add d0d49bc864a ui: fix build
add 4ce5291f709 Merge branch '4.22'
add 72014a0221c Fix KvmFileBasedStorageVmSnapshotStrategy unit test
failures (#14135)
add dc0ba1cba74 Packaging: accept normalized Marvin archive names (#13793)
add 79189c8d6a2 backup: remove the powered-off precondition for all backup
providers (#14094)
add 27722a5dd1b storage: KVM - enable RBD/Ceph volume encryption support
(#13556)
add b9a5977a2bb fix: use auth_client_required instead of removed
auth_supported for RBD (#13991)
add 90180340814 Add basic `.editorconfig` file to help maintain consistent
coding styles (#7562)
add 9030443eac5 SharedFS: fix NPE when accessing systemvm templates for
unsupported hypervisors (#13930)
add 2e450cbddf3 marvin: use pycryptodome instead of PyCrypt (#13594)
add a01fb0be34b server: copy template details to vm instance details when
import VM (#12793)
add e38b7a724b1 kvm: apply rbd_default_data_pool when creating volumes
from templates on RBD (#13361)
add 10037c85d61 Nas backup: Fix mount/unmount error handling and timeout
in LibvirtRestoreBackupCommandWrapper (#14006)
add cffa6e3603a backport: Incremental NAS backup support for KVM (#13074)
(#13877)
add a8c8c18e56a xenserver/xcpng: do not bypass secondary storage when copy
volumes between pools (#13750)
add 5812290da14 Merge remote-tracking branch 'apache/4.22'
add 602d9ec3e03 engine-schema: upgrade path for 24.0.0 (#14033)
add 0a5bf30af32 VMware to KVM: cold (VDDK) and warm (CBT) migration into
Ceph/RBD and Linstor, plus importVm adoption of existing RBD root volumes and
Linstor root/data volumes (#13656)
add 510d0ec3785 Revert "VMware to KVM: cold (VDDK) and warm (CBT)
migration into Ceph/RBD and Linstor, plus importVm adoption of existing RBD
root volumes and Linstor root/data volumes (#13656)"
add 1a48a87587c Add the ASF Allowlist check workflow (#14113)
add 7ed0cec53dc Add pre-commit hook to validate dependabot.yml (#14107)
add e6cd1239257 virtual router: Add route-maps to BGP peers for Routed
Mode (#9964)
add ed1db53815c .github: Upgrade docker/login-action to fix ASF Allowlist
failure (#14276)
add 17294cac7a6 dont show unathorized notification for prelogin (#14054)
add f03cffc19e6 feature: instance boot group and readiness rules (#13907)
add 68cff975ceb Upgrade Netris SDK version to 1.1.0 since 24.0 (#14365)
add a945a7c203e Develocity integration (#14394)
add d3f0700e978 Restore VMware-to-KVM migration changes from #13656
(#14256)
add 273b2ea32bf Fix importVM for use with dummy template (#14195)
add ac8d69c5c1d importVM improvements: RBD support, volume format, and
cluster selection (#14162)
add f23766d7c33 core: introduce a set of type adapters (#13624)
add 51c52490c95 Add schema upgrade path for 4.22.2 (#14179)
add 31b6855b708 linstor: escape dashes in the LVM volume group name of
snapshot paths (#14066)
add 250695ec331 Escape snapshot names in libvirt XML (#14201)
add 730d11fc57f [4.22] Fix CI Pre-commit failure (#14268)
add a772e8d13ba CKS/CSI: fix PVC deletion script to avoid '(standard
input)' and use kubectl -o name/jsonpath (#11968)
add 2e63c601fc2 Clarify KVM import template requirement (#13126)
add a4d3c664823 KVM: assign the hot-plugged NIC the next PCI slot above
existing NICs (monotonic interface naming) (#12826)
add 8261beca2fb ui: fix info card showing invalid template, iso link
(#13199)
add 8eeccdbb8a2 UI: don’t continue with session with an expired userid
(#13969)
add 5deb6a958df Improve date/timestamp handling performance in
GenericDaoBase and DateUtil (#13809)
add 4b2d387287a server: null-check requested IP in
assignSourceNatPublicIpAddress (#14025)
add cdd03d78748 Merge branch '4.20' into 4.22
add d4f5dff7311 Fix overly broad classpath scanning in
ReflectUtil.getClassesWithAnnotation() (#13427)
add 4e679ad8778 Ensure the detail value is not null when updating the vnc
access details of the vms with failed migrations on host maintenance (#13492)
add cc2f74f5c5d Ensure compliance with storage access groups when mounting
disabled storage pools (#13990)
add 2974af84f22 Make worker and API thread pool size configurable (#13565)
add 437adc81dec ui: add the missing label for the backup resource limit
(#14163)
add 1805dde42af kvm: look RBD volumes up through librbd instead of
refreshing the pool (#14188)
add 0931cf818e6 usage: widen usage_volume unique key to include vm_id
(#13933)
add 08831859497 Nasbackup quiesce fixes (#14305)
add dfff32edecf Netris: Improvements and fixes to the Netris plugin
(#13591)
add 546569bf24d Improve performance of listTemplates API (#13566)
add c7667d8c1fb VR: fix passive ftp through the virtual router on newer
system vm templates (#14330)
add 1e69e3a709c Allow removing VMs from instance groups (#14395)
add 768298a2111 Batch VM and host lookups in StorageManagerImpl to
eliminate N+1 queries during cleanup and pool connect (#13353)
add 99f348e0f94 Batch network lookups per NIC in NetworkOrchestrator to
eliminate N+1 queries during migration (#13354)
add b8a44e94951 lock only domains that have finite limits for checked
reservation (#14169)
add 5dfe75f77f3 Exclude Apache CXF dependency from kvm plugin (#13799)
add 376c1b40174 server: scope IPv6 security group member rules to the
exact host (#14037)
add dfaae63a461 Merge branch '4.20' into 4.22
add 60f88945d5e Merge branch '4.22'
add 2736abbeceb Fix build after merging 4.22
add af9764b87a6 Fix tests
add 98ae513689d validates the inputs for capacity bytes in update storage
pool to be positive (#14219)
add c76c01e21a1 network: add default isolated offering with source NAT and
egress allowed by default (#14286)
add 1abb5392428 fix: skip coverage grade comment on fork PRs (#14299)
add 89a2b025f25 ui: improve related global config popup (#14149)
add 1b4f19e5691 test: fix smoke test failures on xen/vmware (#13628)
add 3df8b2a4159 Revert "security groups: conntrack only if needed
(#10594)" (#14443)
add bd809515e6c Add support for java 21 for debian packages (#14418)
add a7697fe692a linstor: incremental snapshots on secondary storage
(#13746)
add 57e02515bab Add VM detail for KVM hint dedicated feature (#14254)
add d92ebed547f Fix VR start on shared network with multiple guest IP
ranges (#14282)
add 345db511a26 Fix bucket usage retrieval workflow for Ceph RGW (#13776)
add 90ef9b98cad kvm: restore backups into the volume they were taken from
(#13922)
add 15a9c76a0d2 Backup usage: bill each size for the time it applied, and
publish the metric only on change (#14310)
add def264402b4 StorPool support importing standalone disk volumes and
importVm from SHARED (#14389)
add de4ca48dfb3 Routed network ACL: match protocol-number rules with ip
protocol, not ip nexthdr (#14352)
add 8074c3e45e7 VPC egress ACL: end ACL_OUTBOUND with RETURN so its rules
stay in order (#14355)
add c4748669bfc UI: submit object storage creation using POST (#13768)
add 0d380a015a5 Linstor add support for incremental nasbackup (#14194)
add d31b5ff94e9 network: scope routed network/VPC subnets to a zone
(#14421)
add 2204e1b4a65 Reject AppCookie LB stickiness policy on Virtual Router
networks (#13315)
add e742aadfc97 Reject creating a snapshot with a duplicate name for the
same volume (#14089)
add 30ed411cffa Merge branch '4.20' into 4.22
add 9872bfd61fc kvm: use the base CPU frequency as the host speed and
expose the maximum frequency as a host detail (#14383)
add fd6b755cc1b Merge remote-tracking branch 'apache/4.22'
add b92ab08e690 Fix listPublicIpAddresses NPE on shared networks with a VR
(#14249)
add dccfe7d1f40 linstor: fix live migration with storage into Linstor when
the target host has no replica (#14344)
add c4c9731f0c8 Fix Cross zone templates registration for Edge Zones
(#12874)
add 5ffae3b047c Merge branch '4.22'
add 82e5ede3f9a linstor unit test fix
add e9af62c4ad5 flasharray/kvm/adaptive: NVMe-TCP transport for FlashArray
primary storage (#13061)
add c8abe2904b0 show a session expired warning when the session runs out
(#14369)
add b535ae8e6a9 Remove weekly status report and update model for daily
issue triage (#14488)
add 4dae995455e Improve Inherited Context Lookup in getConfigResources
(#11048)
add ac65e3ddab0 server,kvm: Avoid device id conflicts between data
volumes, CD-ROMs and the config drive ISO (#14407)
add b9b5436d6f2 Enhancing storagepool operations and snapshot related
fixes in NetApp ONTAP storage plugin (#13897)
add 454bba0f3e5 server: report distinct read/write volume throttle rates
(#14048)
add 56306ab52cc Merge remote-tracking branch 'apache/4.20' into 4.22
add fe8976babc9 Merge remote-tracking branch 'apache/4.22'
add 92e44bb8c33 Fix daily issue triage job (#14526)
add d6390bd5c30 Validate Storage Capacity Before Volume Create (#14314)
add 69be22c829a Merge n and address reviews
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 3 +-
.codespellrc | 2 +-
debian/cloudstack-marvin.postinst => .editorconfig | 15 +-
.gitattributes | 2 +-
.github/aw/actions-lock.json | 45 +-
.github/dependabot.yml | 11 +
.github/linters/codespell.txt | 2 +
.github/scripts/post-compile.sh | 14 +-
.../workflows/asf-allowlist-check.yml | 22 +-
.github/workflows/build.yml | 2 +
.github/workflows/ci.yml | 8 +
.github/workflows/daily-issue-triage.lock.yml | 1664 +-
.github/workflows/daily-issue-triage.md | 36 +-
.github/workflows/docker-cloudstack-simulator.yml | 5 +-
.github/workflows/main-sonar-check.yml | 3 +
.github/workflows/rat.yml | 4 +-
.github/workflows/sonar-check.yml | 6 +-
.github/workflows/weekly-repo-status.lock.yml | 1471 -
.github/workflows/weekly-repo-status.md | 141 -
.gitignore | 3 +
.mvn/develocity.xml | 50 +
.mvn/extensions.xml | 34 +
.pre-commit-config.yaml | 50 +-
PendingReleaseNotes | 52 +
agent/conf/log4j-cloud.xml.in | 16 +-
agent/pom.xml | 2 +-
.../java/com/cloud/agent/mockvm/MockVmMgr.java | 2 +-
.../cloud/agent/properties/AgentProperties.java | 13 +
api/pom.xml | 2 +-
.../com/cloud/agent/api/to/RemoteInstanceTO.java | 14 +
.../api/to/VmwareCbtChangedBlockRangeTO.java} | 42 +-
.../agent/api/to/VmwareCbtDiskSyncResultTO.java | 78 +
.../com/cloud/agent/api/to/VmwareCbtDiskTO.java | 85 +
.../agent/api/to/VmwareVddkSourceDiskTO.java} | 37 +-
api/src/main/java/com/cloud/event/EventTypes.java | 33 +
api/src/main/java/com/cloud/host/Host.java | 13 +
.../com/cloud/network/netris/NetrisService.java | 30 +-
.../java/com/cloud/offering/NetworkOffering.java | 1 +
.../java/com/cloud/resource/ResourceService.java | 2 +-
api/src/main/java/com/cloud/storage/Storage.java | 5 +-
.../java/com/cloud/storage/VolumeApiService.java | 18 +
.../java/com/cloud/vm/VirtualMachineProfile.java | 1 +
.../main/java/com/cloud/vm/VmDetailConstants.java | 3 +
.../cloudstack/api/ApiCommandResourceType.java | 5 +-
.../org/apache/cloudstack/api/ApiConstants.java | 43 +
.../admin/backup/UpdateBackupOfferingCmd.java | 4 +-
.../admin/network/NetworkOfferingBaseCmd.java | 8 +
.../admin/storage/AddObjectStoragePoolCmd.java | 2 +-
.../admin/storage/CreateStoragePoolCmd.java | 6 +-
.../admin/storage/UpdateStoragePoolCmd.java | 12 +-
.../admin/vm/CancelVmwareCbtMigrationCmd.java | 73 +
.../CheckVmwareCbtMigrationPrerequisitesCmd.java | 204 +
.../admin/vm/CutoverVmwareCbtMigrationCmd.java | 110 +
.../admin/vm/DeleteVmwareCbtMigrationCmd.java | 81 +
.../admin/vm/ImportUnmanagedInstanceCmd.java | 2 +-
.../api/command/admin/vm/ImportVmCmd.java | 38 +-
.../admin/vm/ListVmwareCbtMigrationsCmd.java | 109 +
.../admin/vm/StartVmwareCbtMigrationCmd.java | 361 +
.../admin/vm/SyncVmwareCbtMigrationCmd.java | 110 +
.../api/command/admin/volume/ImportVolumeCmd.java | 2 +-
.../command/admin/vpc/CreateVPCOfferingCmd.java | 28 +-
.../api/command/user/backup/ListBackupsCmd.java | 10 +
.../bootgroup/AddMemberToInstanceBootGroupCmd.java | 107 +
.../user/bootgroup/CreateInstanceBootGroupCmd.java | 142 +
.../CreateInstanceBootGroupReadinessRuleCmd.java | 132 +
.../user/bootgroup/DeleteInstanceBootGroupCmd.java | 81 +
.../DeleteInstanceBootGroupReadinessRuleCmd.java | 82 +
.../bootgroup/ListInstanceBootGroupMembersCmd.java | 96 +
.../ListInstanceBootGroupReadinessRulesCmd.java | 91 +
.../user/bootgroup/ListInstanceBootGroupsCmd.java | 83 +
.../user/bootgroup/RebootInstanceBootGroupCmd.java | 107 +
.../RemoveInstanceBootGroupMemberCmd.java | 81 +
.../user/bootgroup/StartInstanceBootGroupCmd.java | 99 +
.../user/bootgroup/StopInstanceBootGroupCmd.java | 101 +
.../user/bootgroup/UpdateInstanceBootGroupCmd.java | 127 +
.../UpdateInstanceBootGroupMemberCmd.java | 88 +
.../UpdateInstanceBootGroupReadinessRuleCmd.java | 110 +
.../api/command/user/dns/AddDnsServerCmd.java | 2 +-
.../api/command/user/dns/DeleteDnsServerCmd.java | 2 +-
.../api/command/user/dns/UpdateDnsServerCmd.java | 2 +-
.../api/command/user/vm/CreateVMFromBackupCmd.java | 9 +
.../api/command/user/vm/UpdateVMCmd.java | 2 +-
.../user/vmsnapshot/CreateVMSnapshotCmd.java | 3 +-
.../api/command/utils/OfferingUtils.java | 8 +-
.../api/response/ImageStoreDetailResponse.java | 4 +-
.../InstanceBootGroupMemberChildResponse.java | 57 +
.../response/InstanceBootGroupMemberResponse.java | 131 +
.../InstanceBootGroupReadinessRuleResponse.java | 148 +
.../api/response/InstanceBootGroupResponse.java | 160 +
.../api/response/NetworkOfferingResponse.java | 12 +
.../cloudstack/api/response/ProjectResponse.java | 2 +-
.../response/VmwareCbtMigrationCycleResponse.java | 111 +
.../response/VmwareCbtMigrationDiskResponse.java | 117 +
.../VmwareCbtMigrationPreflightDiskResponse.java | 114 +
...VmwareCbtMigrationPreflightFindingResponse.java | 55 +
.../VmwareCbtMigrationPreflightResponse.java | 284 +
.../api/response/VmwareCbtMigrationResponse.java | 288 +
.../api/response/VpcOfferingResponse.java | 8 +
.../network/Ipv4GuestSubnetNetworkMap.java | 2 +
.../org/apache/cloudstack/query/QueryService.java | 6 +
.../volume/VolumeImportUnmanageService.java | 12 +-
.../apache/cloudstack/vm/UnmanagedInstanceTO.java | 43 +
.../apache/cloudstack/vm/UnmanagedVMsManager.java | 50 +
.../cloudstack/vm/VmwareCbtChangedBlockInfo.java | 24 +-
.../cloudstack/vm/VmwareCbtChangedDiskInfo.java | 46 +
.../apache/cloudstack/vm/VmwareCbtDiskInfo.java | 67 +
.../VmwareCbtMigration.java} | 48 +-
.../cloudstack/vm/VmwareCbtMigrationCycle.java | 18 +-
.../cloudstack/vm/VmwareCbtMigrationDisk.java | 18 +-
.../cloudstack/vm/VmwareCbtMigrationManager.java | 46 +
.../cloudstack/vm/VmwareCbtMigrationService.java | 47 +
.../cloudstack/vm/VmwareCbtPreflightDiskInfo.java | 59 +
.../cloudstack/vm/VmwareCbtPreflightInfo.java | 138 +
.../cloudstack/vm/VmwareCbtPreflightNicInfo.java | 87 +
.../VmwareCbtSnapshotInfo.java} | 30 +-
.../cloudstack/vm/bootgroup/InstanceBootGroup.java | 23 +-
.../bootgroup/InstanceBootGroupMember.java} | 33 +-
.../vm/bootgroup/InstanceBootGroupService.java | 81 +
.../readiness/InstanceBootGroupReadinessRule.java | 81 +
.../vm/bootgroup/readiness/ReadinessChecker.java | 93 +
.../com/cloud/network/IsolationMethodTest.java | 2 +-
.../admin/storage/AddObjectStoragePoolCmdTest.java | 37 +
.../AddMemberToInstanceBootGroupCmdTest.java | 95 +
.../user/bootgroup/BaseBootGroupCmdTest.java | 88 +
.../bootgroup/CreateInstanceBootGroupCmdTest.java | 107 +
...reateInstanceBootGroupReadinessRuleCmdTest.java | 158 +
.../bootgroup/DeleteInstanceBootGroupCmdTest.java | 83 +
...eleteInstanceBootGroupReadinessRuleCmdTest.java | 83 +
.../ListInstanceBootGroupMembersCmdTest.java | 143 +
...ListInstanceBootGroupReadinessRulesCmdTest.java | 65 +
.../bootgroup/ListInstanceBootGroupsCmdTest.java | 62 +
.../bootgroup/RebootInstanceBootGroupCmdTest.java | 118 +
.../RemoveInstanceBootGroupMemberCmdTest.java | 85 +
.../bootgroup/StartInstanceBootGroupCmdTest.java | 118 +
.../bootgroup/StopInstanceBootGroupCmdTest.java | 110 +
.../bootgroup/UpdateInstanceBootGroupCmdTest.java | 104 +
.../UpdateInstanceBootGroupMemberCmdTest.java | 95 +
...pdateInstanceBootGroupReadinessRuleCmdTest.java | 139 +
.../api/response/ImageStoreDetailResponseTest.java | 45 +
.../api/response/ProjectResponseTest.java | 22 +-
client/bindir/cloud-update-xenserver-licenses.in | 7 +-
client/conf/log4j-cloud.xml.in | 18 +-
client/pom.xml | 2 +-
core/pom.xml | 2 +-
.../agent/api/CheckConvertInstanceCommand.java | 18 +
.../agent/api/CheckGuestAgentLivenessAnswer.java | 23 +-
.../agent/api/CheckGuestAgentLivenessCommand.java | 30 +-
.../cloud/agent/api/ConvertInstanceCommand.java | 21 +
.../agent/api/ImportConvertedInstanceCommand.java | 15 +
.../cloud/agent/api/VmwareCbtCleanupCommand.java | 100 +
.../cloud/agent/api/VmwareCbtCutoverCommand.java | 133 +
.../cloud/agent/api/VmwareCbtMigrationAnswer.java | 82 +
.../cloud/agent/api/VmwareCbtPrepareCommand.java | 110 +
.../cloud/agent/api/VmwareCbtRbdProbeCommand.java | 63 +
.../com/cloud/agent/api/VmwareCbtSyncCommand.java | 138 +
.../storage/CreateDiskOnlyVmSnapshotAnswer.java | 11 +
.../storage/CreateDiskOnlyVmSnapshotCommand.java | 17 +
.../storage/DeleteDiskOnlyVmSnapshotCommand.java | 25 +-
.../storage/RevertDiskOnlyVmSnapshotCommand.java | 22 +
.../agent/api/to/VmwareCbtTargetStorageType.java | 20 +-
.../agent/resource/virtualnetwork/VRScripts.java | 1 +
.../virtualnetwork/VirtualRoutingResource.java | 13 +
.../facade/AbstractConfigItemFacade.java | 2 +-
.../agent/transport/compat/AbstractTOAdaptor.java | 86 +
.../agent/transport/compat/DiskTOAdaptor.java | 16 +-
.../transport/compat/MigrateCommandAdaptor.java | 16 +-
.../agent/transport/compat/NetworkTOAdaptor.java | 16 +-
.../transport/compat/VirtualMachineTOAdaptor.java | 17 +-
.../com/cloud/network/HAProxyConfigurator.java | 2 +-
.../java/com/cloud/resource/RequestWrapper.java | 2 +-
.../main/java/com/cloud/serializer/GsonHelper.java | 44 +
.../directdownload/DirectDownloadCommand.java | 1 -
.../cloudstack/backup/TakeBackupCommand.java | 18 +
.../readiness/InstanceReadinessCheckAnswer.java | 57 +
.../readiness/InstanceReadinessCheckCommand.java | 73 +
.../core/spring-core-registry-core-context.xml | 15 +
.../InstanceReadinessCheckExecutionTest.java | 122 +
.../com/cloud/agent/transport/RequestTest.java | 138 +-
.../com/cloud/resource/ServerResourceBaseTest.java | 23 +-
.../InstanceReadinessCheckAnswerTest.java | 113 +
debian/changelog | 6 +
debian/cloudstack-marvin.install | 2 +-
debian/cloudstack-marvin.postinst | 2 +-
debian/control | 10 +-
debian/rules | 2 +-
developer/pom.xml | 2 +-
docs/vmware-cbt-migration.md | 457 +
docs/vmware-cbt/README.md | 1550 +
docs/vmware-cbt/architecture.md | 266 +
docs/vmware-linstor-migration.md | 238 +
engine/api/pom.xml | 2 +-
.../service/VolumeOrchestrationService.java | 6 +-
.../api/storage/PrimaryDataStoreDriver.java | 28 +
.../subsystem/api/storage/TemplateService.java | 2 +-
engine/components-api/pom.xml | 2 +-
.../java/com/cloud/storage/StorageManager.java | 4 +
.../java/com/cloud/template/TemplateManager.java | 20 +
engine/orchestration/pom.xml | 2 +-
.../java/com/cloud/agent/manager/AgentAttache.java | 12 +-
.../com/cloud/agent/manager/AgentManagerImpl.java | 107 +-
.../cloud/agent/manager/DirectAgentAttache.java | 5 +
.../com/cloud/vm/VirtualMachineManagerImpl.java | 106 +-
.../engine/orchestration/NetworkOrchestrator.java | 84 +-
.../engine/orchestration/VolumeOrchestrator.java | 28 +-
.../agent/manager/AgentAttacheSendNextTest.java | 85 +
.../cloud/agent/manager/AgentManagerImplTest.java | 37 +-
.../agent/manager/ConnectedAgentAttacheTest.java | 6 +-
.../cloud/vm/VirtualMachineManagerImplTest.java | 107 +-
.../orchestration/VolumeOrchestratorTest.java | 27 +-
engine/pom.xml | 2 +-
engine/schema/pom.xml | 16 +-
.../cloud/configuration/dao/ResourceLimitDao.java | 11 +
.../configuration/dao/ResourceLimitDaoImpl.java | 31 +
.../main/java/com/cloud/event/dao/EventDao.java | 13 +
.../java/com/cloud/event/dao/EventDaoImpl.java | 20 +
.../java/com/cloud/network/dao/NetworkDao.java | 2 +
.../java/com/cloud/network/dao/NetworkDaoImpl.java | 13 +
.../com/cloud/offerings/NetworkOfferingVO.java | 22 +-
.../java/com/cloud/storage/dao/SnapshotDao.java | 2 +
.../com/cloud/storage/dao/SnapshotDaoImpl.java | 16 +
.../java/com/cloud/storage/dao/VMTemplateDao.java | 2 +
.../com/cloud/storage/dao/VMTemplateDaoImpl.java | 8 +
.../com/cloud/upgrade/DatabaseUpgradeChecker.java | 18 +-
.../upgrade/SystemVmTemplateRegistration.java | 61 +-
.../cloud/upgrade/dao/DatabaseAccessObject.java | 2 +-
.../com/cloud/upgrade/dao/Upgrade41500to41510.java | 79 +-
.../com/cloud/upgrade/dao/Upgrade42300to2400.java | 18 +-
.../java/com/cloud/usage/dao/UsageBackupDao.java | 3 +-
.../com/cloud/usage/dao/UsageBackupDaoImpl.java | 52 +-
.../com/cloud/vm/VmwareCbtMigrationCycleVO.java | 171 +
.../com/cloud/vm/VmwareCbtMigrationDiskVO.java | 197 +
.../java/com/cloud/vm/VmwareCbtMigrationVO.java | 465 +
.../com/cloud/vm/dao/InstanceBootGroupDao.java | 20 +-
.../com/cloud/vm/dao/InstanceBootGroupDaoImpl.java | 60 +
.../cloud/vm/dao/InstanceBootGroupDetailsDao.java | 18 +-
.../vm/dao/InstanceBootGroupDetailsDaoImpl.java | 71 +
.../cloud/vm/dao/InstanceBootGroupMemberDao.java | 44 +
.../vm/dao/InstanceBootGroupMemberDaoImpl.java | 123 +
.../InstanceBootGroupReadinessCheckResultDao.java | 41 +
...stanceBootGroupReadinessCheckResultDaoImpl.java | 74 +
.../vm/dao/InstanceBootGroupReadinessRuleDao.java | 44 +
.../dao/InstanceBootGroupReadinessRuleDaoImpl.java | 119 +
.../InstanceBootGroupReadinessRuleDetailsDao.java} | 20 +-
...stanceBootGroupReadinessRuleDetailsDaoImpl.java | 69 +
.../src/main/java/com/cloud/vm/dao/NicDao.java | 2 +-
.../src/main/java/com/cloud/vm/dao/NicDaoImpl.java | 3 +-
.../main/java/com/cloud/vm/dao/VMInstanceDao.java | 2 +
.../java/com/cloud/vm/dao/VMInstanceDaoImpl.java | 16 +
.../cloud/vm/dao/VmwareCbtMigrationCycleDao.java | 16 +-
.../vm/dao/VmwareCbtMigrationCycleDaoImpl.java | 46 +
.../com/cloud/vm/dao/VmwareCbtMigrationDao.java | 62 +
.../cloud/vm/dao/VmwareCbtMigrationDaoImpl.java | 129 +
.../cloud/vm/dao/VmwareCbtMigrationDiskDao.java | 16 +-
.../vm/dao/VmwareCbtMigrationDiskDaoImpl.java | 44 +
.../cloudstack/backup/BackupUsageMetricVO.java | 107 +
.../org/apache/cloudstack/backup/BackupVO.java | 2 +-
.../backup/dao/BackupUsageMetricDao.java | 17 +-
.../backup/dao/BackupUsageMetricDaoImpl.java | 54 +
.../network/Ipv4GuestSubnetNetworkMapVO.java | 15 +-
.../network/dao/Ipv4GuestSubnetNetworkMapDao.java | 4 +-
.../dao/Ipv4GuestSubnetNetworkMapDaoImpl.java | 8 +-
.../storage/datastore/db/PrimaryDataStoreDao.java | 30 +-
.../datastore/db/PrimaryDataStoreDaoImpl.java | 59 +-
.../storage/datastore/db/SnapshotDataStoreDao.java | 7 +
.../datastore/db/SnapshotDataStoreDaoImpl.java | 46 +-
.../vm/bootgroup/InstanceBootGroupDetailsVO.java | 93 +
.../vm/bootgroup/InstanceBootGroupMemberVO.java | 116 +
.../InstanceBootGroupReadinessCheckResultVO.java | 113 +
.../InstanceBootGroupReadinessRuleDetailsVO.java | 99 +
.../InstanceBootGroupReadinessRuleVO.java | 149 +
.../bootgroup/InstanceBootGroupVO.java} | 98 +-
.../spring-engine-schema-core-daos-context.xml | 11 +
.../META-INF/db/schema-42210to42300-cleanup.sql | 54 +
...-cleanup.sql => schema-42300to2400-cleanup.sql} | 6 +-
.../resources/META-INF/db/schema-42300to2400.sql | 241 +
.../db/views/cloud.instance_boot_group_view.sql | 47 +
.../{nic_dns_view.sql => cloud.nic_dns_view.sql} | 0
.../cloud/network/as/AutoScaleVmProfileVOTest.java | 22 +-
.../com/cloud/network/dao/NetworkDaoImplTest.java | 24 +
.../com/cloud/storage/dao/SnapshotDaoImplTest.java | 80 +
.../cloud/upgrade/DatabaseUpgradeCheckerTest.java | 112 +-
.../upgrade/SystemVmTemplateRegistrationTest.java | 37 +
.../cloud/usage/dao/UsageBackupDaoImplTest.java | 175 +
.../cloud/vm/dao/InstanceBootGroupDaoImplTest.java | 99 +
.../dao/InstanceBootGroupDetailsDaoImplTest.java | 143 +
.../vm/dao/InstanceBootGroupMemberDaoImplTest.java | 144 +
...ceBootGroupReadinessCheckResultDaoImplTest.java | 120 +
.../InstanceBootGroupReadinessRuleDaoImplTest.java | 147 +
...ceBootGroupReadinessRuleDetailsDaoImplTest.java | 116 +
.../datastore/db/SnapshotDataStoreDaoImplTest.java | 61 +
engine/schema/templateConfig.sh | 75 +-
engine/schema/test_templateConfig.sh | 112 +
engine/service/pom.xml | 2 +-
engine/storage/cache/pom.xml | 2 +-
engine/storage/configdrive/pom.xml | 2 +-
engine/storage/datamotion/pom.xml | 2 +-
.../storage/motion/AncientDataMotionStrategy.java | 8 +
.../motion/StorageSystemDataMotionStrategy.java | 17 +-
.../motion/AncientDataMotionStrategyTest.java | 15 +
engine/storage/image/pom.xml | 2 +-
.../storage/image/TemplateServiceImpl.java | 16 +-
engine/storage/integration-test/pom.xml | 2 +-
engine/storage/object/pom.xml | 2 +-
engine/storage/pom.xml | 2 +-
engine/storage/snapshot/pom.xml | 2 +-
.../storage/snapshot/SnapshotObject.java | 11 +-
.../KvmFileBasedStorageVmSnapshotStrategy.java | 271 +-
.../vmsnapshot/ScaleIOVMSnapshotStrategy.java | 2 +-
.../storage/snapshot/SnapshotObjectTest.java | 101 +
.../KvmFileBasedStorageVmSnapshotStrategyTest.java | 550 +
.../datastore/ObjectInDataStoreManagerImpl.java | 5 +-
.../storage/endpoint/DefaultEndPointSelector.java | 8 +-
engine/storage/volume/pom.xml | 2 +-
.../storage/volume/VolumeServiceImpl.java | 10 +-
engine/userdata/cloud-init/pom.xml | 2 +-
engine/userdata/pom.xml | 2 +-
framework/agent-lb/pom.xml | 2 +-
framework/ca/pom.xml | 2 +-
framework/cluster/pom.xml | 2 +-
framework/config/pom.xml | 2 +-
.../framework/config/impl/ConfigDepotImpl.java | 3 +-
.../framework/config/impl/ConfigDepotImplTest.java | 25 +
framework/db/pom.xml | 2 +-
.../java/com/cloud/utils/db/GenericDaoBase.java | 93 +-
.../com/cloud/utils/db/GenericDaoBaseTest.java | 75 +
framework/direct-download/pom.xml | 2 +-
framework/events/pom.xml | 2 +-
framework/extensions/pom.xml | 6 +-
.../network/NetworkExtensionElement.java | 2 +-
framework/ipc/pom.xml | 2 +-
.../framework/serializer/OnwireClassRegistry.java | 2 +-
framework/jobs/pom.xml | 2 +-
.../framework/jobs/impl/AsyncJobManagerImpl.java | 99 +-
.../jobs/impl/AsyncJobManagerImplTest.java | 146 +
framework/kms/pom.xml | 2 +-
framework/managed-context/pom.xml | 2 +-
framework/pom.xml | 2 +-
framework/quota/pom.xml | 2 +-
framework/rest/.gitignore | 17 +
framework/rest/pom.xml | 2 +-
framework/security/pom.xml | 2 +-
framework/spring/lifecycle/pom.xml | 2 +-
framework/spring/module/pom.xml | 2 +-
.../model/impl/DefaultModuleDefinitionSet.java | 38 +-
.../factory/ModuleBasedContextFactoryTest.java | 3 +-
packaging/el8/cloud.spec | 6 +-
packaging/package.sh | 2 +-
packaging/suse15/cloud.spec | 6 +-
plugins/acl/dynamic-role-based/pom.xml | 2 +-
plugins/acl/project-role-based/pom.xml | 2 +-
plugins/acl/static-role-based/pom.xml | 2 +-
.../explicit-dedication/pom.xml | 2 +-
.../host-affinity/pom.xml | 2 +-
.../host-anti-affinity/pom.xml | 2 +-
.../non-strict-host-affinity/pom.xml | 2 +-
.../non-strict-host-anti-affinity/pom.xml | 2 +-
plugins/alert-handlers/snmp-alerts/pom.xml | 2 +-
plugins/alert-handlers/syslog-alerts/pom.xml | 2 +-
plugins/api/discovery/pom.xml | 2 +-
plugins/api/rate-limit/pom.xml | 2 +-
plugins/api/solidfire-intg-test/pom.xml | 2 +-
plugins/api/vmware-sioc/pom.xml | 2 +-
plugins/backup/dummy/pom.xml | 2 +-
plugins/backup/kboss/pom.xml | 2 +-
plugins/backup/nas/pom.xml | 2 +-
.../cloudstack/backup/NASBackupChainKeys.java | 18 +
.../cloudstack/backup/NASBackupProvider.java | 274 +-
.../cloudstack/backup/NASBackupProviderTest.java | 374 +-
plugins/backup/networker/pom.xml | 2 +-
plugins/backup/veeam/pom.xml | 2 +-
plugins/ca/root-ca/pom.xml | 2 +-
plugins/database/mysql-ha/pom.xml | 2 +-
plugins/database/quota/pom.xml | 2 +-
plugins/dedicated-resources/pom.xml | 2 +-
.../implicit-dedication/pom.xml | 2 +-
.../user-concentrated-pod/pom.xml | 2 +-
.../deployment-planners/user-dispersing/pom.xml | 2 +-
plugins/dns/powerdns/pom.xml | 2 +-
plugins/drs/cluster/balanced/pom.xml | 2 +-
plugins/drs/cluster/condensed/pom.xml | 2 +-
plugins/event-bus/inmemory/pom.xml | 2 +-
plugins/event-bus/kafka/pom.xml | 2 +-
plugins/event-bus/rabbitmq/pom.xml | 2 +-
plugins/event-bus/webhook/pom.xml | 2 +-
plugins/ha-planners/skip-heurestics/pom.xml | 2 +-
plugins/hypervisors/baremetal/pom.xml | 2 +-
plugins/hypervisors/external/pom.xml | 2 +-
plugins/hypervisors/hyperv/pom.xml | 2 +-
.../test/HypervDirectConnectResourceTest.java | 3 +
plugins/hypervisors/kvm/pom.xml | 38 +-
.../hypervisor/kvm/resource/BridgeVifDriver.java | 9 +-
.../hypervisor/kvm/resource/KVMHAMonitor.java | 6 +
.../kvm/resource/LibvirtComputingResource.java | 319 +-
.../hypervisor/kvm/resource/LibvirtVMDef.java | 38 +-
.../wrapper/LibvirtBaseConvertCommandWrapper.java | 73 +-
.../LibvirtCheckConvertInstanceCommandWrapper.java | 15 +
...bvirtCheckGuestAgentLivenessCommandWrapper.java | 99 +
.../wrapper/LibvirtCheckVolumeCommandWrapper.java | 76 +-
.../LibvirtConvertInstanceCommandWrapper.java | 748 +-
...virtCreateDiskOnlyVMSnapshotCommandWrapper.java | 377 +-
.../LibvirtCreateVMSnapshotCommandWrapper.java | 3 +-
...virtDeleteDiskOnlyVMSnapshotCommandWrapper.java | 38 +
.../wrapper/LibvirtGetVncPortCommandWrapper.java | 1 +
.../LibvirtGetVolumesOnStorageCommandWrapper.java | 32 +-
...bvirtImportConvertedInstanceCommandWrapper.java | 21 +-
.../LibvirtManageSnapshotCommandWrapper.java | 3 +-
.../wrapper/LibvirtPlugNicCommandWrapper.java | 105 +
.../wrapper/LibvirtReadyCommandWrapper.java | 11 +
.../wrapper/LibvirtResizeVolumeCommandWrapper.java | 42 +-
.../LibvirtRestoreBackupCommandWrapper.java | 134 +-
...virtRevertDiskOnlyVMSnapshotCommandWrapper.java | 94 +-
.../wrapper/LibvirtTakeBackupCommandWrapper.java | 256 +-
.../resource/wrapper/LibvirtUtilitiesHelper.java | 5 +-
.../LibvirtVmwareCbtCleanupCommandWrapper.java | 339 +
.../LibvirtVmwareCbtCutoverCommandWrapper.java | 794 +
.../LibvirtVmwareCbtPrepareCommandWrapper.java | 506 +
.../LibvirtVmwareCbtRbdProbeCommandWrapper.java | 218 +
.../LibvirtVmwareCbtSyncCommandWrapper.java | 489 +
.../wrapper/VmwareCbtCommandOutputLogger.java | 83 +
.../resource/wrapper/VmwareCbtCommandResult.java | 27 +-
.../kvm/resource/wrapper/VmwareCbtSyncPlan.java | 273 +
.../kvm/storage/IscsiAdmStorageAdaptor.java | 138 +-
.../hypervisor/kvm/storage/KVMPhysicalDisk.java | 4 +-
.../hypervisor/kvm/storage/KVMStoragePool.java | 76 +
.../kvm/storage/KVMStoragePoolManager.java | 11 +-
.../kvm/storage/KVMStorageProcessor.java | 139 +-
.../kvm/storage/LibvirtStorageAdaptor.java | 312 +-
.../hypervisor/kvm/storage/LibvirtStoragePool.java | 31 +-
.../kvm/storage/MultipathNVMeOFAdapterBase.java | 722 +
.../kvm/storage/MultipathNVMeOFPool.java | 165 +
.../kvm/storage/MultipathSCSIAdapterBase.java | 12 +-
.../hypervisor/kvm/storage/NVMeTCPAdapter.java | 51 +
.../apache/cloudstack/utils/linux/KVMHostInfo.java | 34 +-
.../apache/cloudstack/utils/qemu/QemuCommand.java | 1 +
.../cloudstack/utils/qemu/QemuImageOptions.java | 11 +-
.../org/apache/cloudstack/utils/qemu/QemuImg.java | 108 +-
.../apache/cloudstack/utils/qemu/QemuObject.java | 1 +
.../apache/cloudstack/utils/rbd/RbdEncryption.java | 294 +
.../kvm/resource/LibvirtComputingResourceTest.java | 100 +
.../hypervisor/kvm/resource/LibvirtVMDefTest.java | 21 +
...virtCheckConvertInstanceCommandWrapperTest.java | 65 +
...tCheckGuestAgentLivenessCommandWrapperTest.java | 236 +
.../LibvirtCheckVolumeCommandWrapperTest.java | 238 +
.../LibvirtConvertInstanceCommandWrapperTest.java | 123 +-
...ibvirtDiskOnlyVMSnapshotCommandWrapperTest.java | 821 +
...tImportConvertedInstanceCommandWrapperTest.java | 110 +
.../wrapper/LibvirtLinstorImportListingTest.java | 123 +
.../wrapper/LibvirtPlugNicCommandWrapperTest.java | 147 +
.../LibvirtRestoreBackupCommandWrapperTest.java | 363 +-
.../LibvirtTakeBackupCommandWrapperTest.java | 382 +
.../wrapper/LibvirtUtilitiesHelperTest.java | 27 +
.../LibvirtVmwareCbtCleanupCommandWrapperTest.java | 239 +
.../LibvirtVmwareCbtCutoverCommandWrapperTest.java | 412 +
.../LibvirtVmwareCbtPrepareCommandWrapperTest.java | 254 +
...LibvirtVmwareCbtRbdProbeCommandWrapperTest.java | 167 +
.../LibvirtVmwareCbtSyncCommandWrapperTest.java | 246 +
.../resource/wrapper/VmwareCbtSyncPlanTest.java | 98 +
.../kvm/storage/KVMPhysicalDiskTest.java | 6 +-
.../kvm/storage/KVMStorageProcessorTest.java | 99 +
.../kvm/storage/LibvirtStoragePoolTest.java | 56 +
.../kvm/storage/ScaleIOStoragePoolTest.java | 2 +
.../cloudstack/utils/linux/KVMHostInfoTest.java | 46 +
.../apache/cloudstack/utils/qemu/QemuImgTest.java | 19 +
.../cloudstack/utils/rbd/RbdEncryptionTest.java | 166 +
plugins/hypervisors/ovm/pom.xml | 2 +-
.../scripts/vm/hypervisor/ovm/OvmOCFS2Module.py | 4 +-
plugins/hypervisors/ovm3/.gitignore | 17 +
plugins/hypervisors/ovm3/pom.xml | 2 +-
.../hypervisor/ovm3/objects/ConnectionTest.java | 2 +-
.../com/cloud/hypervisor/ovm3/objects/NtpTest.java | 2 +
plugins/hypervisors/simulator/pom.xml | 2 +-
.../com/cloud/resource/SimulatorDiscoverer.java | 27 +-
plugins/hypervisors/ucs/pom.xml | 2 +-
plugins/hypervisors/vmware/pom.xml | 2 +-
.../manager/VmwareCbtMigrationServiceImpl.java | 602 +
.../cloudstack/core/spring-vmware-core-context.xml | 2 +
.../vmware/VmwareDatacenterApiUnitTest.java | 15 +-
.../manager/VmwareCbtMigrationServiceImplTest.java | 70 +
plugins/hypervisors/xenserver/pom.xml | 2 +-
.../java/com/cloud/hypervisor/XenServerGuru.java | 7 +-
.../xenserver/resource/CitrixResourceBaseTest.java | 3 +
plugins/integrations/cloudian/pom.xml | 2 +-
plugins/integrations/kubernetes-service/pom.xml | 2 +-
.../cluster/KubernetesClusterManagerImpl.java | 50 +-
.../KubernetesClusterActionWorker.java | 101 +-
.../KubernetesClusterDestroyWorker.java | 43 +-
...ernetesClusterResourceModifierActionWorker.java | 23 +
.../KubernetesClusterScaleWorker.java | 26 +-
.../KubernetesClusterStartWorker.java | 61 +-
.../cluster/CreateKubernetesClusterCmd.java | 8 +-
.../script/delete-pv-reclaimpolicy-delete | 82 +-
plugins/integrations/prometheus/pom.xml | 2 +-
plugins/integrations/veeam-control-service/pom.xml | 2 +-
.../apache/cloudstack/veeam/api/dto/Version.java | 6 +-
.../cloudstack/veeam/api/dto/VersionTest.java | 34 +
plugins/kms/database/pom.xml | 2 +-
plugins/kms/pkcs11/pom.xml | 2 +-
plugins/kms/pom.xml | 2 +-
plugins/maintenance/pom.xml | 2 +-
plugins/metrics/pom.xml | 2 +-
plugins/network-elements/bigswitch/pom.xml | 2 +-
plugins/network-elements/brocade-vcs/pom.xml | 2 +-
.../guru/BrocadeVcsGuestNetworkGuruTest.java | 2 -
plugins/network-elements/cisco-vnmc/pom.xml | 2 +-
.../network/cisco/CiscoVnmcConnectionTest.java | 3 +-
.../network/resource/CiscoVnmcResourceTest.java | 3 +
plugins/network-elements/dns-notifier/pom.xml | 2 +-
.../network-elements/elastic-loadbalancer/pom.xml | 2 +-
plugins/network-elements/globodns/pom.xml | 2 +-
.../network-elements/internal-loadbalancer/pom.xml | 2 +-
plugins/network-elements/juniper-contrail/pom.xml | 2 +-
plugins/network-elements/netris/pom.xml | 4 +-
.../agent/api/CreateNetrisVnetCommand.java | 22 +-
.../apache/cloudstack/agent/api/NetrisCommand.java | 9 +
.../resource/NetrisResourceObjectUtils.java | 19 +-
.../cloudstack/service/NetrisApiClientImpl.java | 426 +-
.../apache/cloudstack/service/NetrisElement.java | 16 +-
.../cloudstack/service/NetrisGuestNetworkGuru.java | 148 +-
.../service/NetrisPublicNetworkGuru.java | 9 +-
.../cloudstack/service/NetrisServiceImpl.java | 26 +-
.../agent/api/CreateNetrisVnetCommandTest.java | 11 +-
.../resource/NetrisResourceObjectUtilsTest.java | 6 +-
.../cloudstack/service/NetrisElementTest.java | 2 +-
.../service/NetrisGuestNetworkGuruTest.java | 42 +-
plugins/network-elements/netscaler/pom.xml | 2 +-
plugins/network-elements/nicira-nvp/pom.xml | 2 +-
.../guru/NiciraNvpGuestNetworkGuruTest.java | 6 -
.../com/cloud/network/nicira/NiciraNvpApiIT.java | 2 -
plugins/network-elements/nsx/pom.xml | 2 +-
.../cloudstack/agent/api/NsxNetworkCommand.java | 2 +-
plugins/network-elements/opendaylight/pom.xml | 2 +-
plugins/network-elements/ovs/pom.xml | 2 +-
plugins/network-elements/palo-alto/pom.xml | 2 +-
plugins/network-elements/stratosphere-ssp/pom.xml | 2 +-
plugins/network-elements/tungsten/pom.xml | 2 +-
.../AddTungstenFabricPolicyRuleCmdTest.java | 2 +
.../CreateTungstenFabricFirewallRuleCmdTest.java | 2 +
.../CreateTungstenFabricProviderCmdTest.java | 2 +
.../command/DeleteTungstenFabricTagCmdTest.java | 2 +
.../command/RemoveTungstenFabricTagCmdTest.java | 2 +
plugins/network-elements/vxlan/pom.xml | 2 +-
.../outofbandmanagement-drivers/ipmitool/pom.xml | 2 +-
.../nested-cloudstack/pom.xml | 2 +-
.../outofbandmanagement-drivers/redfish/pom.xml | 2 +-
.../driver/redfish/RedfishWrapper.java | 2 +-
plugins/pom.xml | 2 +-
plugins/storage-allocators/random/pom.xml | 2 +-
plugins/storage/image/default/pom.xml | 2 +-
plugins/storage/image/s3/pom.xml | 2 +-
plugins/storage/image/sample/pom.xml | 2 +-
plugins/storage/image/swift/pom.xml | 2 +-
plugins/storage/object/ceph/pom.xml | 2 +-
.../driver/CephObjectStoreDriverImpl.java | 17 +-
plugins/storage/object/cloudian/pom.xml | 2 +-
plugins/storage/object/minio/pom.xml | 2 +-
plugins/storage/object/simulator/pom.xml | 2 +-
plugins/storage/sharedfs/storagevm/pom.xml | 2 +-
.../lifecycle/StorageVmSharedFSLifeCycle.java | 10 +-
.../lifecycle/StorageVmSharedFSLifeCycleTest.java | 62 +-
plugins/storage/volume/adaptive/pom.xml | 2 +-
.../storage/datastore/adapter/ProviderVolume.java | 3 +-
.../lifecycle/AdaptiveDataStoreLifeCycleImpl.java | 24 +-
plugins/storage/volume/cloudbyte/pom.xml | 2 +-
plugins/storage/volume/datera/pom.xml | 2 +-
plugins/storage/volume/default/pom.xml | 2 +-
...loudStackPrimaryDataStoreLifeCycleImplTest.java | 2 +
plugins/storage/volume/flasharray/pom.xml | 2 +-
.../adapter/flasharray/FlashArrayAdapter.java | 160 +-
.../adapter/flasharray/FlashArrayConnection.java | 9 +
.../adapter/flasharray/FlashArrayVolume.java | 26 +
plugins/storage/volume/linstor/CHANGELOG.md | 17 +
plugins/storage/volume/linstor/pom.xml | 2 +-
.../api/storage/LinstorBackupSnapshotCommand.java | 7 +
.../LinstorBackupSnapshotCommandWrapper.java | 61 +-
.../kvm/storage/LinstorStorageAdaptor.java | 258 +-
.../hypervisor/kvm/storage/LinstorStoragePool.java | 50 +
.../driver/LinstorPrimaryDataStoreDriverImpl.java | 118 +-
.../datastore/util/LinstorImportHelper.java | 201 +
.../storage/datastore/util/LinstorUtil.java | 164 +-
.../storage/motion/LinstorDataMotionStrategy.java | 120 +-
.../kvm/storage/LinstorStorageAdaptorTest.java | 344 +
.../LinstorPrimaryDataStoreDriverImplTest.java | 92 +
.../util/LinstorApiPaginationContractTest.java | 74 +
.../datastore/util/LinstorImportHelperTest.java | 306 +
.../storage/datastore/util/LinstorUtilTest.java | 75 +
.../motion/LinstorDataMotionStrategyTest.java | 357 +
plugins/storage/volume/nexenta/pom.xml | 2 +-
.../datastore/util/NexentaStorAppliance.java | 13 +-
plugins/storage/volume/ontap/README.md | 4 +-
plugins/storage/volume/ontap/pom.xml | 2 +-
.../driver/OntapPrimaryDatastoreDriver.java | 186 +-
.../storage/feign/client/AggregateFeignClient.java | 7 +-
.../storage/feign/client/SnapshotFeignClient.java | 94 +
.../cloudstack/storage/feign/model/Aggregate.java | 56 +-
.../storage/feign/model/ConsistencyGroup.java | 99 +
.../feign/model/ConsistencyGroupSnapshot.java | 149 +
.../feign/model/ConsistencyGroupVolume.java | 67 +
.../ConsistencyGroupVolumeProvisioningOptions.java | 39 +-
.../cloudstack/storage/feign/model/ExportRule.java | 12 +-
.../storage/feign/model/IpInterface.java | 88 +-
.../lifecycle/OntapPrimaryDatastoreLifecycle.java | 106 +-
.../storage/listener/OntapHostListener.java | 183 +-
.../storage/service/StorageStrategy.java | 410 +-
.../storage/service/UnifiedNASStrategy.java | 179 +-
.../storage/service/model/AccessGroup.java | 19 +-
.../storage/utils/OntapStorageConstants.java | 23 +
.../storage/utils/OntapStorageUtils.java | 129 +-
.../vmsnapshot/OntapVMSnapshotStrategy.java | 617 +-
.../driver/OntapPrimaryDatastoreDriverTest.java | 72 +-
.../OntapPrimaryDatastoreLifecycleTest.java | 315 +-
.../storage/service/StorageStrategyTest.java | 537 +-
.../storage/service/UnifiedNASStrategyTest.java | 372 +
.../storage/utils/OntapStorageUtilsTest.java | 14 +
.../vmsnapshot/OntapVMSnapshotStrategyTest.java | 436 +-
plugins/storage/volume/primera/pom.xml | 2 +-
plugins/storage/volume/sample/pom.xml | 2 +-
plugins/storage/volume/scaleio/pom.xml | 2 +-
.../ScaleIOPrimaryDataStoreLifeCycleTest.java | 3 +
plugins/storage/volume/solidfire/pom.xml | 2 +-
plugins/storage/volume/storpool/pom.xml | 2 +-
.../kvm/storage/StorPoolStorageAdaptor.java | 3 +-
.../driver/StorPoolPrimaryDataStoreDriver.java | 132 +-
.../storage/datastore/util/StorPoolUtil.java | 10 +-
.../storage/motion/StorPoolDataMotionStrategy.java | 2 +-
.../driver/StorPoolPrimaryDataStoreDriverTest.java | 365 +
plugins/user-authenticators/ldap/pom.xml | 2 +-
.../api/command/LdapTestConfigurationCmd.java | 20 +-
.../cloudstack/ldap/ADLdapUserManagerImpl.java | 1 +
.../apache/cloudstack/ldap/LdapManagerImpl.java | 28 +-
.../cloudstack/ldap/OpenLdapUserManagerImpl.java | 4 +
.../api/command/LdapTestConfigurationCmdTest.java | 85 +
.../ldap/LdapDirectoryServerConnectionTest.java | 3 +
.../cloudstack/ldap/LdapManagerImplTest.java | 210 +-
.../ldap/LdapUnboundidZapdotConnectionTest.java | 3 +
plugins/user-authenticators/md5/pom.xml | 2 +-
plugins/user-authenticators/oauth2/pom.xml | 2 +-
plugins/user-authenticators/pbkdf2/pom.xml | 2 +-
plugins/user-authenticators/plain-text/pom.xml | 2 +-
plugins/user-authenticators/saml2/pom.xml | 2 +-
.../command/SAML2LogoutAPIAuthenticatorCmd.java | 3 +
.../SAML2LogoutAPIAuthenticatorCmdTest.java | 26 +
plugins/user-authenticators/sha256salted/pom.xml | 2 +-
.../static-pin/pom.xml | 2 +-
.../user-two-factor-authenticators/totp/pom.xml | 2 +-
pom.xml | 9 +-
python/lib/cloudutils/db.py | 13 +-
quickcloud/pom.xml | 2 +-
scripts/installer/export-templates.sh | 18 +-
scripts/util/migrate-dynamicroles.py | 15 +-
scripts/vm/hypervisor/kvm/nasbackup.sh | 401 +-
.../hypervisor/xenserver/cloudstack_pluginlib.py | 2 +-
scripts/vm/hypervisor/xenserver/vmops | 12 +-
scripts/vm/hypervisor/xenserver/vmopsSnapshot | 61 +-
scripts/vm/network/security_group.py | 232 +-
server/conf/log4j-cloud.xml.in | 15 +-
server/pom.xml | 4 +-
.../src/main/java/com/cloud/acl/DomainChecker.java | 2 +-
server/src/main/java/com/cloud/api/ApiDBUtils.java | 7 +-
.../main/java/com/cloud/api/ApiResponseHelper.java | 40 +-
server/src/main/java/com/cloud/api/ApiServer.java | 9 +-
server/src/main/java/com/cloud/api/ApiServlet.java | 94 +-
.../java/com/cloud/api/doc/ApiXmlDocWriter.java | 7 +-
.../src/main/java/com/cloud/api/doc/Argument.java | 12 +-
.../java/com/cloud/api/query/QueryManagerImpl.java | 161 +-
.../com/cloud/api/query/dao/HostJoinDaoImpl.java | 9 +-
.../com/cloud/api/query/dao/TemplateJoinDao.java | 15 +
.../cloud/api/query/dao/TemplateJoinDaoImpl.java | 375 +-
.../cloud/api/query/dao/TemplateListFilter.java | 258 +
.../com/cloud/api/query/dao/VolumeJoinDaoImpl.java | 12 +-
.../api/query/dao/VpcOfferingJoinDaoImpl.java | 1 +
.../api/query/vo/BaseViewWithTagInformationVO.java | 4 +
.../com/cloud/api/query/vo/TemplateJoinVO.java | 4 +
.../configuration/ConfigurationManagerImpl.java | 11 +-
.../cloud/consoleproxy/ConsoleProxyManager.java | 3 +
.../consoleproxy/ConsoleProxyManagerImpl.java | 6 +-
.../deploy/DeploymentPlanningManagerImpl.java | 59 +-
.../java/com/cloud/event/ActionEventUtils.java | 14 +
.../com/cloud/ha/HighAvailabilityManagerImpl.java | 113 +-
.../main/java/com/cloud/hypervisor/KVMGuru.java | 38 +-
.../com/cloud/network/IpAddressManagerImpl.java | 39 +-
.../java/com/cloud/network/NetworkModelImpl.java | 9 +-
.../network/element/ConfigDriveNetworkElement.java | 2 +-
.../com/cloud/network/guru/GuestNetworkGuru.java | 16 +-
.../network/lb/LoadBalancingRulesManagerImpl.java | 2 +-
.../cloud/network/router/NetworkHelperImpl.java | 22 +-
.../router/VirtualNetworkApplianceManagerImpl.java | 9 +
.../network/security/SecurityGroupManagerImpl.java | 2 +-
.../security/SecurityGroupManagerImpl2.java | 2 +-
.../java/com/cloud/network/vpc/VpcManagerImpl.java | 47 +-
.../network/vpn/RemoteAccessVpnManagerImpl.java | 8 +-
.../cloud/network/vpn/Site2SiteVpnManagerImpl.java | 3 +
.../com/cloud/resource/ResourceManagerImpl.java | 39 +-
.../resourcelimit/ResourceLimitManagerImpl.java | 155 +-
.../com/cloud/server/ConfigurationServerImpl.java | 19 +-
.../com/cloud/server/ManagementServerImpl.java | 7 +-
.../main/java/com/cloud/server/StatsCollector.java | 39 +-
.../java/com/cloud/storage/StorageManagerImpl.java | 84 +-
.../com/cloud/storage/VolumeApiServiceImpl.java | 59 +-
.../cloud/storage/download/DownloadListener.java | 2 +-
.../cloud/storage/listener/StoragePoolMonitor.java | 23 +-
.../cloud/storage/snapshot/SnapshotManager.java | 2 +-
.../storage/snapshot/SnapshotManagerImpl.java | 91 +-
.../com/cloud/template/TemplateManagerImpl.java | 94 +-
.../src/main/java/com/cloud/vm/UserVmManager.java | 4 +
.../main/java/com/cloud/vm/UserVmManagerImpl.java | 137 +-
.../api/query/dao/InstanceBootGroupJoinDao.java | 15 +-
.../query/dao/InstanceBootGroupJoinDaoImpl.java | 15 +-
.../api/query/vo/InstanceBootGroupJoinVO.java | 190 +
.../cloudstack/backup/BackupManagerImpl.java | 120 +-
.../cloudstack/dns/DnsProviderManagerImpl.java | 96 +-
.../org/apache/cloudstack/dns/dao/DnsZoneDao.java | 2 +
.../apache/cloudstack/dns/dao/DnsZoneDaoImpl.java | 24 +-
.../cloudstack/network/RoutedIpv4ManagerImpl.java | 38 +-
.../gslb/GlobalLoadBalancingRulesServiceImpl.java | 11 +-
.../volume/VolumeImportUnmanageManagerImpl.java | 69 +-
.../cloudstack/vm/UnmanagedVMsManagerImpl.java | 823 +-
.../vm/VmwareCbtMigrationCutoverPolicy.java | 81 +
.../vm/VmwareCbtMigrationManagerImpl.java | 3008 +
.../cloudstack/vm/VmwareCbtStorageTarget.java | 89 +
.../bootgroup/InstanceBootGroupApiServiceImpl.java | 939 +
.../vm/bootgroup/InstanceBootGroupManager.java | 27 +-
.../vm/bootgroup/InstanceBootGroupManagerImpl.java | 619 +
.../InstanceBootGroupMembershipGuard.java | 185 +
.../InstanceBootGroupVmStateListener.java | 66 +
.../readiness/GuestAgentLivenessChecker.java | 100 +
.../InstanceBootGroupReadinessRuleManagerImpl.java | 624 +
.../InstanceBootGroupReadinessRuleService.java | 75 +
.../vm/bootgroup/readiness/PortCheckChecker.java | 168 +
.../vm/bootgroup/readiness/VrPingChecker.java | 149 +
.../core/spring-server-core-managers-context.xml | 12 +
.../spring-server-compute-context.xml | 2 +
.../test/java/com/cloud/acl/DomainCheckerTest.java | 27 +-
.../java/com/cloud/api/ApiResponseHelperTest.java | 52 +-
.../src/test/java/com/cloud/api/ApiServerTest.java | 64 +
.../test/java/com/cloud/api/ApiServletTest.java | 416 +-
.../com/cloud/api/query/QueryManagerImplTest.java | 1 +
.../dao/TemplateJoinDaoImplBypassExplainTest.java | 398 +
.../api/query/dao/TemplateJoinDaoImplTest.java | 65 +
.../cloud/api/query/dao/VolumeJoinDaoImplTest.java | 19 +
.../configuration/ConfigurationManagerTest.java | 3 +
.../deploy/DeploymentPlanningManagerImplTest.java | 130 +-
.../cloud/ha/HighAvailabilityManagerImplTest.java | 8 +-
.../java/com/cloud/hypervisor/KVMGuruTest.java | 142 +-
.../network/IpAddressManagerImplSourceNatTest.java | 58 +
.../cloud/network/as/AutoScaleManagerImplTest.java | 5 +-
.../lb/LoadBalancingRulesManagerImplTest.java | 80 +-
.../network/router/NetworkHelperImplTest.java | 45 +-
.../SecurityGroupManagerImpl2Ipv6RuleTest.java | 82 +
.../SecurityGroupManagerImplIpv6RuleTest.java | 90 +
.../vpn/RemoteAccessVpnManagerImplTest.java | 50 +
.../network/vpn/Site2SiteVpnManagerImplTest.java | 1 +
.../cloud/resource/MockResourceManagerImpl.java | 2 +-
.../cloud/resource/ResourceManagerImplTest.java | 2 +
.../ResourceLimitManagerImplTest.java | 287 +
.../java/com/cloud/server/StatsCollectorTest.java | 88 +
.../com/cloud/storage/StorageManagerImplTest.java | 11 +
.../cloud/storage/VolumeApiServiceImplTest.java | 114 +
.../storage/listener/StoragePoolMonitorTest.java | 116 +-
.../storage/snapshot/SnapshotManagerImplTest.java | 155 +-
.../template/HypervisorTemplateAdapterTest.java | 2 +
.../cloud/template/TemplateManagerImplTest.java | 266 +-
.../java/com/cloud/user/DomainManagerImplTest.java | 7 +-
.../com/cloud/vm/UserVmImportTemplateTest.java | 206 +
.../java/com/cloud/vm/UserVmManagerImplTest.java | 405 +-
.../test/java/com/cloud/vm/UserVmManagerTest.java | 3 +
.../cloud/vm/snapshot/VMSnapshotManagerTest.java | 7 +-
.../java/com/cloud/vpc/dao/MockNetworkDaoImpl.java | 5 +
.../cloudstack/backup/BackupManagerTest.java | 222 +-
.../cloudstack/dns/DnsProviderManagerImplTest.java | 461 +-
.../network/RoutedIpv4ManagerImplTest.java | 74 +-
.../deployment/RouterDeploymentDefinitionTest.java | 2 +-
.../schedule/vm/VMScheduleWorkerTest.java | 7 +-
.../cloudstack/service/NetrisServiceMockTest.java | 8 +-
.../VolumeImportUnmanageManagerImplTest.java | 117 +-
.../cloudstack/vm/UnmanagedVMsManagerImplTest.java | 511 +-
.../vm/VmwareCbtMigrationCheckpointTest.java | 52 +
.../vm/VmwareCbtMigrationCutoverFailureTest.java | 78 +
.../vm/VmwareCbtMigrationCutoverPolicyTest.java | 75 +
.../vm/VmwareCbtMigrationDeletePolicyTest.java | 179 +
.../vm/VmwareCbtMigrationImportTest.java | 126 +
.../vm/VmwareCbtMigrationNicValidationTest.java | 144 +
.../VmwareCbtMigrationOfferingValidationTest.java | 135 +
.../cloudstack/vm/VmwareCbtStorageTargetTest.java | 205 +
.../InstanceBootGroupApiServiceImplTest.java | 1304 +
.../InstanceBootGroupManagerImplTest.java | 819 +
.../InstanceBootGroupMembershipGuardTest.java | 301 +
.../InstanceBootGroupVmStateListenerTest.java | 106 +
.../readiness/GuestAgentLivenessCheckerTest.java | 163 +
...tanceBootGroupReadinessRuleManagerImplTest.java | 981 +
.../bootgroup/readiness/PortCheckCheckerTest.java | 245 +
.../vm/bootgroup/readiness/VrPingCheckerTest.java | 244 +
services/console-proxy/pom.xml | 2 +-
services/console-proxy/rdpconsole/pom.xml | 2 +-
.../rdpclient/ntlmssp/ServerNtlmsspChallenge.java | 5 +-
.../src/main/java/streamer/ByteBuffer.java | 2 +-
.../src/test/java/streamer/ByteBufferTest.java | 1 +
services/console-proxy/server/pom.xml | 2 +-
.../java/com/cloud/consoleproxy/ConsoleProxy.java | 167 +-
.../cloud/consoleproxy/ConsoleProxyGCThread.java | 32 +-
.../consoleproxy/ConsoleProxyNoVNCHandler.java | 41 +-
.../consoleproxy/ConsoleProxyNoVncClient.java | 4 +
.../com/cloud/consoleproxy/vnc/NoVncClient.java | 22 +
.../cloud/consoleproxy/vnc/network/NioSocket.java | 24 +
.../consoleproxy/vnc/network/NioSocketHandler.java | 1 +
.../vnc/network/NioSocketHandlerImpl.java | 7 +
services/pom.xml | 2 +-
services/secondary-storage/controller/pom.xml | 2 +-
services/secondary-storage/pom.xml | 2 +-
services/secondary-storage/server/pom.xml | 2 +-
.../resource/SecondaryStorageDiscoverer.java | 28 +-
systemvm/agent/images/left.png | Bin 321 -> 315 bytes
systemvm/agent/images/right.png | Bin 413 -> 411 bytes
systemvm/agent/images/right2.png | Bin 434 -> 424 bytes
systemvm/agent/images/winlog.png | Bin 2314 -> 2268 bytes
.../conf-enabled/mods-enabled/mpm_event.conf | 17 +
.../debian/etc/apache2/conf-enabled/security.conf | 17 +
systemvm/debian/etc/apache2/httpd.conf | 17 +
systemvm/debian/etc/ipsec.conf | 17 +
systemvm/debian/etc/ipsec.d/l2tp.conf | 17 +
systemvm/debian/etc/logrotate.conf | 17 +
systemvm/debian/etc/rsyslog.conf | 17 +
systemvm/debian/etc/sysctl.conf | 17 +
systemvm/debian/etc/systemd/journald.conf | 17 +
systemvm/debian/etc/vmware-tools/tools.conf | 17 +
systemvm/debian/etc/vpcdnsmasq.conf | 17 +
systemvm/debian/etc/xl2tpd/xl2tpd.conf | 17 +
systemvm/debian/opt/cloud/bin/configure.py | 24 +-
systemvm/debian/opt/cloud/bin/cs/CsAddress.py | 45 +-
systemvm/debian/opt/cloud/bin/cs/CsBgpPeers.py | 54 +-
systemvm/debian/opt/cloud/bin/cs/CsDhcp.py | 2 +-
systemvm/debian/opt/cloud/bin/cs/CsGuestNetwork.py | 3 +
.../opt/cloud/bin/instance_readiness_check.py | 71 +
systemvm/debian/opt/cloud/bin/setup/common.sh | 4 +-
systemvm/debian/opt/cloud/bin/setup/router.sh | 2 +-
systemvm/debian/opt/cloud/bin/setup/vpcrouter.sh | 2 +-
systemvm/pom.xml | 2 +-
systemvm/test/TestCsAclRouting.py | 67 +
systemvm/test/TestCsAddress.py | 77 +-
systemvm/test/TestCsBgpPeers.py | 208 +
systemvm/test/TestCsForwardingRules.py | 63 +
systemvm/test/frr-bgppeers-ipv4-ipv6.conf | 61 +
test/integration/plugins/linstor/README.md | 30 +
.../plugins/linstor/linstor_test_utils.py | 83 +
.../linstor/test_linstor_encrypted_snapshots.py | 32 +-
.../linstor/test_linstor_incremental_snapshots.py | 639 +
.../plugins/linstor/test_linstor_volumes.py | 46 +-
.../plugins/storpool/TestStorPoolImportVolume.py | 610 +
test/integration/smoke/test_backup_recovery_nas.py | 6 +-
test/integration/smoke/test_cluster_drs.py | 15 +-
.../smoke/test_deploy_vms_in_parallel.py | 36 +
test/integration/smoke/test_events_resource.py | 1 +
test/integration/smoke/test_host_maintenance.py | 69 +-
test/integration/smoke/test_instance_boot_group.py | 310 +
test/integration/smoke/test_kms_lifecycle.py | 5 +
.../smoke/test_network_extension_namespace.py | 4 +-
.../smoke/test_nonstrict_affinity_group.py | 7 +-
test/integration/smoke/test_usage.py | 11 +-
test/integration/smoke/test_vm_life_cycle.py | 1 +
test/integration/smoke/test_vm_strict_host_tags.py | 4 +
test/pom.xml | 2 +-
tools/apidoc-versions-diff/4.11_commands.xml | 92330 +++++++++++
tools/apidoc-versions-diff/4.12_commands.xml | 93090 +++++++++++
tools/apidoc-versions-diff/4.13_commands.xml | 93572 +++++++++++
tools/apidoc-versions-diff/4.14_commands.xml | 100485 ++++++++++++
tools/apidoc-versions-diff/4.15_commands.xml | 103247 ++++++++++++
tools/apidoc-versions-diff/4.16_commands.xml | 104122 ++++++++++++
tools/apidoc-versions-diff/4.17_commands.xml | 106301 ++++++++++++
tools/apidoc-versions-diff/4.18_commands.xml | 115526 +++++++++++++
tools/apidoc-versions-diff/4.19_commands.xml | 130842 +++++++++++++++
tools/apidoc-versions-diff/4.20_commands.xml | 140119 ++++++++++++++++
tools/apidoc-versions-diff/4.21_commands.xml | 153048 ++++++++++++++++++
tools/apidoc-versions-diff/README.md | 74 +
.../before-4.11/4.10.0_commands.xml | 87408 ++++++++++
.../before-4.11/4.3.0_commands.xml | 59963 +++++++
.../before-4.11/4.3.1_commands.xml | 59968 +++++++
.../before-4.11/4.4.0_commands.xml | 63240 ++++++++
.../before-4.11/4.4.1_commands.xml | 63338 ++++++++
.../before-4.11/4.4.2_commands.xml | 65700 ++++++++
.../before-4.11/4.5.0_commands.xml | 81471 ++++++++++
.../before-4.11/4.6.0_commands.xml | 83551 ++++++++++
.../before-4.11/4.7.0_commands.xml | 85395 ++++++++++
.../before-4.11/4.8.0_commands.xml | 85854 ++++++++++
.../before-4.11/4.9.0_commands.xml | 85637 ++++++++++
.../before-4.11/diff-430-431/diff.txt | 14 +
.../before-4.11/diff-440-441/diff.txt | 52 +
.../before-4.11/diff-442-450/diff.txt | 405 +
.../before-4.11/diff-450-460/diff.txt | 410 +
.../before-4.11/diff-460-470/diff.txt | 124 +
.../before-4.11/diff-470-480/diff.txt | 86 +
.../before-4.11/diff-480-490/diff.json | 1 +
.../before-4.11/diff-480-490/diff.txt | 594 +
.../before-4.11/diff-490-4100/diff.json | 1 +
.../before-4.11/diff-490-4100/diff.txt | 410 +
tools/apidoc-versions-diff/diff-410-411/diff.json | 1 +
tools/apidoc-versions-diff/diff-410-411/diff.txt | 722 +
tools/apidoc-versions-diff/diff-411-412/diff.json | 1 +
tools/apidoc-versions-diff/diff-411-412/diff.txt | 332 +
tools/apidoc-versions-diff/diff-412-413/diff.json | 1 +
tools/apidoc-versions-diff/diff-412-413/diff.txt | 618 +
tools/apidoc-versions-diff/diff-413-414/diff.json | 1 +
tools/apidoc-versions-diff/diff-413-414/diff.txt | 452 +
tools/apidoc-versions-diff/diff-414-415/diff.json | 1 +
tools/apidoc-versions-diff/diff-414-415/diff.txt | 966 +
tools/apidoc-versions-diff/diff-415-416/diff.json | 1 +
tools/apidoc-versions-diff/diff-415-416/diff.txt | 1104 +
tools/apidoc-versions-diff/diff-416-417/diff.json | 1 +
tools/apidoc-versions-diff/diff-416-417/diff.txt | 756 +
tools/apidoc-versions-diff/diff-417-418/diff.json | 1 +
tools/apidoc-versions-diff/diff-417-418/diff.txt | 1156 +
tools/apidoc-versions-diff/diff-418-419/diff.json | 1 +
tools/apidoc-versions-diff/diff-418-419/diff.txt | 1690 +
tools/apidoc-versions-diff/diff-419-420/diff.json | 1 +
tools/apidoc-versions-diff/diff-419-420/diff.txt | 1162 +
tools/apidoc-versions-diff/diff-420-421/diff.json | 1 +
tools/apidoc-versions-diff/diff-420-421/diff.txt | 1612 +
tools/apidoc/gen_toc.py | 3 +-
tools/apidoc/pom.xml | 2 +-
tools/checkstyle/pom.xml | 2 +-
tools/checkstyle/src/main/resources/cloud-pmd.xml | 117 +-
tools/devcloud-kvm/pom.xml | 2 +-
tools/devcloud4/.gitignore | 17 +
tools/devcloud4/pom.xml | 2 +-
tools/docker/Dockerfile | 2 +-
tools/docker/Dockerfile.marvin | 4 +-
tools/docker/Dockerfile.s390x | 2 +-
tools/docker/supervisord.conf | 17 +
tools/marvin/marvin/lib/base.py | 172 +-
tools/marvin/pom.xml | 2 +-
tools/marvin/setup.py | 2 +-
tools/pom.xml | 2 +-
ui/public/config.json | 150 +-
ui/public/locales/en.json | 113 +-
ui/public/locales/pt_BR.json | 8 +-
ui/public/locales/te.json | 8 +-
ui/src/components/offering/ComputeOfferingForm.vue | 2 +-
ui/src/components/view/DetailsTab.vue | 15 +-
ui/src/components/view/InfoCard.vue | 9 +-
.../InstanceVolumesStoragePoolSelectListView.vue | 9 +-
ui/src/components/view/ListView.vue | 12 +-
ui/src/components/view/SearchView.vue | 2 +-
ui/src/components/view/StoragePoolSelectView.vue | 15 +-
.../view/VolumeStoragePoolSelectForm.vue | 6 +
ui/src/components/view/VolumesTab.vue | 2 +-
ui/src/components/view/WebhookFiltersTab.vue | 48 +-
ui/src/composables/useServiceCapabilityParams.js | 19 +-
ui/src/config/section/compute.js | 94 +
ui/src/config/section/config.js | 25 +-
ui/src/config/section/infra/hosts.js | 2 +-
ui/src/config/section/infra/systemVms.js | 5 +-
ui/src/config/section/network.js | 2 +
ui/src/config/section/offering.js | 22 +-
ui/src/config/section/storage.js | 5 +-
ui/src/config/section/tools.js | 17 +-
ui/src/core/lazy_lib/icons_use.js | 4 +-
ui/src/store/modules/user.js | 155 +-
ui/src/utils/plugins.js | 1 -
ui/src/utils/request.js | 20 +-
ui/src/utils/util.js | 9 +
ui/src/utils/vmware.js | 41 +
ui/src/views/AutogenView.vue | 4 +
.../views/compute/AddInstanceBootGroupMember.vue | 174 +
ui/src/views/compute/AutoScaleDownPolicyTab.vue | 19 +-
ui/src/views/compute/AutoScaleLoadBalancing.vue | 20 +-
ui/src/views/compute/AutoScaleUpPolicyTab.vue | 19 +-
ui/src/views/compute/AutoScaleVmProfile.vue | 57 +-
ui/src/views/compute/DeployVM.vue | 18 +-
ui/src/views/compute/EditVM.vue | 11 +-
.../views/compute/InstanceBootGroupMembersTab.vue | 352 +
.../InstanceBootGroupReadinessRulesModal.vue | 413 +
ui/src/views/compute/MigrateWizard.vue | 19 +-
.../compute/UpdateInstanceBootGroupMemberOrder.vue | 116 +
ui/src/views/dashboard/SetupTwoFaAtLogin.vue | 15 +-
ui/src/views/dashboard/VerifyTwoFa.vue | 17 +-
ui/src/views/iam/SetupTwoFaAtUserProfile.vue | 4 +-
ui/src/views/infra/AddObjectStorage.vue | 6 +-
ui/src/views/infra/AddPrimaryStorage.vue | 17 +-
ui/src/views/infra/HostInfo.vue | 88 +-
ui/src/views/infra/UsageRecords.vue | 4 +-
.../views/infra/zone/AdvancedGuestTrafficForm.vue | 4 +
ui/src/views/network/VpcTab.vue | 4 +-
ui/src/views/network/VpnDetails.vue | 28 +-
ui/src/views/network/dns/AddDnsServer.vue | 7 +-
ui/src/views/network/dns/UpdateDnsServer.vue | 7 +-
ui/src/views/offering/AddNetworkOffering.vue | 173 +-
ui/src/views/offering/AddVpcOffering.vue | 21 +-
ui/src/views/setting/ConfigurationValue.vue | 142 +-
ui/src/views/tools/ImportUnmanagedInstance.vue | 346 +-
ui/src/views/tools/ManageInstances.vue | 416 +-
ui/src/views/tools/SelectVmwareVcenter.vue | 4 +-
ui/src/views/tools/VmwareCbtMigrations.vue | 493 +
ui/tests/unit/components/view/DetailsTab.spec.js | 67 +
ui/tests/unit/components/view/InfoCard.spec.js | 64 +
ui/tests/unit/components/view/VolumesTab.spec.js | 58 +
ui/tests/unit/utils/request.spec.js | 84 +
ui/tests/unit/utils/vmware.spec.js | 51 +
.../compute/DeployVMTemplateHypervisor.spec.js | 153 +
ui/tests/unit/views/dashboard/TwoFaFailure.spec.js | 72 +
ui/tests/unit/views/infra/AddObjectStorage.spec.js | 99 +
ui/tests/unit/views/infra/UsageRecords.spec.js | 81 +
usage/conf/log4j-cloud_usage.xml.in | 34 +-
usage/pom.xml | 2 +-
.../java/com/cloud/usage/UsageManagerImpl.java | 10 +-
.../java/com/cloud/usage/UsageManagerImplTest.java | 47 +
utils/pom.xml | 2 +-
utils/src/main/java/com/cloud/utils/DateUtil.java | 63 +-
.../src/main/java/com/cloud/utils/ReflectUtil.java | 4 +
.../src/main/java/com/cloud/utils/StringUtils.java | 2 +-
.../nicira/nvp/plugin/NiciraNvpApiVersion.java | 2 +-
.../apache/cloudstack/utils/CloudStackVersion.java | 148 +-
.../test/java/com/cloud/utils/DateUtilTest.java | 113 +-
.../test/java/com/cloud/utils/StringUtilsTest.java | 29 +
.../cloudstack/utils/CloudStackVersionTest.java | 116 +-
vmware-base/pom.xml | 2 +-
.../hypervisor/vmware/mo/HypervisorHostHelper.java | 8 +-
.../cloud/hypervisor/vmware/util/VmwareClient.java | 2 +-
.../cloud/hypervisor/vmware/util/VmwareHelper.java | 59 +
1016 files changed, 2134868 insertions(+), 6377 deletions(-)
copy debian/cloudstack-marvin.postinst => .editorconfig (83%)
mode change 100755 => 100644
copy .codespellrc => .github/workflows/asf-allowlist-check.yml (61%)
delete mode 100644 .github/workflows/weekly-repo-status.lock.yml
delete mode 100644 .github/workflows/weekly-repo-status.md
create mode 100644 .mvn/develocity.xml
create mode 100644 .mvn/extensions.xml
copy
api/src/main/java/{org/apache/cloudstack/network/Ipv4GuestSubnetNetworkMap.java
=> com/cloud/agent/api/to/VmwareCbtChangedBlockRangeTO.java} (55%)
create mode 100644
api/src/main/java/com/cloud/agent/api/to/VmwareCbtDiskSyncResultTO.java
create mode 100644
api/src/main/java/com/cloud/agent/api/to/VmwareCbtDiskTO.java
copy
api/src/main/java/{org/apache/cloudstack/api/command/utils/OfferingUtils.java
=> com/cloud/agent/api/to/VmwareVddkSourceDiskTO.java} (50%)
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/CancelVmwareCbtMigrationCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/CheckVmwareCbtMigrationPrerequisitesCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/CutoverVmwareCbtMigrationCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/DeleteVmwareCbtMigrationCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/ListVmwareCbtMigrationsCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/StartVmwareCbtMigrationCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vm/SyncVmwareCbtMigrationCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/AddMemberToInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/CreateInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/CreateInstanceBootGroupReadinessRuleCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/DeleteInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/DeleteInstanceBootGroupReadinessRuleCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/ListInstanceBootGroupMembersCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/ListInstanceBootGroupReadinessRulesCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/ListInstanceBootGroupsCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/RebootInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/RemoveInstanceBootGroupMemberCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/StartInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/StopInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/UpdateInstanceBootGroupCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/UpdateInstanceBootGroupMemberCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/bootgroup/UpdateInstanceBootGroupReadinessRuleCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/InstanceBootGroupMemberChildResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/InstanceBootGroupMemberResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/InstanceBootGroupReadinessRuleResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/InstanceBootGroupResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VmwareCbtMigrationCycleResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VmwareCbtMigrationDiskResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VmwareCbtMigrationPreflightDiskResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VmwareCbtMigrationPreflightFindingResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VmwareCbtMigrationPreflightResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VmwareCbtMigrationResponse.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> api/src/main/java/org/apache/cloudstack/vm/VmwareCbtChangedBlockInfo.java
(66%)
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtChangedDiskInfo.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtDiskInfo.java
copy
api/src/main/java/org/apache/cloudstack/{network/Ipv4GuestSubnetNetworkMap.java
=> vm/VmwareCbtMigration.java} (55%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> api/src/main/java/org/apache/cloudstack/vm/VmwareCbtMigrationCycle.java
(68%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> api/src/main/java/org/apache/cloudstack/vm/VmwareCbtMigrationDisk.java (68%)
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtMigrationManager.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtMigrationService.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtPreflightDiskInfo.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtPreflightInfo.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/VmwareCbtPreflightNicInfo.java
copy
api/src/main/java/org/apache/cloudstack/{api/command/utils/OfferingUtils.java
=> vm/VmwareCbtSnapshotInfo.java} (52%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> api/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroup.java
(67%)
copy
api/src/main/java/org/apache/cloudstack/{network/Ipv4GuestSubnetNetworkMap.java
=> vm/bootgroup/InstanceBootGroupMember.java} (65%)
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupService.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceBootGroupReadinessRule.java
create mode 100644
api/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/ReadinessChecker.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/AddMemberToInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/BaseBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/CreateInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/CreateInstanceBootGroupReadinessRuleCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/DeleteInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/DeleteInstanceBootGroupReadinessRuleCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/ListInstanceBootGroupMembersCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/ListInstanceBootGroupReadinessRulesCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/ListInstanceBootGroupsCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/RebootInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/RemoveInstanceBootGroupMemberCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/StartInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/StopInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/UpdateInstanceBootGroupCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/UpdateInstanceBootGroupMemberCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/bootgroup/UpdateInstanceBootGroupReadinessRuleCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/response/ImageStoreDetailResponseTest.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
api/src/test/java/org/apache/cloudstack/api/response/ProjectResponseTest.java
(58%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> core/src/main/java/com/cloud/agent/api/CheckGuestAgentLivenessAnswer.java
(64%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> core/src/main/java/com/cloud/agent/api/CheckGuestAgentLivenessCommand.java
(64%)
create mode 100644
core/src/main/java/com/cloud/agent/api/VmwareCbtCleanupCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/VmwareCbtCutoverCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/VmwareCbtMigrationAnswer.java
create mode 100644
core/src/main/java/com/cloud/agent/api/VmwareCbtPrepareCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/VmwareCbtRbdProbeCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/VmwareCbtSyncCommand.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> core/src/main/java/com/cloud/agent/api/to/VmwareCbtTargetStorageType.java
(67%)
create mode 100644
core/src/main/java/com/cloud/agent/transport/compat/AbstractTOAdaptor.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> core/src/main/java/com/cloud/agent/transport/compat/DiskTOAdaptor.java (68%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
core/src/main/java/com/cloud/agent/transport/compat/MigrateCommandAdaptor.java
(68%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> core/src/main/java/com/cloud/agent/transport/compat/NetworkTOAdaptor.java
(68%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
core/src/main/java/com/cloud/agent/transport/compat/VirtualMachineTOAdaptor.java
(68%)
create mode 100644
core/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceReadinessCheckAnswer.java
create mode 100644
core/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceReadinessCheckCommand.java
create mode 100644
core/src/test/java/com/cloud/agent/resource/virtualnetwork/InstanceReadinessCheckExecutionTest.java
create mode 100644
core/src/test/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceReadinessCheckAnswerTest.java
create mode 100644 docs/vmware-cbt-migration.md
create mode 100644 docs/vmware-cbt/README.md
create mode 100644 docs/vmware-cbt/architecture.md
create mode 100644 docs/vmware-linstor-migration.md
create mode 100644
engine/orchestration/src/test/java/com/cloud/agent/manager/AgentAttacheSendNextTest.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> engine/schema/src/main/java/com/cloud/upgrade/dao/Upgrade42300to2400.java
(68%)
create mode 100644
engine/schema/src/main/java/com/cloud/vm/VmwareCbtMigrationCycleVO.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/VmwareCbtMigrationDiskVO.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/VmwareCbtMigrationVO.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupDao.java (68%)
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupDaoImpl.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupDetailsDao.java
(67%)
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupDetailsDaoImpl.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupMemberDao.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupMemberDaoImpl.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupReadinessCheckResultDao.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupReadinessCheckResultDaoImpl.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupReadinessRuleDao.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupReadinessRuleDaoImpl.java
copy engine/schema/src/main/java/com/cloud/{usage/dao/UsageBackupDao.java =>
vm/dao/InstanceBootGroupReadinessRuleDetailsDao.java} (59%)
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/InstanceBootGroupReadinessRuleDetailsDaoImpl.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
engine/schema/src/main/java/com/cloud/vm/dao/VmwareCbtMigrationCycleDao.java
(68%)
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/VmwareCbtMigrationCycleDaoImpl.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/VmwareCbtMigrationDao.java
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/VmwareCbtMigrationDaoImpl.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=> engine/schema/src/main/java/com/cloud/vm/dao/VmwareCbtMigrationDiskDao.java
(68%)
create mode 100644
engine/schema/src/main/java/com/cloud/vm/dao/VmwareCbtMigrationDiskDaoImpl.java
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/backup/BackupUsageMetricVO.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
engine/schema/src/main/java/org/apache/cloudstack/backup/dao/BackupUsageMetricDao.java
(68%)
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/backup/dao/BackupUsageMetricDaoImpl.java
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupDetailsVO.java
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupMemberVO.java
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupReadinessCheckResultVO.java
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupReadinessRuleDetailsVO.java
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupReadinessRuleVO.java
copy
engine/schema/src/main/java/org/apache/cloudstack/{network/Ipv4GuestSubnetNetworkMapVO.java
=> vm/bootgroup/InstanceBootGroupVO.java} (50%)
copy
engine/schema/src/main/resources/META-INF/db/{schema-42210to42300-cleanup.sql
=> schema-42300to2400-cleanup.sql} (68%)
create mode 100644
engine/schema/src/main/resources/META-INF/db/schema-42300to2400.sql
create mode 100644
engine/schema/src/main/resources/META-INF/db/views/cloud.instance_boot_group_view.sql
rename engine/schema/src/main/resources/META-INF/db/views/{nic_dns_view.sql =>
cloud.nic_dns_view.sql} (100%)
create mode 100644
engine/schema/src/test/java/com/cloud/storage/dao/SnapshotDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/usage/dao/UsageBackupDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/vm/dao/InstanceBootGroupDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/vm/dao/InstanceBootGroupDetailsDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/vm/dao/InstanceBootGroupMemberDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/vm/dao/InstanceBootGroupReadinessCheckResultDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/vm/dao/InstanceBootGroupReadinessRuleDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/vm/dao/InstanceBootGroupReadinessRuleDetailsDaoImplTest.java
create mode 100755 engine/schema/test_templateConfig.sh
create mode 100644
engine/storage/snapshot/src/test/java/org/apache/cloudstack/storage/snapshot/SnapshotObjectTest.java
create mode 100644
engine/storage/snapshot/src/test/java/org/apache/cloudstack/storage/vmsnapshot/KvmFileBasedStorageVmSnapshotStrategyTest.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckGuestAgentLivenessCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtCleanupCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtCutoverCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtPrepareCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtRbdProbeCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtSyncCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/VmwareCbtCommandOutputLogger.java
copy
api/src/main/java/org/apache/cloudstack/api/command/utils/OfferingUtils.java =>
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/VmwareCbtCommandResult.java
(54%)
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/VmwareCbtSyncPlan.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/MultipathNVMeOFAdapterBase.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/MultipathNVMeOFPool.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/NVMeTCPAdapter.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/org/apache/cloudstack/utils/rbd/RbdEncryption.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckGuestAgentLivenessCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCheckVolumeCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtDiskOnlyVMSnapshotCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtLinstorImportListingTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtPlugNicCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtTakeBackupCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtCleanupCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtCutoverCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtPrepareCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtRbdProbeCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtVmwareCbtSyncCommandWrapperTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/wrapper/VmwareCbtSyncPlanTest.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/org/apache/cloudstack/utils/rbd/RbdEncryptionTest.java
create mode 100644
plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/manager/VmwareCbtMigrationServiceImpl.java
create mode 100644
plugins/hypervisors/vmware/src/test/java/com/cloud/hypervisor/vmware/manager/VmwareCbtMigrationServiceImplTest.java
create mode 100644
plugins/storage/volume/linstor/src/main/java/org/apache/cloudstack/storage/datastore/util/LinstorImportHelper.java
create mode 100644
plugins/storage/volume/linstor/src/test/java/com/cloud/hypervisor/kvm/storage/LinstorStorageAdaptorTest.java
create mode 100644
plugins/storage/volume/linstor/src/test/java/org/apache/cloudstack/storage/datastore/util/LinstorApiPaginationContractTest.java
create mode 100644
plugins/storage/volume/linstor/src/test/java/org/apache/cloudstack/storage/datastore/util/LinstorImportHelperTest.java
create mode 100644
plugins/storage/volume/linstor/src/test/java/org/apache/cloudstack/storage/motion/LinstorDataMotionStrategyTest.java
create mode 100644
plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ConsistencyGroup.java
create mode 100644
plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ConsistencyGroupSnapshot.java
create mode 100644
plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ConsistencyGroupVolume.java
copy
core/src/main/java/com/cloud/agent/api/storage/RevertDiskOnlyVmSnapshotCommand.java
=>
plugins/storage/volume/ontap/src/main/java/org/apache/cloudstack/storage/feign/model/ConsistencyGroupVolumeProvisioningOptions.java
(51%)
create mode 100644
plugins/user-authenticators/ldap/src/test/java/org/apache/cloudstack/api/command/LdapTestConfigurationCmdTest.java
create mode 100644
server/src/main/java/com/cloud/api/query/dao/TemplateListFilter.java
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
server/src/main/java/org/apache/cloudstack/api/query/dao/InstanceBootGroupJoinDao.java
(68%)
copy
plugins/storage/volume/linstor/src/main/java/com/cloud/api/storage/LinstorBackupSnapshotCommand.java
=>
server/src/main/java/org/apache/cloudstack/api/query/dao/InstanceBootGroupJoinDaoImpl.java
(68%)
create mode 100644
server/src/main/java/org/apache/cloudstack/api/query/vo/InstanceBootGroupJoinVO.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/VmwareCbtMigrationCutoverPolicy.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/VmwareCbtMigrationManagerImpl.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/VmwareCbtStorageTarget.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupApiServiceImpl.java
copy engine/schema/src/main/java/com/cloud/event/dao/EventDao.java =>
server/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupManager.java
(52%)
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupManagerImpl.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupMembershipGuard.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupVmStateListener.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/GuestAgentLivenessChecker.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceBootGroupReadinessRuleManagerImpl.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceBootGroupReadinessRuleService.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/PortCheckChecker.java
create mode 100644
server/src/main/java/org/apache/cloudstack/vm/bootgroup/readiness/VrPingChecker.java
create mode 100644
server/src/test/java/com/cloud/api/query/dao/TemplateJoinDaoImplBypassExplainTest.java
create mode 100644
server/src/test/java/com/cloud/network/IpAddressManagerImplSourceNatTest.java
create mode 100644
server/src/test/java/com/cloud/network/security/SecurityGroupManagerImpl2Ipv6RuleTest.java
create mode 100644
server/src/test/java/com/cloud/network/security/SecurityGroupManagerImplIpv6RuleTest.java
create mode 100644
server/src/test/java/com/cloud/vm/UserVmImportTemplateTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationCheckpointTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationCutoverFailureTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationCutoverPolicyTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationDeletePolicyTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationImportTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationNicValidationTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtMigrationOfferingValidationTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/VmwareCbtStorageTargetTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupApiServiceImplTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupManagerImplTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupMembershipGuardTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/InstanceBootGroupVmStateListenerTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/readiness/GuestAgentLivenessCheckerTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/readiness/InstanceBootGroupReadinessRuleManagerImplTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/readiness/PortCheckCheckerTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/vm/bootgroup/readiness/VrPingCheckerTest.java
create mode 100644 systemvm/debian/opt/cloud/bin/instance_readiness_check.py
create mode 100644 systemvm/test/TestCsAclRouting.py
create mode 100644 systemvm/test/TestCsBgpPeers.py
create mode 100644 systemvm/test/TestCsForwardingRules.py
create mode 100644 systemvm/test/frr-bgppeers-ipv4-ipv6.conf
create mode 100644 test/integration/plugins/linstor/linstor_test_utils.py
create mode 100644
test/integration/plugins/linstor/test_linstor_incremental_snapshots.py
create mode 100644
test/integration/plugins/storpool/TestStorPoolImportVolume.py
create mode 100644 test/integration/smoke/test_instance_boot_group.py
create mode 100644 tools/apidoc-versions-diff/4.11_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.12_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.13_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.14_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.15_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.16_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.17_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.18_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.19_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.20_commands.xml
create mode 100644 tools/apidoc-versions-diff/4.21_commands.xml
create mode 100644 tools/apidoc-versions-diff/README.md
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.10.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.3.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.3.1_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.4.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.4.1_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.4.2_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.5.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.6.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.7.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.8.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/4.9.0_commands.xml
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-430-431/diff.txt
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-440-441/diff.txt
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-442-450/diff.txt
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-450-460/diff.txt
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-460-470/diff.txt
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-470-480/diff.txt
create mode 100644
tools/apidoc-versions-diff/before-4.11/diff-480-490/diff.json
create mode 100644 tools/apidoc-versions-diff/before-4.11/diff-480-490/diff.txt
create mode 100644
tools/apidoc-versions-diff/before-4.11/diff-490-4100/diff.json
create mode 100644
tools/apidoc-versions-diff/before-4.11/diff-490-4100/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-410-411/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-410-411/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-411-412/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-411-412/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-412-413/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-412-413/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-413-414/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-413-414/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-414-415/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-414-415/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-415-416/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-415-416/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-416-417/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-416-417/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-417-418/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-417-418/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-418-419/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-418-419/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-419-420/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-419-420/diff.txt
create mode 100644 tools/apidoc-versions-diff/diff-420-421/diff.json
create mode 100644 tools/apidoc-versions-diff/diff-420-421/diff.txt
create mode 100644 ui/src/utils/vmware.js
create mode 100644 ui/src/views/compute/AddInstanceBootGroupMember.vue
create mode 100644 ui/src/views/compute/InstanceBootGroupMembersTab.vue
create mode 100644
ui/src/views/compute/InstanceBootGroupReadinessRulesModal.vue
create mode 100644 ui/src/views/compute/UpdateInstanceBootGroupMemberOrder.vue
create mode 100644 ui/src/views/tools/VmwareCbtMigrations.vue
create mode 100644 ui/tests/unit/components/view/DetailsTab.spec.js
create mode 100644 ui/tests/unit/components/view/InfoCard.spec.js
create mode 100644 ui/tests/unit/components/view/VolumesTab.spec.js
create mode 100644 ui/tests/unit/utils/request.spec.js
create mode 100644 ui/tests/unit/utils/vmware.spec.js
create mode 100644
ui/tests/unit/views/compute/DeployVMTemplateHypervisor.spec.js
create mode 100644 ui/tests/unit/views/dashboard/TwoFaFailure.spec.js
create mode 100644 ui/tests/unit/views/infra/AddObjectStorage.spec.js
create mode 100644 ui/tests/unit/views/infra/UsageRecords.spec.js