Commit Graph

9421 Commits

Author SHA1 Message Date
Wei Zhou 8089d32740
Merge remote-tracking branch 'apache/4.20' 2025-09-09 19:50:22 +02:00
Abhishek Kumar 3ffd444294
ui: donot remove account, domain from query on public ip filter change (#11575)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-09-09 12:42:29 +02:00
Wei Zhou f99942cf9a
Merge remote-tracking branch 'apache/4.19' into 4.20 2025-09-08 10:00:01 +02:00
AndrewHaZG af2a911f1b
UI: Make logout function more robust to prevent session issues (#11361)
Improve cookie cleanup during logout by removing cookies across
multiple paths and domains to ensure complete session termination.

Fixes #11078
2025-09-08 09:24:33 +02:00
Bernardo De Marco Gonçalves f4802f30ed
UI: fix display of disk size and IOPS fields in the scale VM form (#11553) 2025-09-08 09:23:19 +02:00
Abhishek Kumar 25f1d20340
ui: show multiple domains as links in list view (#11536)
* ui: show multiple domains as links in list view

Currently, when resources are linked to multiple domains and they are
shown in the list view, they are not clickable. This PR fixes it.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* fix

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-09-03 15:05:06 +02:00
Abhisar Sinha 3d6ec29c9b
Don't show backup in list_capacity for dummy plugin or if backup_framework is disabled (#11485)
* Don't show backup storage in list_capacity for dummy plugin or if backup_framework is disabled

* Fix the tile to full size

---------

Co-authored-by: Harikrishna Patnala <harikrishna.patnala@gmail.com>
2025-09-03 15:50:46 +05:30
Abhishek Kumar f24b1757a0
ui: donot filter edge zones while registering directdownload iso (#10865)
Fixes #10766

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-09-03 11:46:10 +02:00
Abhishek Kumar 3ddd8023d0
ui: fix extension path with name having special characters (#11489)
Fixes #11481

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-09-02 18:19:01 +05:30
Wei Zhou abe41add86
Merge remote-tracking branch 'apache/4.20' 2025-09-02 08:24:37 +02:00
Harikrishna 92e7593296
Use update offering APIs to disable compute and disk offerings (#11550) 2025-09-02 11:25:32 +05:30
Suresh Kumar Anaparti 2eb80e0361
Merge branch '4.20' 2025-08-29 15:36:16 +05:30
Suresh Kumar Anaparti ca62a7dd50
Merge branch '4.19' into 4.20 2025-08-29 15:31:00 +05:30
Oleg Chuev 👋 2105794f61
UI: Hide User Card from config.userCard.enabled option (#10545)
Co-authored-by: OlegChuev <o.chuev@mobidev.biz>
2025-08-29 11:30:25 +02:00
Pearl Dsilva f80a9ca482
UI: Prevent restriction of changeOfferingForVolume API to Admin role (#11466) 2025-08-29 09:06:03 +02:00
Suresh Kumar Anaparti e0bc8c3b1a
Merge branch '4.20' 2025-08-21 18:35:34 +05:30
Pearl Dsilva df5efa5d0d
Remove non-existant network service provider from UI (#11463) 2025-08-21 17:55:10 +05:30
Suresh Kumar Anaparti 2c34f5e495
Merge branch '4.20' 2025-08-15 19:54:41 +05:30
Suresh Kumar Anaparti 9111bbd8da
Merge branch '4.19' into 4.20 2025-08-15 19:49:59 +05:30
Wei Zhou d4bd587231
UI: fix addHost in zone wizard (#11401) 2025-08-15 16:25:15 +05:30
Suresh Kumar Anaparti 96728c5a17
Merge branch '4.20' 2025-08-11 20:44:26 +05:30
Abhishek Kumar f5b4858012
ui: make vpc cidr required when not showing cidrsize (#11393)
Fixes #11391

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-08-11 20:41:57 +05:30
Nicolas Vazquez 53b026487f
UI: Fix duplicate edit zone button on Basic zones (#11427) 2025-08-11 16:40:44 +05:30
Vishesh 26218b093e
Fix edit of compute offering in UI (#11417) 2025-08-11 16:23:59 +05:30
Nicolas Vazquez 7d59bfe2b5
[UI] Fix zone creation wizard stuck on configuring public traffic (#11404)
* [UI] Fix zone wizard creation stuck on configuring public traffic
2025-08-07 18:18:39 +05:30
Suresh Kumar Anaparti ca8ce8c885
Merge branch '4.20' 2025-08-04 16:44:40 +05:30
Suresh Kumar Anaparti 7acd5a3875
Merge branch '4.19' into 4.20 2025-08-04 16:42:49 +05:30
slavkap e5f61164b3
Support of snapshot copy to primary storage in different zones. (#9478)
* Support of snapshot copy to different StorPool primary storage between zones
2025-08-04 16:35:16 +05:30
Abhisar Sinha 626f3de69a
Handle project delete in detailsview. (#11197) 2025-08-04 16:26:37 +05:30
Abhishek Kumar a0fd37f495
ui: pass validated storagepolicy for swift store (#11315)
Fixes #9789

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-08-04 16:21:58 +05:30
Pearl Dsilva db63d2428b
Netris: Fix Netris provider parameter name and response (#11377)
* Fix Netris url param name and allow cidr size for routed mode vpcs

* rename response parameter name
2025-08-02 22:33:43 +05:30
Suresh Kumar Anaparti 5c1bf4a4ce
Merge branch '4.20' 2025-08-01 18:00:45 +05:30
Suresh Kumar Anaparti 14feb259f6
Merge branch '4.19' into 4.20 2025-08-01 17:59:58 +05:30
Abhishek Kumar b2ce1fb9c3
ui: fix initial pagination for images in deploy forms (#11349)
Regression from #10773

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-08-01 17:44:01 +05:30
Abhishek Kumar 1bfebd550c
ui: update project menu on projects change (#11369)
Fixes #11357

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-08-01 17:41:02 +05:30
Abhishek Kumar b479d37b87
ui: fix api type in InfiniteScrollSelect (#11370)
Earlier it was always using HTTP POST. Ideally it will always be some
list API.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-08-01 17:39:50 +05:30
Abhishek Kumar a60c8cab14
api,server,ui: allow listing events by state (#11355)
* api,server,ui: allow listing events by state

This change allows listing events by a particular state - Created, Scheduled, Started, Completed.
A new parameter - state has been added to the listEvents API and corresponding changes have been added in the UI.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* Update api/src/main/java/org/apache/cloudstack/api/command/user/event/ListEventsCmd.java

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-31 19:22:15 +05:30
slavkap adccdf2c7b
UI support for deploy a VM from volume/snapshot (#11164)
* UI support for deploy  a virtual machine with existing volume or a disk snapshot
2025-07-31 19:00:11 +05:30
Vishesh bcd738caa6
Fix GPU discovery script to make it run with mdev for SR-IOV enabled devices (#11340) 2025-07-31 18:29:35 +05:30
Abhisar Sinha e805e45342
Show chain size in snapshot response for incremental snapshots (#11313) 2025-07-31 14:52:48 +02:00
Pearl Dsilva 9f5828a027
UI: Fix cpu & memory details on list view for unmanaged k8s clusters (CAPC) (#11353) 2025-07-31 18:14:55 +05:30
Abhisar Sinha a87c5c2b3a
Create new Instance from VM backup (#10140)
This feature adds the ability to create a new instance from a VM backup for dummy, NAS and Veeam backup providers. It works even if the original instance used to create the backup was expunged or unmanaged. There are two parts to this functionality:
Saving all configuration details that the VM had at the time of taking the backup. And using them to create an instance from backup.
Enabling a user to expunge/unmanage an instance that has backups.
2025-07-31 15:47:22 +05:30
Suresh Kumar Anaparti 6589235b71
Merge branch '4.19' into 4.20 2025-07-31 15:23:02 +05:30
Nico 6b9615b2f9
Selected type on update traffic type is based on chosen type in traffic types tab (#10902)
Co-authored-by: Nicole Schmidt <nicole.schmidt@scclouds.com.br>
2025-07-31 15:21:19 +05:30
Abhishek Kumar 3850445b50
ui: fix delete traffic type (#11337)
Currently wrong parameter - 'itemd' is passed to the `deleteTrafficType` method.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-31 15:17:01 +05:30
Suresh Kumar Anaparti f58372e97b
[UI] Use GET request method for list API calls (#11354)
* [UI] Use GET request method for list API calls

* Updated UI unit tests
2025-07-31 15:09:12 +05:30
Suresh Kumar Anaparti 1f1e38f3a8
Support to list templates in ready state (new API parameter 'isready', similar to list ISOs) (#11343)
* Support to list templates in ready state (new API parameter 'isready', similar to list ISOs), and UI to display Templates/ISOs in ready state wherever applicable
2025-07-31 10:08:35 +05:30
Suresh Kumar Anaparti 70468a6258
Merge branch '4.20' 2025-07-30 18:30:07 +05:30
Bernardo De Marco Gonçalves f73cb5621d
Refactoring retention of backup schedules (#11223)
* refactor backup schedule retention workflows

Co-authored-by: Fabricio Duarte <fabricio.duarte.jr@gmail.com>
2025-07-30 18:12:04 +05:30
Pearl Dsilva 1dc134a3ec
UI: Display NSX Provider only when NSX is the selected Isolation method (#11142) 2025-07-30 14:11:13 +02:00
Suresh Kumar Anaparti 76cfcb48fb
Merge branch '4.20' 2025-07-30 11:21:12 +05:30
Suresh Kumar Anaparti 96ed9d47bc
Merge branch '4.19' into 4.20 2025-07-30 11:10:17 +05:30
Abhishek Kumar 8497f70b46
ui: make events tab selected columns persistent using cache (#11317)
Fixes #10308

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-30 11:07:38 +05:30
Abhishek Kumar 7506a547af
kvm, ui: fix interface when using vlan subnet for storage traffic type (#11245)
* kvm, ui: fix interface when using vlan subnet for storage traffic type

Fixes #7816

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-30 11:04:58 +05:30
Abhishek Kumar fd4223295a
ui: fix advance setting behaviour in autoscale form (#11306)
Fixes #11269

The current dysfunctional behaviour was introduced in #6571. In advanced
settings interface for ssh keypairs, userdata, affinity group, etc are
show but the toggle to show/hide them was not working correctly.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-30 10:56:33 +05:30
Abhisar Sinha da3ba17884
Fix build and ui build errors in main (#11332)
* fix build error in registeruserdatacmd

* remove unused imports

* fix ui build errors
2025-07-29 17:02:16 -03:00
Daan Hoogland 0b3959221b Merge branch '4.20' 2025-07-29 16:50:55 +02:00
Suresh Kumar Anaparti 1961aea770
Merge branch '4.19' into 4.20 2025-07-29 18:18:33 +05:30
Abhishek Kumar e9918ba15d
ui: fix volume size not showing (#11328)
Fixes #11321

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-29 17:12:31 +05:30
Nicolas Vazquez 8756be5c18
[Multi-Arch] Select Template Arch when creating template from volume (#11068)
Co-authored-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
Co-authored-by: Vishesh <vishesh92@gmail.com>
2025-07-29 11:41:43 +02:00
Vishesh f6ad184ea2
Feature: Add support for GPU with KVM hosts (#11143)
This PR allows attaching of GPU devices via PCI, mdev or VF to an Instance for KVM.

It allows the operator to discover the GPU devices on the KVM host and create a Compute Offering with GPU support based on the available GPU devices on the host. Once the operator has created the Compute offering, it can be used by users to launch Instances with GPU devices.
2025-07-29 13:46:24 +05:30
Abhishek Kumar 4aed972e78
api,server,extensions: allow updating extension resource map details (#11303)
* api,server,extensions: allow updating extension resource map details

This PR makes changes for allowing updating details for an extension resource mapping.
Currently, extensions only support Cluster to be registered therefore changes has been added to updateCluster functionality.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-29 10:25:52 +05:30
Abhishek Kumar d693736ee8
ui: fix NAN% used memory for vm (#11307) 2025-07-28 14:59:17 +02:00
Suresh Kumar Anaparti 45edf82efa
[UI] Fix for local storage enable/disable toggle in edit zone (#11309) 2025-07-28 17:54:00 +05:30
Pearl Dsilva ca6d2dc57e
Prevent multi-select dropdown menu from floating on scrolling through the form (#11237) 2025-07-28 11:20:42 +02:00
Harikrishna cca8b2fef9
Extensions Framework & Orchestrate Anything (#9752)
The Extensions Framework in Apache CloudStack is designed to provide a flexible and standardised mechanism for integrating external systems and custom workflows into CloudStack’s orchestration process. By defining structured hook points during key operations—such as virtual machine deployment, resource preparation, and lifecycle events—the framework allows administrators and developers to extend CloudStack’s behaviour without modifying its core codebase.
2025-07-28 10:41:17 +05:30
Abhishek Kumar 217ff27650
ui: fix compute offering edit (#11232)
Fixes #11216

There is no parameter named 'storageaccessgroups' in updateServiceOffering API.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-26 13:17:31 +05:30
Nicolas Vazquez 40035f54d0
[UI] Add dedicated account field dropdown on zone creation (#11195) 2025-07-26 12:36:47 +05:30
Daan Hoogland 609efcc231 Merge branch '4.19' into 4.20 2025-07-25 22:01:17 +02:00
Pearl Dsilva 0d4147f3f6
Netris Network Plugin Integration with CloudStack (#10458)
The Netris Plugin introduces Netris as a network service provider in CloudStack to be able to create and manage Virtual Private Clouds (VPCs) in CloudStack, being able to orchestrate the following network functionalities:

- Network segmentation with Netris-VXLAN isolation method
- Routing between "public" IP and network segments with an ACS ROUTED mode offering
- SourceNAT, DNAT, 1:1 NAT between "public" IP and network segments with an ACS NATTED mode offering
- Routing between VPC network segments (tiers in ACS nomenclature)
- Access Lists (ACLs) between VPC tiers and "public" network (TCP, UDP, ICMP) both as global egress rules and "public" IP specific ingress rules.
- ACLs between VPC network tiers (TCP, UDP, ICMP)
- External load balancing – between VPC network tiers and "public" IP
- Internal load balancing – between VPC network tiers
- CloudStack Virtual Router services (DHCP, DNS, UserData, Password Injection, etc…)
2025-07-25 15:26:42 +05:30
Nicolas Vazquez a51a04efc2
[Vmware to KVM Migration] Preserve boot type and boot mode of instances to be migrated (#10975)
* [Vmware to KVM Migration] Preserve boot type and boot mode of instances to be migrated

* Restore end of line

* Extract lines to new method

* Address review comments
2025-07-25 12:30:42 +05:30
Abhisar Sinha eeb4d55e89
polish: Fix some inconsistencies in object names and messages (#10856)
* Replace ACL list with ACL and related changes to the json files in public/locales

* Replace ACL list with ACL and related changes to network.js, VpcTab.vue and AclRulesTab.vue

* Replace Export ACLs with Export ACL rules

* standardize the term user data everywhere. fix the placeholder in register user data form.

* Convert resource names in main menu and action buttons to Title case

* Use special icon for sharedfs instance and prefix for sharedfs volumes

* Give custom icon precedence over shared fs icon

* Fixed some issues with public/locale files

* Revert sharedfsvm changes

* Added label.add.acl.name to en.json which was incorrectly removed

* replace all *userdata* labels to *user.data* in public json files.

* remove redundant labels label.user.data.l2 and label.replace.acl.list

* Update ui/src/views/offering/AddNetworkOffering.vue

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* user data -> User Data in cmd and response

* fix more Title case on action buttons and labels.

---------

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-24 22:18:35 +05:30
nvazquez 935c568082
Merge fix for UI 2025-07-24 13:33:30 -03:00
Nicolas Vazquez 11455f6d49
UI: Add option to Login to a specific Project view via setting on config.json (#10935)
* UI: Login to a specific Project view

* Fix project icon

* Add the option to display project on login on the config.json file

---------

Co-authored-by: Pearl Dsilva <pearl1594@gmail.com>
2025-07-24 11:42:25 -03:00
Nicolas Vazquez 22b753e930
[UI] Deploy VM: Preselect first available template (#11207) 2025-07-24 12:18:07 +02:00
Pearl Dsilva 948ecda785
UI: Fix missing labels (#11102)
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-24 13:17:18 +05:30
Pearl Dsilva 071e612f40
UI: Fix OS Type displayed for a VM (#11075)
* UI: Fix OS Type displayed

* remove unnecessary method for os name change

---------

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-24 12:59:36 +05:30
Manoj Kumar 264e404108
Fix for dynamic scaling toggle for instance (#11086)
* Fix for dynamic scaling toggle for instance

* Update api/src/main/java/org/apache/cloudstack/api/response/CapabilitiesResponse.java

---------

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-24 09:30:20 +05:30
John Bampton 165ab0aabe
Fix HTML license; standardize HTML code (#11067)
Co-authored-by: Vishesh <vishesh92@gmail.com>
2025-07-23 17:25:15 +02:00
Abhisar Sinha d63899fc8a
Set Content-Type from the file type (#11093) 2025-07-23 16:12:53 +05:30
Vishesh a710ff8c6d
UI: Fix ISO Hypervisor selection (#11261) 2025-07-23 13:07:02 +05:30
Bernardo De Marco Gonçalves 9d049707d5
Fix deletion of backup schedules (#11222) 2025-07-23 09:31:17 +02:00
Abhisar Sinha d72a05aa5a
Add special Icon to Shared FileSystem Instances (#10857)
* Use special icon for sharedfs instance and prefix for sharedfs volumes

* Give custom icon precedence over shared fs icon

* Fix sharedfsvm icon size

* Fix UT failure in StorageVmSharedFSLifeCycleTest
2025-07-23 11:21:59 +05:30
Abhisar Sinha e7172161dd
Guard OS type update for iso/template with existing vms (#11215)
* Guard OS type update for iso/template with existing vms

* fix identation

* rename vm -> instance

* force update iso/template as true by default via api

* add missing message.success.update.iso label
2025-07-22 18:42:24 +05:30
Pearl Dsilva 15c09af5cc
UI: Fix traffic Label on Zone creation wizard for VMware (#11101) 2025-07-17 09:31:28 +02:00
Bernardo De Marco Gonçalves bf46458578
List templates and ISOs by domain (#11179) 2025-07-17 09:01:49 +02:00
Manoj Kumar 65d359228d
Allow populating generic templates during Zone Deployment (#10947) 2025-07-16 12:24:06 +02:00
João Jandre 53eb2c5b9b
File-based disk-only VM snapshot with KVM as hypervisor (#10632)
Co-authored-by: João Jandre <joao@scclouds.com.br>
Co-authored-by: Fabricio Duarte <fabricio.duarte.jr@gmail.com>
2025-07-16 08:54:07 +02:00
Vishesh f52e05863e
UI fix api in project view (#11191)
* Add project id for post requests as well in the params

* Replace leftover api calls to getAPI calls

* ui: don't remove values from request if the value is null or empty string

* Address comments

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* fixup

* Return null if guiTheme requests fails

---------

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-15 18:19:46 +05:30
Bryan Lima fb6adacc51
GUI whitelabel runtime system (#8942)
* Add first version

* Add guithemedetails join

* Update since and remove extra line

* Limit information on API response for non admin users

* Add base files for preset themes

* Add miising license

* Revert cookie check

* Fix imports

* Fix pre-commit

* Address log4j2 string to format review and add license to css files

* Fix infinite loading

* Move event details to service implementation

* Move view to a specific view file

* Refactoring gui theme classes

* Normalize package name

* Address Henrique review

* Fix create table SQL

* Add interface for Dao classes

* Remove extra tabs

* Address unauthorized call when 2FA is enabled

* Remove trailing whitespaces

* Apply suggestions from code review

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

---------

Co-authored-by: Henrique Sato <henriquesato2003@gmail.com>
Co-authored-by: Bernardo De Marco Gonçalves <bernardomg2004@gmail.com>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-07-15 13:29:09 +05:30
Daan Hoogland 0dbd761fbb Merge branch '4.20' 2025-07-14 11:17:08 +02:00
Bernardo De Marco Gonçalves 1cbf1cd2cd
fix volumes search filter (#11168) 2025-07-09 14:31:18 +02:00
Manoj Kumar 8e4fe1c370
Allow configuring Announcement banner by admin (#10951)
* Allow configuring Announcement banner by admin

* add license

* revert un-necessary changes from package-lock.json

* banner should use 100% width and push down content down

* fix grey area issue

* show error page if config.json is not valid
2025-07-07 13:56:58 +05:30
Suresh Kumar Anaparti 749ddb975f
Support ApiServer to enforce POST requests for state changing APIs and requests with timestamps (#10899)
Co-authored-by: Kevin Li <kli74@apple.com>
2025-07-05 15:25:48 +02:00
Abhishek Kumar ed7bd5e580
ui: fix handler for deploy button menu (#11116)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-07-03 15:30:42 +02:00
Daan Hoogland 3e3a0c0678 Merge branch '4.20' 2025-07-03 15:29:05 +02:00
Harikrishna 3b54194aef
Correct quota type indexes (#11085) 2025-07-03 09:45:35 +02:00
Suresh Kumar Anaparti be22bfe2c9
Management Server - Prepare for Maintenance and Cancel Maintenance improvements (#10995)
* Management Server - Prepare for Maintenance and Cancel Maintenance improvements:
- Added new setting 'management.server.maintenance.ignore.maintenance.hosts' to ignore hosts in maintenance states  while preparing management server for maintenance. This skips agent transfer and agents count check for hosts in maintenance.
- Rebalance indirect agents after cancel maintenance, using rebalance parameter in cancelMaintenance API
- Force maintenance after maintenance window timeout, using forced parameter in prepareForMaintenance API.
- Propagate 'indirect.agent.lb.check.interval' setting change to the host agents.

* rebases fixes

* code improvements, cleanup

* [UI] Set rebalance true by default in cancel maintenance dialog

* Update MS state after executing cluster cmd in the target MS, and some code improvements

* code improvements

* Ensure the host lb algorithm 'shuffle' is applied once before disabling the indirect agent lb check background task
2025-07-03 12:17:04 +05:30
João Jandre ba0204f8ed
Block volume shrink on Xen (#11004)
Co-authored-by: João Jandre <joao@scclouds.com.br>
2025-06-24 09:23:57 -03:00
Abhishek Kumar 0bd35a5403
ui: fix missing changes from #10814 (#11060)
Some changes from PR #10814 are missing in DeployVM and DeployVnf
wizards causing warnings in teh browser console.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-06-23 17:48:46 +02:00
Nicolas Vazquez 75147b7811
[Vmware to KVM Migration] Display virt-v2v and ovftool versions for supported hosts for migration (#11019)
* [Vmware to KVM Migration] Display virt-v2v and ovftool versions for supported hosts for migration

* Fix UI display

* Address review comments

* Fix ovftool and version display - also display versions on host details view
2025-06-23 12:49:51 +02:00
Nicolas Vazquez 5790091b25
[Vmware to KVM Migration] Improve the Force MS option text (#11035) 2025-06-19 11:34:35 +02:00
Nicolas Vazquez 6adfda2818
CKS Enhancements (#9102)
CKS Enhancements:

* Ability to specify different compute or service offerings for different types of CKS cluster nodes – worker, master or etcd

* Ability to use CKS ready custom templates for CKS cluster nodes

* Add and Remove external nodes to and from a kubernetes cluster

Co-authored-by: nvazquez <nicovazquez90@gmail.com>

* Update remove node timeout global setting

* CKS/NSX : Missing variables in worker nodes

* CKS: Fix ISO attach logic

* CKS: Fix ISO attach logic

* address comment

* Fix Port - Node mapping when cluster is scaled in the presence of external node(s)

* CKS: Externalize control and worker node setup wait time and installation attempts

* Fix logger

* Add missing headers and fix end of line on files

* CKS Mark Nodes for Manual Upgrade and Filter Nodes to add to CKS cluster from the same network

* Add support to deploy CKS cluster nodes on hosts dedicated to a domain

---------

Co-authored-by: Pearl Dsilva <pearl1594@gmail.com>

* Support unstacked ETCD

---------

Co-authored-by: nvazquez <nicovazquez90@gmail.com>

* Fix CKS cluster scaling and minor UI improvement

* Reuse k8s cluster public IP for etcd nodes and rename etcd nodes

* Fix DNS resolver issue

* Update UDP active monitor to ICMP

* Add hypervisor type to CKS cluster creation to fix CKS cluster creation when External hosts added

* Fix build

* Fix logger

* Modify hypervisor param description in the create CKS cluster API

* CKS delete fails when external nodes are present

* CKS delete fails when external nodes are present

* address comment

* Improve network rules cleanup on failure adding external nodes to CKS cluster

* UI: Fix etcd template was not honoured

* UI: Fix etcd template was not honoured

* Refactor

* CKS: Exclude etcd nodes when calculating port numbers

* Fix network cleanup in case of CKS cluster failure

* Externalize retries and inverval for NSX segment deletion

* Fix CKS scaling when external node(s) present in the cluster

* CKS: Fix port numbers displayed against ETCD nodes

* Add node version details to every node of k8s cluster - as we now support manual upgrade

* Add node version details to every node of k8s cluster - as we now support manual upgrade

* update column name

* CKS: Exclude etcd nodes when calculating port numbers

* update param name

* update param

* UI: Fix CKS cluster creation templates listing for non admins

* CKS: Prevent etcd node start port number to coincide with k8s cluster start port numbers

* CKS: Set default kubernetes cluster node version to the kubernetes cluster version on upgrade

* CKS: Set default kubernetes cluster node version to the kubernetes cluster version on upgrade

* consolidate query

* Fix upgrade logic

---------

Co-authored-by: nvazquez <nicovazquez90@gmail.com>

* Fix CKS cluster version upgrade

* CKS: Fix etcd port numbers being skipped

* Fix CKS cluster with etcd nodes on VPC

* Move schema and upgrade for 4.20

* Fix logger

* Fix after rebasing

* Add support for using different CNI plugins with CKS

* Add support for using different CNI plugins with CKS

* remove unused import

* Add UI support and list cni config API

* necessary UI changes

* add license

* changes to support external cni

* UI changes

* Fix NPE on restarting VPC with additional public IPs

* fix merge conflict

* add asnumber to create k8s svc layer

* support cni framework to use as-numbers

* update code

* condition to ignore undefined jinja template variables

* CKS: Do not pass AS number when network ID is passed

* Fix deletion of Userdata / CNI Configuration in projects

* CKS: Add CNI configuration details to the response and UI

* Explicit events for registering cni configuration

* Add Delete cni configuration API

* Fix CKS deployment when using VPC tiers with custom ACLs

* Fix DNS list on VR

* CKS: Use Network offering of the network passed during CKS cluster creation to get the AS number

* CKS cluster with guest IP

* Fix: Use control node guest IP as join IP for external nodes addition

* Fix DNS resolver issue

* Improve etcd indexing - start from 1

* CKS: Add external node to a CKS cluster deployed with etcd node(s) successfully

* CKS: Add external node to a CKS cluster deployed with etcd node(s) successfully

* simplify logic

* Tweak setup-kube-system script for baremetal external nodes

* Consider cordoned nodes while getting ready nodes

* Fix CKS cluster scale calculations

* Set token TTL to 0 (no expire) for external etcd

* Fix missing quotes

* Fix build

* Revert PR 9133

* Add calico commands for ens35 interface

* Address review comments: plan CKS cluster deployment based on the node type

* Add qemu-guest-agent dependency for kvm based templates

* Add marvin test for CKS clusters with different offerings per node type

* Remove test tag

* Add marvin test and fix update template for cks and since annotations

* Fix marvin test for adding and removing external nodes

* Fix since version on API params

* Address review comments

* Fix unit test

* Address review comments

* UI: Make CKS public templates visible to non-admins on CKS cluster creation

* Fix linter

* Fix merge error

* Fix positional parameters on the create kubernetes ISO script and make the ETCD version optional

* fix etcd port displayed

* Further improvements to CKS  (#118)

* Multiple nics support on Ubuntu template

* Multiple nics support on Ubuntu template

* supports allocating IP to the nic when VM is added to another network - no delay

* Add option to select DNS or VR IP as resolver on VPC creation

* Add API param and UI to select option

* Add column on vpc and pass the value on the databags for CsDhcp.py to fix accordingly

* Externalize the CKS Configuration, so that end users can tweak the configuration before deploying the cluster

* Add new directory to c8 packaging for CKS config

* Remove k8s configuration from resources and make it configurable

* Revert "Remove k8s configuration from resources and make it configurable"

This reverts commit d5997033ebe4ba559e6478a64578b894f8e7d3db.

* copy conf to mgmt server and consume them from there

* Remove node from cluster

* Add missing /opt/bin directory requrired by external nodes

* Login to a specific Project view

* add indents

* Fix CKS HA clusters

* Fix build

---------

Co-authored-by: Nicolas Vazquez <nicovazquez90@gmail.com>

* Add missing headers

* Fix linter

* Address more review comments

* Fix unit test

* Fix scaling case for the same offering

* Revert "Login to a specific Project view"

This reverts commit 95e37563f4.

* Revert "Fix CKS HA clusters" (#120)

This reverts commit 8dac16aa35.

* Apply suggestions from code review about user data

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* Update api/src/main/java/org/apache/cloudstack/api/command/user/userdata/BaseRegisterUserDataCmd.java

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* Refactor column names and schema path

* Fix scaling for non existing previous offering per node type

* Update node offering entry if there was an existing offering but a global service offering has been provided on scale

---------

Co-authored-by: Pearl Dsilva <pearl1594@gmail.com>
Co-authored-by: Daan Hoogland <daan@onecht.net>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-06-19 11:00:42 +05:30
Davi Torres 4662ffc424
Changes baseurl for downloading kubectl (#11040) 2025-06-17 16:40:28 +02:00
Abhishek Kumar 40b0e7cd63
ui: fix build after forward merge (#11010)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-06-12 11:33:59 +05:30
Pearl Dsilva a13728360b Fix issue with forward merge 2025-06-11 18:12:18 +05:30
Pearl Dsilva 875223c5b4 Merge branch '4.20' of https://github.com/apache/cloudstack 2025-06-11 17:11:41 +05:30
Abhishek Kumar bce17b627d
ui,api,server: template categorization based on os (#10773)
Adds new interface for image selection (template/iso) for an instance in UI.
Old interface can still be used and it can be configured using UI configuration (config.json)

OS categories/Guest OS categories have been improved with ability to create new categories, delete an existing category, and marking a category as featured to allow it to show up in the UI in the image selection interface.

New APIs added:
- addOsCategory
- deleteOsCategory
- updateOsCategory

APIs updated:
- updateOsType
- listTemplates
- listOsCategories

Several improvements in UI especially related to forms - DeloyVM, ReinstallVM, CreateVnfAppliance, AddAutoscaleGroup.

DeployVM form can now be opened from template/ISO details view with query params.

Reorganized (removed and added some) OS categories to the following (in the same order):
```
1. Ubuntu
2. Debian
3. Fedora
4. CentOS
5. Rocky Linux
6. Alma Linux
7. Oracle
8. RedHat
9. SUSE
10. Windows
11. Other
```

Documentation PR: https://github.com/apache/cloudstack-documentation/pull/500

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-06-10 15:25:51 +05:30
Abhishek Kumar 0b841fefcb
ui: show deploy/create button on right info pane (#10814)
* add deploy button on info card

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* info height

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* fix

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* hide cancel button

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-06-10 15:22:16 +05:30
Abhishek Kumar 41b4f0afd5
ui: missing changes from #10115 (#10949)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-06-04 20:13:43 +02:00
Manoj Kumar 7632814cd2
Instance lease: Allow deployment of instances with lease duration and leaseexpiry action (#10560)
* FR-248: Instance lease, WIP commit

* insert lease expiry into db and use that to filter exiring vms, add asyncjobmanager

* Add leaseDuration and leaseExpiryAction in Service offering create flow

* Update listVM cmd to allow listing only leased instances

* Add methods to fetch instances for which lease is expiring in next days

* Changes included:
config key setup and configured for alert email
lease options in create and update vm screen
handle delete protection, edit vm, create vm
validated stop and detroy, delete protection

* Update UI screens for leased properties coming from config and service offering

* use global lock before running scheduler

* Unit tests

* Flow changes done in UI based on discussion

* Include view changes in schema upgrade files and use feature in various UI elements

* Added integration test for vm deployment, UI enhancements for user persona, bug fixes

* validate integration tests, minor ui changes and log messages

* fix build: moving configkey from setup to test itself

* Disable testAlert to unblock build and trim whitespaces in integration tests

* Address review comments

* Minor changes in EditVM screen

* Use ExecutorService instead of Timer and TimerTask

* Additional review comments

* Incorporate following changes:
1. Execute lease action once on the instance
2. Cancel lease on instance when feature is disabled
3. Relevant events when lease gets disabled, cancelled, executed
4. Disable associating lease after deployment
5. UI elements and flow changes
6. Changes based on feedback from demo

* Handle pr review comments

* address review comments

* move instance.lease.enabled config to VMLeaseManager interface

* bug fix in edit instance flow and reject api request for invalid values

* max allowed lease is for 100 years

* log instance ids for expired instance

* Fix config validation for value range and code coverage improvement

* fix lease expiry request failures in async

* dont use forced: true for StopVmCmd

* Update server/src/main/java/org/apache/cloudstack/vm/lease/VMLeaseManager.java

Co-authored-by: Vishesh <vishesh92@gmail.com>

* handle review comments

---------

Co-authored-by: Rohit Yadav <rohityadav89@gmail.com>
Co-authored-by: Vishesh <vishesh92@gmail.com>
2025-05-28 17:40:09 +05:30
Wei Zhou 842b2f8c24
Merge remote-tracking branch 'apache/4.20' 2025-05-19 21:25:37 +02:00
Harikrishna b17808bfba
Introducing Storage Access Groups for better management for host and storage connections (#10381)
* Introducing Storage Access Groups to define the host and storage pool connections

In CloudStack, when a primary storage is added at the Zone or Cluster scope, it is by default connected to all hosts within that scope. This default behavior can be refined using storage access groups, which allow operators to control and limit which hosts can access specific storage pools.

Storage access groups can be assigned to hosts, clusters, pods, zones, and primary storage pools. When a storage access group is set on a cluster/pod/zone, all hosts within that scope inherit the group. Connectivity between a host and a storage pool is then governed by whether they share the same storage access group.

A storage pool with a storage access group will connect only to hosts that have the same storage access group. A storage pool without a storage access group will connect to all hosts, including those with or without a storage access group.
2025-05-19 11:33:29 +05:30
Daan Hoogland 8f8c685d17 Merge branch '4.19' into 4.20 2025-05-16 15:51:37 +02:00
Pearl Dsilva 39a0ba9670
Fix issue with security group selection box display (#10849)
Co-authored-by: toolmanwyj <wyjtoolmancc@gmail.com>
2025-05-16 12:35:04 +02:00
Abhishek Kumar 951863c3fe
ui: add an infinite scroll select component (#10840)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-05-16 12:27:19 +02:00
Erik Böck 7bab40db6f
disabled create and add volume button for VMs in Error state (#10859)
Co-authored-by: erik.silva.scclouds <erik.silva@scclouds.com.br>
2025-05-15 09:36:42 +02:00
Abhisar Sinha 3df83da86c
Get backup offering details from listVirtualMachinesMetrics in UI (#10867) 2025-05-14 20:42:38 +05:30
Nicolas Vazquez 8d3ae3e057
[Vmware] Improve listing of Vmware Datacenter VMs for migration to KVM (#10770)
Co-authored-by: dahn <daan.hoogland@gmail.com>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-05-14 08:12:27 +02:00
Pearl Dsilva 1e5d133033 Merge branch '4.20' of https://github.com/apache/cloudstack 2025-05-12 13:12:09 +05:30
Pearl Dsilva a21f912be3 Merge branch '4.19' of https://github.com/apache/cloudstack into 4.20 2025-05-12 12:41:34 +05:30
Abhishek Kumar c453aaea2c
ui: improve metrics api use in list views (#9825)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-05-09 11:33:57 +02:00
Fabricio Duarte 751a0ad559
UI workaround for the inconsistent formatting of listVirtualMachinesUsageHistory (#10824) 2025-05-09 10:01:53 +02:00
Vitor Hugo Homem Marzarotto f4ca7064b7
Add search bar on rules of roles (#10822)
Co-authored-by: Vitor Hugo Homem Marzarotto <vitor.marzarotto@scclouds.com.br>
2025-05-08 11:39:20 +02:00
Pearl Dsilva 39c5641cbe Merge branch '4.20' of https://github.com/apache/cloudstack 2025-05-05 10:15:05 +05:30
Pearl Dsilva f6d0590424 Merge branch '4.19' of https://github.com/apache/cloudstack into 4.20 2025-05-05 10:14:46 +05:30
Imvedansh 1f8442eb69
Extra checks in UI when deleting accounts (#10760)
Co-authored-by: Bernardo De Marco Gonçalves <bernardomg2004@gmail.com>
2025-05-02 17:36:46 +02:00
dahn 74e9146cfb
check for custom offering and trim size (#10629) 2025-05-02 13:52:00 +02:00
Pearl Dsilva 91c1168861 Merge branch '4.19' of https://github.com/apache/cloudstack into 4.20 2025-05-02 14:59:05 +05:30
Suresh Kumar Anaparti 32cc45e840
[UI] Allow quiescevm and asyncbackup flags while taking volume snapshot from UI when these are supported for the volume (#10265) 2025-05-02 10:45:50 +02:00
Daan Hoogland d7d9d131b2 Merge branch '4.20' 2025-05-01 15:44:09 +02:00
Daan Hoogland 01d87b7747 Merge branch '4.19' into 4.20 2025-05-01 09:36:14 +02:00
Wei Zhou 4c072b5bf9
UI: show checksum field when register or upload template/isos (#10725) 2025-05-01 09:17:37 +02:00
Pearl Dsilva 0c4ed1e5b7
UI: Allow editing VM name of a Running VM in an Advanced zone with security groups (#10714) 2025-05-01 09:02:30 +02:00
Bernardo De Marco Gonçalves 02d1c61cf7
add amount of system VMs that are allocated to each host in the hosts ListView (#10791) 2025-05-01 11:46:26 +05:30
Pearl Dsilva 2df1ac5106 Merge branch '4.20' of https://github.com/apache/cloudstack 2025-04-28 12:15:48 +05:30
Pearl Dsilva 0785ba046e Merge branch '4.19' of https://github.com/apache/cloudstack into 4.20 2025-04-28 11:10:08 +05:30
Wei Zhou 5d28e66b52
vTPM: support KVM and VMware (#10543)
* KVM: add Virtual TPM model and version

* KVM: add admin-only VM setting GUEST.CPU.MODE and GUEST.CPU.MODEL

* VMware: add vTPM

* vTPM: do not set Key due to 'Cannot add multiple devices using the same device key..'

* vTPM: add unit test testTpmModel

* engine/schema: remove user vm details for guest CPU mode/model

* vTPM: extra methods as Daan's requests

* vTPM: add unit tests in VmwareResourceTest

* vTPM: update unit tests in VmwareResourceTest

* vTPM: add unit test in LibvirtComputingResourceTest

* vTPM: use the default TPM version if an invalid version is passed

* vTPM: requires UEFI on vmware and do nothing if it is not enabled/disabled

* vTPM: let uses to add UEFI on vmware

* Update plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/resource/VmwareResource.java

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* Update plugins/hypervisors/vmware/src/main/java/com/cloud/hypervisor/vmware/resource/VmwareResource.java

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* vTPM: remove template details for guest CPU mode/model

* UI: boot vm from ISO into UEFI/SECURE mode

---------

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2025-04-26 14:35:36 +05:30
Abhishek Kumar 12c077d704
api,ui: multi arch improvements (#10289) 2025-04-25 11:02:27 +02:00
dahn 5a5c865133
Revert "Add the option to filter by host when retrieving of unregistered VMs (#9925)" (#10647)
This reverts commit aa6c581e40.
2025-04-24 09:06:57 +02:00
Pearl Dsilva 576b97ba22 Merge branch '4.20' of https://github.com/apache/cloudstack 2025-04-24 09:22:40 +05:30
Pearl Dsilva 992c4b3d4a Merge branch '4.19' of https://github.com/apache/cloudstack into 4.20 2025-04-24 09:16:33 +05:30
Abhishek Kumar 431e4f9e1d
ui: confirm on reset configurations (#10745) 2025-04-23 12:29:08 +02:00
Pearl Dsilva ffc0d51616 Merge branch '4.20' of https://github.com/apache/cloudstack 2025-04-22 03:31:44 -04:00
Vishesh 45bac89b83
Fix NPE on updating security groups for an instance (#10493)
* Fix NPE on updating security groups for an instance

* addressed review comments

* Method refactoring

---------

Co-authored-by: Harikrishna Patnala <harikrishna.patnala@gmail.com>
2025-04-22 03:12:30 -04:00
Wei Zhou 0af887bce1
UI: Update message of load balancer for autoscaling group (#10750) 2025-04-20 23:42:16 -04:00
Daan Hoogland 3c75d9363b Merge branch '4.20' 2025-04-17 15:59:41 +02:00
Daan Hoogland d7765343ef Merge branch '4.19' into 4.20 2025-04-17 15:40:10 +02:00
Nicolas Vazquez 8db248e4b4
UI: Move templates creation date to the Zones tab (#10709)
* UI: Move templates creation date to the Zones tab

* Extend changes to ISOs
2025-04-17 09:54:11 +02:00
Vishesh 207a2c1da3
Support ConfigDrive with VPC (#10495) 2025-04-16 14:58:17 +02:00