221 Commits

Author SHA1 Message Date
Pearl Dsilva
2fe8e9cd96 Merge branch 'nsx-integration' of https://github.com/apache/cloudstack into nsx-integration 2023-10-23 11:53:01 -04:00
Pearl Dsilva
be2b8edd20
NSX: Refactor Network & VPC offering (#8110)
* [NSX] Refactor API wrapper operations

* Network offering changes for NSX

* fix services and provider combination

* address comments: rename param

* update nsx_mode parameter

---------

Co-authored-by: nvazquez <nicovazquez90@gmail.com>
2023-10-23 12:50:13 -03:00
Pearl Dsilva
dc25278f28 Merge branch 'main' of https://github.com/apache/cloudstack into nsx-integration 2023-10-23 08:53:48 -04:00
Abhishek Kumar
543c54c718
api,server,ui: snapshot copy, multi-zone replica (#7873)
This PR adds new functionality to copy snapshots across zones and take snapshots for multiple zones.

Copy functionality is similar to template copy. The source zone acts as the web server from where the destination zone(s) can download the snapshot files. For this purpose, a new API - `copySnapshot` has been added. The response for copySnapshot will be returning zone and download details from the first destination zone of the request. This behaviour is similar to the `copyTemplate` API.

In a similar manner, multiple zones can be selected while taking the snapshots or creating snapshot policies. For this snapshot will be taken in the base zone(in which volume is present) and then copied to the additional zones. A new parameter - `zoneids` has been added to `createSnapshot` and `createSnapshotPolicy` APIs.

As snapshots can be present on multiple zones (secondary stores), a new parameter `zoneid` has been added to delete the snapshot copy on a specific zone.

`listSnapshots` API has been updated to allow listing snapshot entries for different zones/datastores. New parameters - `showUnique`, `locationType` have been added.

Events generated during snapshot operations will now be linked to the snapshot itself rather than the volume of the snapshot.

`listSnapshotPolicies` and `createSnapshotPolicy` APIs will return zone details of the zones in which backup will be scheduled for the policy.

----
New API added
`copySnapshot`

Request and response params updated for APIs
```
- listSnapshots
- deleteSnapshot
- createTemplate
- listZones
- listSnapshotPolicies
- createSnapshotPolicy
```
UI updated for
- Snapshot detail view
- Create snapshot form
- Create snapshot policy form
- Create volume (from snapshot) form
- Create template (from snapshot) form

Doc PR: https://github.com/apache/cloudstack-documentation/pull/344
PR: https://github.com/apache/cloudstack/pull/7873
2023-10-23 09:01:58 +02:00
Abhishek Kumar
99ded8169b Merge remote-tracking branch 'apache/4.18' into main 2023-10-20 17:40:19 +05:30
sato03
a8700bff7f
server: set Default NIC when VM has no default NIC (#7859)
Co-authored-by: Henrique Sato <henrique.sato@scclouds.com.br>
2023-10-20 11:40:10 +02:00
Abhishek Kumar
e35fdff767
ui: add action to delete traffic type (#8076)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2023-10-18 10:20:03 +02:00
Rohit Yadav
8a34afa8ab Merge remote-tracking branch 'origin/4.18' 2023-10-11 21:00:06 +05:30
Abhishek Kumar
7b4cf1b1c6
ui: update vm deploy form iso label (#8075) 2023-10-11 14:56:50 +02:00
nvazquez
5ec455228d
Merge branch 'main' into nsx-integration 2023-10-08 21:08:53 -03:00
Rohit Yadav
5d9ae31f1b
UI: Admin, account and project dashboard improvements (#7956)
This PR aims at improving the CloudStack dashboard and introduces the following:

    Admin dashboard: six cards that are responsive to screen sizes and show zone specific compute, storage and network allocation, as well as instance/hosts stats, alerts and events. Now, by default, the admin dashboard shows aggegate data from all zones, with option for admin to select individual zone to see individual zone stats
    Account/project dashboard: six cards that are responsive to screen sizes and show account or project specific resource lists/counts, and limits shown in three cards as (a) compute (with running stopped instances), (b) storage and (c) network allocation, an admin-defined links/docs card (via config.json) and events cards. Admin is allowed to configure project limits on project dashboards.
    A global create button on the top global header/user-menu to allow for quick actions such as to deploy a VM, CKS cluster and create a volume (more actions can be added as desired via code changes) etc.

Doc PR - apache/cloudstack-documentation#349

---------

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-10-06 13:40:22 +05:30
Abhishek Kumar
884953cde1
ui: add button in zone physical network list (#8028)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2023-10-04 11:52:25 +02:00
Pearl Dsilva
e1d56d0a62 Merge branch 'main' of https://github.com/apache/cloudstack into nsx-integration 2023-10-03 07:32:12 -04:00
Abhishek Kumar
8939ebbf4e
ui: allow copying password from notification (#7985)
* ui: allow copying password from notification

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

* fix warnings, use clipboard lib

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

* fix for deploy vm

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

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2023-09-28 15:02:36 +02:00
Pearl Dsilva
61bc513d6f add ui changes + update nsx_provider table transport zones + use NSX broadcast domain for add nics to router 2023-09-21 17:59:56 -04:00
Pearl Dsilva
6996c4a2c0 add create/delete segment and UI integration 2023-09-13 14:23:16 -04:00
Daan Hoogland
24ae5aa5fa Merge branch '4.18' 2023-08-25 14:27:34 +02:00
Wei Zhou
8dc5fdd067
server: fix cannot get systemvm ips in dedicated ranges (#7144)
This fixes #6698
2023-08-25 11:36:39 +02:00
Daan Hoogland
594d212a8b Merge branch '4.18' 2023-08-23 12:55:53 +02:00
Rohit Yadav
d87f39ad27
ui: make it clear that deletion of a volume will not delete any snapshots (#7897)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-08-23 16:07:17 +05:30
Daan Hoogland
ea832bce13 Merge branch '4.18' 2023-08-22 11:44:45 +02:00
Wei Zhou
78bdde9e98
AutoScaling: support Managed User Data (#7769) 2023-08-22 11:07:16 +02:00
Rohit Yadav
62feb24de6 Merge remote-tracking branch 'origin/4.18'
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-08-11 16:27:57 +05:30
Rohit Yadav
feb9509547
ui: assorted improvements (#7833)
This PR aims to polish the UI with following tweaks and changes:

- Increase resource and os-logo icons both in list view, user-menu bar and VM deployment form
- Fix css issues in VM deployment form when resource icons are on some of the templates/isos but not all
- Replace edit icon in the resource icon editting button on the infocard, in resource view
- Fix css marging/padding issue for nav bar and left-branding/logo
- Introduce a new Limits option in the user menu, to allow users to see their own limits when they log in
- Rename resource tab to limits tab for accounts, project and domains
- Introduce a new copy-label component, that can be clicked to copy strings; use in info-card and list view for entites such as IP addresses and UUIDs
- Add router-link to /zones/ in case of user-accounts (when /zone isn't routable in the UI)
- Show better list of nics and ssh keys pairs in infocard for VM resource view
- Standardise most resources to show state/status columns right after resource name (wherever applicable)
- Remove displayname column in VM list view, add cpu number and memory by default
- Add k8s version column in k8s list view
- Add size and phy size columns in case of template and ISOs list view, only for root/domain admins
- Add phy network router-link in case of guest VLAN list view; rearrange columns list for consistency
- Add snapshot phy size column in the snapshot list view; and router-link for volume in the snapshot list view; and missing/useful details in the volume snapshot details view
- Add a create and add data disk feature in Instances tab, just like we've add nic feature in the same

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-08-11 14:00:04 +05:30
Daan Hoogland
7ee697fcc5 Merge release branch 4.18 to main
* 4.18:
  UI: allow new keys for VM details (#7793)
  Refactoring StorPool's smoke tests (#7392)
  UI: decode userdata in EditVM dialog (#7796)
  packaging: unalias cp before package upgrade (#7722)
  make NoopDbUpgrade do a systemvm template check (#7564)
  UI unit test: fix expected values (#7792)
2023-08-03 15:59:01 +02:00
John Bampton
6f4503488b
pre-commit: apply end-of-file-fixer to all files (#7551) 2023-08-02 13:47:21 +02:00
dahn
fd13184dda
UI unit test: fix expected values (#7792) 2023-07-31 12:46:22 +02:00
Daan Hoogland
8db8aa4163 Merge branch '4.18' 2023-07-25 11:29:04 +02:00
Wei Zhou
6dd2ce86b5
UI: add step to create bearer token for kubernetes dashboard (#7764)
Since Kubernetes v1.24.0, there is no auto-generation of secret-based service account token due to security reason. see https://github.com/kubernetes/kubernetes/pull/108309

To access kubernetes dashboard, users need to create a service account and an optional long-lived Bearer Token for the service account.
2023-07-25 03:32:58 +02:00
Vishesh
2fcbe6241f
cks: Add unmanaged kubernetes cluster (#7515)
There are tools like cluster-api which create and manage kubernetes cluster on CloudStack. This PR adds the option to add unmanaged kubernetes cluster which are not managed by CKS plugin. This helps provide a consolidated view of unmanaged clusters on CloudStack. The changes done make sure that operations for managed clusters are not executed for unmanaged clusters.

Two new APIs have also been added:

1. addVirtualMachinesToKubernetesCluster - to add VMs to unmanaged clusters.
2. removeVirtualMachinesFromKubernetesCluster - to remove VMs to unmanaged clusters.

Two APIs have been updated:

1. createKubernetesCluster - made KUBERNETES_VERSION_ID, SERVICE_OFFERING_ID, SIZE as not required for unmanaged clusters. Add an additional parameter, managed, which is true by default.
2. listKubernetesClusters - Add a parameter managed to filter on managed field.

Co-authored-by: Pearl Dsilva <pearl1594@gmail.com>
Co-authored-by: dahn <daan.hoogland@gmail.com>
2023-07-03 13:07:33 +05:30
dahn
06caf32bc8
Guest os mappings improvements (#6979)
* Guest OS mapping improvements
- Checks the OS mapping name in hypervisor (VMware, XenServer)
- Displays guest OS mappings in UI

* Added API getHypervisorGuestOsNames to list the guest OS names in the hypervisor, and code improvements

* Some static analysis fixes

* Removed commented code in listview

* Guest OS list

* UI changes for adding guest os and mappings

* Added guest os mappings in guest os form

* Added new filter to guest os mapping

* Name and description changes

* VMWare Host and cluster MO unit tests

* CheckGuestOsMapping command and answer unit tests

* GetHypervisorGuestOsNames command and answer unit tests

* VmwareResource unitests

* GuestOsMapper unittests

* icon changes

* Addressed review comments

* Renaming fixes

* Removed comments

* marvin tests for guest os operations

* Added marvin tests for OS mappings

* Document links and UI improvements

* Added deduplication for the list guest OS API

* Fixed linter failure

* Few bug fixes and UI changes

* Few improvements

* Addressed code smells

* Fixed UI issues after rebase

---------

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
Co-authored-by: Harikrishna Patnala <harikrishna.patnala@gmail.com>
2023-06-27 13:49:20 +05:30
Vishesh
fa3f2a75eb
feature: VM Scheduler (#7397)
This PR adds a feature to setup schedules to stop/start/restart your VMs.

Documentation PR: apache/cloudstack-documentation#313
Related issue: #3387
2023-06-26 13:36:46 +05:30
dahn
ae10263b3b
Possibility to choose the source NAT IP address on a isolated network or VPC (#6442)
Co-authored-by: NuxRo <nux@li.nux.ro>
Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com>
2023-06-09 14:51:53 +02:00
Rohit Yadav
0af56179a5 Merge remote-tracking branch 'origin/4.18' 2023-05-10 14:08:14 +05:30
Wei Zhou
9d46df57f2
kvm: add vm setting for nic multiqueue number and packed virtqueues (#7333)
This PR adds two vm setting for user vms on KVM

- nic multiqueue number
- packed virtqueues enabled . optional are true and false (false by default). It requires qemu>=4.2.0 and libvirt >=6.3.0

Tested ok on ubuntu 22 and rocky 8.4
2023-05-09 15:19:26 +05:30
Abhishek Kumar
88ff77dae1
ui: fix action notifications (#7499)
Some UI actions were missing title and description in pollJob method preventing notification for them to be published.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2023-05-08 17:46:17 +05:30
Harikrishna
b280370a98
Few UI fixes and details improvements (#7434)
* Better hover label and message for generate API/secret keys form

* Added a message to select network during instance deployment

* Removed project icon in dashboard listing

* Disable network operations for the user who does not have permission

* UI allignments

* added document help for sticky policy secion under load balancer

* Added tooltips and some form layout changes

* donot display options to configure when stickypolicy is none

* Network selection message allignment

* Fixed the grid view to be uniform in infra summary page
2023-05-02 17:06:54 +05:30
Abhishek Kumar
e035d73641 Merge remote-tracking branch 'apache/4.18' into main 2023-04-19 12:57:01 +05:30
Vishesh
79eae89a87
ui: Add filtering by state in account, systemvms, router and storagepool (#7368)
This PR allows admin to filter resources by state for systemvms, router & storagepool. This is part of #7366 .

Co-authored-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-04-19 12:22:24 +05:30
kishankavala
fcbcddbcb9
ui: Allow admin/user to filter by state for Pods, Clusters and Hosts (#7373)
This PR allows admin/user to filter by state for Pods, Clusters and Hosts. This is part of #7366 .
2023-04-19 12:12:29 +05:30
David Jumani
941cc83372
Feature: Safely shutdown cloudstack (#6755)
Co-authored-by: dahn <daan.hoogland@gmail.com>
2023-04-12 12:44:14 +02:00
Abhishek Kumar
62b332e0de
api, ui: listing archived events (#7396)
Fixes #7217

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2023-04-11 22:26:41 +05:30
Abhishek Kumar
e6f737fdf9 Merge remote-tracking branch 'apache/4.18' into main 2023-04-11 12:06:37 +05:30
kiranchavala
9df1a7bc0e
ui: Fixed the Description coloumn in the UI for Quota traffic page (#7402)
* added correct description response for  quotariff api call

* added correct label for Usage description
2023-04-06 12:09:53 +05:30
Eduardo Zanetta
57ff125f83
add button to copy a VM console URL (#7351)
Co-authored-by: Eduardo Zanetta <eduardo.zanetta@scclouds.com.br>
2023-03-31 17:14:20 +02:00
Harikrishna
cfee78e07c
ui: Added UEFI support flag in host details view (#7361) 2023-03-24 12:05:45 +05:30
Nicolas Vazquez
3d2fffc425
UI: Fix keyboard options regression (#7230)
Co-authored-by: Stephan Krug <stekrug@icloud.com>
2023-02-20 10:32:54 +01:00
Harikrishna
d12e9cbf16
UI missing changes (#7231) 2023-02-17 11:48:40 +01:00
Wei Zhou
933970d9da
UI: fix 'Next' button is stuck if no public ip range (#7198) 2023-02-13 14:53:25 +01:00
Harikrishna
a3feccf70c
User two factor authentication (#6924)
Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-02-13 09:14:17 +01:00