This is an automated email from the ASF dual-hosted git repository.
harikrishna pushed a change to branch UserDataAsFirstClassResource
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
omit 94a8ae313c Changes after rebase with main:
CloudZonesNetworkElement.java file is deleted as part of #6710
omit a375a35d80 Fixed issues are rebasing with main
omit b45da283f5 Moved schema changes to 4171 to 4180 schema upgrade file
omit 2150c15b56 added success message for userdata registration
omit 4144f58d66 Removed labels added during merge
omit 1846196165 Added unit tests
omit f4c56f988c Added a check while deleting the userdata, to see if no VMs
are using the userdata
omit 3101f88375 Fix document link in UI
omit 2845356a5a added comments to marvin test cases
omit 9da3238f86 Fix marvin test case
omit 2dd7c76b95 Fix custom userdata params for config drive by adding
userdata file name and value metadata json
omit 50c8a9d889 remove delete cascade on user_vm and vm_template tables for
userdata id foreign key reference.
omit db5cc5bf70 Added length to userdata param
omit db7c3a4fb2 Removed required param for iso id in linkuserdatatotemplate
cmd
omit c7fd7492ce Added validation to userdata params so that it wont contain
any VR metadafile names
omit 582ad97cbc Added ISO id to the linkuserdatatotemplate API
omit 71ddf547b0 Added blank values for userdata in edit template form
omit 2b686cc36e Added resetVMUserdata in UI for stopped VM
omit 5bf779af9d Added new UnitTests for resetVMUserData
omit 6dffe4e146 Added new API to reset UserData of a VM along with UpdateVM
API
omit 0b4af5c290 Add comments section to userdata
omit bcb9d14ae7 Added userdata selection in deploy VM form for ISOs
omit 815c1aedb8 Added userdata details to register and upload iso forms
omit 625d4a3f98 Few more code fixes
omit 4b430f325e Few code fixes
omit 89c39a2628 Added few more marvin tests for userdata
omit 5ea75ea6b9 Fixed marvin tests for registerd userdata
omit c9c3ae84af Adding marvin tests for userdata
omit 822b648686 Few improvements in the code
omit 47aaca42f6 Fix Userdata delete flow
omit dd48e83920 Fix unused imports
omit 0b8e493d2d Move test file to proper files
omit 956eb33553 Remove unused imports
omit f22f2066a9 Added unit tests for linking userdata to template
omit aebfb2b171 Added unit tests for userdata
omit bee9f86a6e fixes in deploy VM form to support deny userdata policy
omit 995a3217cb Few UI fixes in deploy VM and edit template form
omit 903fae684d update userdata linking to template
omit f18b4056fd Allow override append of userdata in deploy VM flow
omit 7bf91b3f57 added userdata policy list to register template form
omit f634d2abbf Added ToolTips and fixes deploy VM, register userdata form
omit b97d8bbda7 Added userdata denyoverride flag and userdata params section
omit 0457fbcabb Userdata Navigation in template view
omit 55a935fc02 Fixed unit tests and imports
omit 68f16f417c Small fixes and added userdata to updateVM flow
omit 56e4fb18b6 Added userdata params to registeruserdata UI form
omit aaa4791b52 Added userdata list to deploy VM form
omit e6b8762ca1 UI: added userdata id to deloyvm wizard
omit 7c9b0628c7 Updated template response and views
omit 8f60361f9a Write userdata details into metadata VR
omit 9d483e6e8d Added userdata details to the deployVM cmd flow
omit 1a8f2452a5 UI: added a new section for userdata
omit 04ee7aa52b Fixed userdata append scenario between template userdata
and user provided userdata
omit 1d9e6feef6 Added userdata id in deploy VM flow
omit dab1b2e163 Few fixes
omit c0294e3b93 UserData as first clas resource
add efbf74ee06 Added new logs to volume creation (#6689)
add d4c6586546 Return vm userdata (#6683)
add 697e12f8f7 kvm: volume encryption feature (#6522)
add 8ab8fdc1db Fix migrate volume permissions (#6224)
add 875ea5bf15 DatabaseUpgradeChecker: add upgrade path from 4.17.0.1 to
4.17.1.0 (#6759)
add 974369e3d4 Updating pom.xml version numbers for release 4.17.1.0
add 0e6ced3052 Merge tag '4.17.1.0' into 4.17
add 64316d513c debian: fix change log
add 2e5588c5ea Merge remote-tracking branch 'apache/4.17' into main
add d9dd4c1e3a mvn: bump version ahead of next major release (#6767)
add 53b658636f fix usage charging for deleted/resized volumes (#6737)
add 7fa41ddfcc README: update and refactor project README page (#6782)
add 33bd08369b Show name instead of description in the infocards and
breadcrumbs (#6769)
add 67024b036a vr: fix packet interface mismatch (#6656)
add 432a03fb02 api: fix event type and description for createTag (#6779)
add 89d9a70dce server: Allow template names upto 255 chars (#6768)
add 784578d46c Merge remote-tracking branch 'origin/4.17'
add 4e2f461b31 Prometheus exporter enhancement (#4438)
add 7cd6870908 UserData as first clas resource
add 795dc9b58d Few fixes
add 778b3f678d Added userdata id in deploy VM flow
add a9238dc164 Fixed userdata append scenario between template userdata
and user provided userdata
add 955680337d UI: added a new section for userdata
add 4541e52e62 Added userdata details to the deployVM cmd flow
add 734be27514 Write userdata details into metadata VR
add 325afa82fc Updated template response and views
add da7ce49032 UI: added userdata id to deloyvm wizard
add f464c4fa21 Added userdata list to deploy VM form
add b42a681f77 Added userdata params to registeruserdata UI form
add 45924412d2 Small fixes and added userdata to updateVM flow
add 9d97948110 Fixed unit tests and imports
add b321f9ff49 Userdata Navigation in template view
add 7aca56eef1 Added userdata denyoverride flag and userdata params section
add 9d09cb6929 Added ToolTips and fixes deploy VM, register userdata form
add c961804050 added userdata policy list to register template form
add babf192e1e Allow override append of userdata in deploy VM flow
add cc40e347bc update userdata linking to template
add 60b49296f7 Few UI fixes in deploy VM and edit template form
add f99359085f fixes in deploy VM form to support deny userdata policy
add 26406a2e4f Added unit tests for userdata
add f1b79bf46a Added unit tests for linking userdata to template
add edb0e744b8 Remove unused imports
add 32e5495c14 Move test file to proper files
add cae50e4bf3 Fix unused imports
add 054006dea6 Fix Userdata delete flow
add 50065e9f25 Few improvements in the code
add 99f52abe0a Adding marvin tests for userdata
add 1d94b91ddb Fixed marvin tests for registerd userdata
add e91127895c Added few more marvin tests for userdata
add 33a3cf8fdc Few code fixes
add 9d07435ef5 Few more code fixes
add eca858ab44 Added userdata details to register and upload iso forms
add 05224f81d0 Added userdata selection in deploy VM form for ISOs
add 6db5d0851c Add comments section to userdata
add d5db1d47b4 Added new API to reset UserData of a VM along with UpdateVM
API
add 5ce78f9168 Added new UnitTests for resetVMUserData
add 8768b4517d Added resetVMUserdata in UI for stopped VM
add 937f3b89ce Added blank values for userdata in edit template form
add 1550f6aeb9 Added ISO id to the linkuserdatatotemplate API
add 4e1dbcf273 Added validation to userdata params so that it wont contain
any VR metadafile names
add 43cf9f77b0 Removed required param for iso id in linkuserdatatotemplate
cmd
add a57b6527a8 Added length to userdata param
add c0a1999f30 remove delete cascade on user_vm and vm_template tables for
userdata id foreign key reference.
add 6828376b77 Fix custom userdata params for config drive by adding
userdata file name and value metadata json
add 08922166ae Fix marvin test case
add 92fc20dfeb added comments to marvin test cases
add 6af25ecf4f Fix document link in UI
add a4b60de133 Added a check while deleting the userdata, to see if no VMs
are using the userdata
add 471bd290cd Added unit tests
add 7f776e8a28 Removed labels added during merge
add dc0c4b895f added success message for userdata registration
add de41a14784 Moved schema changes to 4171 to 4180 schema upgrade file
add 0735bc0f6d Fixed issues are rebasing with main
add 5a8828f74d Changes after rebase with main:
CloudZonesNetworkElement.java file is deleted as part of #6710
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (94a8ae313c)
\
N -- N -- N refs/heads/UserDataAsFirstClassResource (5a8828f74d)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
README.md | 37 +-
.../main/java/com/cloud/agent/api/to/DiskTO.java | 1 +
.../com/cloud/agent/api/to/StorageFilerTO.java | 2 +
api/src/main/java/com/cloud/host/Host.java | 1 +
.../main/java/com/cloud/offering/DiskOffering.java | 4 +
.../java/com/cloud/storage/MigrationOptions.java | 9 +-
api/src/main/java/com/cloud/storage/Storage.java | 46 +-
api/src/main/java/com/cloud/storage/Volume.java | 8 +
.../com/cloud/template/VirtualMachineTemplate.java | 2 +
api/src/main/java/com/cloud/vm/DiskProfile.java | 12 +-
.../org/apache/cloudstack/api/ApiConstants.java | 3 +
.../admin/offering/CreateDiskOfferingCmd.java | 12 +
.../admin/offering/CreateServiceOfferingCmd.java | 11 +
.../user/offering/ListDiskOfferingsCmd.java | 9 +-
.../user/offering/ListServiceOfferingsCmd.java | 8 +
.../command/user/snapshot/CreateSnapshotCmd.java | 4 +
.../api/command/user/tag/CreateTagsCmd.java | 6 +-
.../cloudstack/api/command/user/vm/ListVMsCmd.java | 8 +
.../api/response/DiskOfferingResponse.java | 7 +
.../cloudstack/api/response/HostResponse.java | 15 +
.../api/response/ServiceOfferingResponse.java | 7 +
.../cloudstack/api/response/UserVmResponse.java | 12 +
.../agent/api/storage/ResizeVolumeCommand.java | 24 +
.../StorageSubsystemCommandHandlerBase.java | 4 +-
.../cloudstack/storage/to/VolumeObjectTO.java | 27 +
debian/changelog | 6 +
debian/control | 4 +-
.../subsystem/api/storage/EndPointSelector.java | 8 +
.../engine/subsystem/api/storage/VolumeInfo.java | 2 +
.../engine/orchestration/VolumeOrchestrator.java | 72 ++-
.../java/com/cloud/capacity/dao/CapacityDao.java | 3 +
.../com/cloud/capacity/dao/CapacityDaoImpl.java | 52 +-
.../java/com/cloud/storage/DiskOfferingVO.java | 9 +
.../src/main/java/com/cloud/storage/VolumeVO.java | 18 +-
.../main/java/com/cloud/storage/dao/VolumeDao.java | 7 +
.../java/com/cloud/storage/dao/VolumeDaoImpl.java | 10 +
.../main/java/com/cloud/user/dao/AccountDao.java | 1 +
.../java/com/cloud/user/dao/AccountDaoImpl.java | 16 +-
.../src/main/java/com/cloud/vm/dao/UserVmDao.java | 5 +
.../main/java/com/cloud/vm/dao/UserVmDaoImpl.java | 42 ++
.../main/java/com/cloud/vm/dao/VMInstanceDao.java | 2 +
.../java/com/cloud/vm/dao/VMInstanceDaoImpl.java | 25 +
.../org/apache/cloudstack/secret/PassphraseVO.java | 73 +++
.../cloudstack/secret/dao/PassphraseDao.java} | 8 +-
.../cloudstack/secret/dao/PassphraseDaoImpl.java} | 6 +-
.../spring-engine-schema-core-daos-context.xml | 1 +
.../resources/META-INF/db/schema-41710to41800.sql | 202 ++++++++
.../storage/motion/AncientDataMotionStrategy.java | 73 +--
.../storage/motion/DataMotionServiceImpl.java | 10 +
.../motion/StorageSystemDataMotionStrategy.java | 28 +-
.../allocator/AbstractStoragePoolAllocator.java | 72 ++-
.../ClusterScopeStoragePoolAllocator.java | 29 +-
.../GarbageCollectingStoragePoolAllocator.java | 2 +-
.../allocator/LocalStoragePoolAllocator.java | 21 +-
.../allocator/ZoneWideStoragePoolAllocator.java | 14 +-
.../storage/endpoint/DefaultEndPointSelector.java | 56 ++-
.../cloudstack/storage/volume/VolumeObject.java | 70 ++-
.../storage/volume/VolumeServiceImpl.java | 8 +
packaging/centos7/cloud.spec | 11 +-
packaging/centos8/cloud.spec | 11 +-
packaging/suse15/cloud.spec | 11 +-
plugins/hypervisors/kvm/pom.xml | 45 +-
.../kvm/resource/LibvirtComputingResource.java | 116 ++++-
.../kvm/resource/LibvirtDomainXMLParser.java | 10 +
.../hypervisor/kvm/resource/LibvirtSecretDef.java | 4 +
.../hypervisor/kvm/resource/LibvirtVMDef.java | 29 +-
.../wrapper/LibvirtCreateCommandWrapper.java | 4 +-
...atePrivateTemplateFromVolumeCommandWrapper.java | 2 +-
.../wrapper/LibvirtMigrateCommandWrapper.java | 13 +
.../LibvirtPrepareForMigrationCommandWrapper.java | 20 +-
.../wrapper/LibvirtResizeVolumeCommandWrapper.java | 139 ++++-
.../wrapper/LibvirtStopCommandWrapper.java | 4 +
.../kvm/storage/IscsiAdmStorageAdaptor.java | 20 +-
.../kvm/storage/IscsiAdmStoragePool.java | 4 +-
.../hypervisor/kvm/storage/KVMPhysicalDisk.java | 14 +
.../hypervisor/kvm/storage/KVMStoragePool.java | 4 +-
.../kvm/storage/KVMStoragePoolManager.java | 27 +-
.../kvm/storage/KVMStorageProcessor.java | 124 +++--
.../kvm/storage/LibvirtStorageAdaptor.java | 120 +++--
.../hypervisor/kvm/storage/LibvirtStoragePool.java | 8 +-
.../kvm/storage/LinstorStorageAdaptor.java | 57 ++-
.../hypervisor/kvm/storage/LinstorStoragePool.java | 11 +-
.../kvm/storage/ManagedNfsStorageAdaptor.java | 11 +-
.../kvm/storage/ScaleIOStorageAdaptor.java | 205 +++++++-
.../hypervisor/kvm/storage/ScaleIOStoragePool.java | 6 +-
.../hypervisor/kvm/storage/StorageAdaptor.java | 7 +-
.../cloudstack/utils/cryptsetup/CryptSetup.java | 124 +++++
.../utils/cryptsetup/CryptSetupException.java | 12 +-
.../cloudstack/utils/cryptsetup/KeyFile.java | 76 +++
.../cloudstack/utils/qemu/QemuImageOptions.java | 78 +++
.../org/apache/cloudstack/utils/qemu/QemuImg.java | 336 +++++++++++--
.../apache/cloudstack/utils/qemu/QemuObject.java | 128 +++++
.../kvm/resource/LibvirtComputingResourceTest.java | 41 +-
.../kvm/resource/LibvirtDomainXMLParserTest.java | 20 +
.../hypervisor/kvm/resource/LibvirtVMDefTest.java | 20 +
.../wrapper/LibvirtMigrateCommandWrapperTest.java | 35 ++
.../kvm/storage/ScaleIOStorageAdaptorTest.java | 17 +-
.../utils/cryptsetup/CryptSetupTest.java | 71 +++
.../cloudstack/utils/cryptsetup/KeyFileTest.java | 32 +-
.../utils/qemu/QemuImageOptionsTest.java | 61 +++
.../apache/cloudstack/utils/qemu/QemuImgTest.java | 59 ++-
.../cloudstack/utils/qemu/QemuObjectTest.java} | 26 +-
.../storage/resource/VmwareStorageProcessor.java | 14 +-
.../cloudstack/metrics/PrometheusExporterImpl.java | 263 ++++++++--
.../metrics/PrometheusExporterServer.java | 3 +
.../metrics/PrometheusExporterServerImpl.java | 3 +-
.../allocator/RandomStoragePoolAllocator.java | 20 +-
.../CloudStackPrimaryDataStoreDriverImpl.java | 58 ++-
.../driver/ScaleIOPrimaryDataStoreDriver.java | 217 ++++++--
...torPoolCopyVolumeToSecondaryCommandWrapper.java | 2 +-
.../kvm/storage/StorPoolStorageAdaptor.java | 11 +-
.../kvm/storage/StorPoolStoragePool.java | 8 +-
pom.xml | 18 +-
server/src/main/java/com/cloud/api/ApiDBUtils.java | 9 +-
.../java/com/cloud/api/query/QueryManagerImpl.java | 13 +-
.../com/cloud/api/query/ViewResponseHelper.java | 16 +-
.../api/query/dao/DiskOfferingJoinDaoImpl.java | 1 +
.../api/query/dao/ServiceOfferingJoinDaoImpl.java | 1 +
.../com/cloud/api/query/dao/UserVmJoinDao.java | 5 +-
.../com/cloud/api/query/dao/UserVmJoinDaoImpl.java | 9 +-
.../com/cloud/api/query/vo/DiskOfferingJoinVO.java | 6 +
.../cloud/api/query/vo/ServiceOfferingJoinVO.java | 5 +
.../configuration/ConfigurationManagerImpl.java | 20 +-
.../deploy/DeploymentPlanningManagerImpl.java | 56 ++-
.../java/com/cloud/storage/StorageManagerImpl.java | 10 +-
.../com/cloud/storage/VolumeApiServiceImpl.java | 53 +-
.../storage/snapshot/SnapshotManagerImpl.java | 12 +
.../com/cloud/template/TemplateManagerImpl.java | 15 +-
.../main/java/com/cloud/vm/UserVmManagerImpl.java | 5 +
.../cloud/vm/snapshot/VMSnapshotManagerImpl.java | 6 +
.../deploy/DeploymentPlanningManagerImplTest.java | 358 ++++++++++++-
.../cloud/storage/VolumeApiServiceImplTest.java | 56 ++-
.../src/test/resources/createNetworkOffering.xml | 1 +
systemvm/debian/opt/cloud/bin/configure.py | 7 +-
systemvm/debian/opt/cloud/bin/cs/CsAddress.py | 2 +-
test/integration/smoke/test_disk_offerings.py | 50 +-
test/integration/smoke/test_service_offerings.py | 54 +-
test/integration/smoke/test_volumes.py | 557 ++++++++++++++++++++-
ui/docs/screenshot-dashboard.png | Bin 196953 -> 2285907
bytes
ui/public/locales/en.json | 3 +
ui/src/components/view/InfoCard.vue | 2 +-
ui/src/components/widgets/Breadcrumb.vue | 2 +-
ui/src/config/section/offering.js | 4 +-
ui/src/config/section/storage.js | 3 +-
ui/src/utils/util.js | 7 +
ui/src/views/compute/DeployVM.vue | 11 +-
ui/src/views/compute/EditVM.vue | 21 +-
ui/src/views/infra/HostInfo.vue | 8 +
ui/src/views/offering/AddComputeOffering.vue | 13 +-
ui/src/views/offering/AddDiskOffering.vue | 21 +-
.../java/com/cloud/usage/UsageManagerImpl.java | 4 +-
utils/src/main/java/com/cloud/utils/UuidUtils.java | 11 +-
.../com/cloud/hypervisor/vmware/mo/ClusterMO.java | 16 +-
.../hypervisor/vmware/mo/HypervisorHostHelper.java | 2 +-
.../hypervisor/vmware/mo/VirtualMachineMO.java | 65 +--
155 files changed, 4835 insertions(+), 709 deletions(-)
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/secret/PassphraseVO.java
copy
engine/{api/src/main/java/org/apache/cloudstack/engine/datacenter/entity/api/OrganizationScope.java
=> schema/src/main/java/org/apache/cloudstack/secret/dao/PassphraseDao.java}
(79%)
copy
engine/{api/src/main/java/org/apache/cloudstack/engine/cloud/entity/api/EdgeService.java
=>
schema/src/main/java/org/apache/cloudstack/secret/dao/PassphraseDaoImpl.java}
(77%)
create mode 100644
plugins/hypervisors/kvm/src/main/java/org/apache/cloudstack/utils/cryptsetup/CryptSetup.java
copy
engine/api/src/main/java/org/apache/cloudstack/engine/subsystem/api/storage/SnapshotProfile.java
=>
plugins/hypervisors/kvm/src/main/java/org/apache/cloudstack/utils/cryptsetup/CryptSetupException.java
(75%)
create mode 100644
plugins/hypervisors/kvm/src/main/java/org/apache/cloudstack/utils/cryptsetup/KeyFile.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/org/apache/cloudstack/utils/qemu/QemuImageOptions.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/org/apache/cloudstack/utils/qemu/QemuObject.java
copy utils/src/test/java/com/cloud/utils/TernaryTest.java =>
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/storage/ScaleIOStorageAdaptorTest.java
(56%)
create mode 100644
plugins/hypervisors/kvm/src/test/java/org/apache/cloudstack/utils/cryptsetup/CryptSetupTest.java
copy
framework/spring/module/src/test/java/org/apache/cloudstack/spring/module/locator/impl/ClasspathModuleDefinitionSetLocatorTest.java
=>
plugins/hypervisors/kvm/src/test/java/org/apache/cloudstack/utils/cryptsetup/KeyFileTest.java
(52%)
create mode 100644
plugins/hypervisors/kvm/src/test/java/org/apache/cloudstack/utils/qemu/QemuImageOptionsTest.java
copy
plugins/hypervisors/kvm/src/{main/java/org/apache/cloudstack/utils/qemu/QemuImgException.java
=> test/java/org/apache/cloudstack/utils/qemu/QemuObjectTest.java} (51%)