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>
Added a new getter 'allProjects' and mutation 'RELOAD_ALL_PROJECTS' to centralize the tracking of available projects in the state.
This eliminates direct manipulation of the Project list in separate components and improves data consistency across the application.
A watcher in ProjectMenu.vue has been implemented to handle changes to the 'allProjects' getter.
The 'RELOAD_ALL_PROJECTS' mutation was also added where necessary to ensure projects list is updated in the state whenever changes occur.
* css fixes from main
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
* component: when in project, toggle the theme also
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
---------
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
* 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
This PR for fixes some UI Bugs
The project selected color is not displayed after switching project
Project view, the cards are not separated but stick together
Dashboard: The color of the selected zone is not displayed
Dark mode: Hover through row tables that are discolored
* Dont show project menu when user doesnt have permission
* Update ui/src/components/header/ProjectMenu.vue
Co-authored-by: Hoang Nguyen <hoangnm@unitech.vn>
* Removing unnecessary var
Co-authored-by: Hoang Nguyen <hoangnm@unitech.vn>
* Resource Icon support - backend
* Add API support for resourceicon
* update reponse params + ui support
* Add exclusive list api for icons and UI changes
* refactor upload view
* UI changes to support resource icon wherever necessary
* convert api to POST + refactor icon view
* Add response name to list API + cosmetic changes in UI
* Added support for the following:
resource icon support for vpcs, networks, domains, and projects
add icons to list view if reosurces support icons to be added
support for showing project icons in the project switching drop-down menu
* List resourceicon cmds to be allowed for user role too
Users to inherit account icon if present (in listUsers response)
Move common code to plugin.js
Add icon to project list view - while switching between projects - Dashboard page
Show icons against zones - Capacity Dashboard view
Show user / account icon at the login button if present
* cosmetic changes
* optimize ui code
* fix reload issue for domain view
* add access check for delete operation
* ui-related changes to show iso icons
* iso image in uservm response
* add icons to custom form's list resources
* some more custom forms aligned to show icon for resources
* conmitic changes + add listing of icons to listdomainchildren cmd
* Add backend/server-side validation for base64 string passed for image
* change preview border
* preselect zone if there's only one
* add default icon
* show icon for network list in deploy vm view
* add custom icons if any to the import-export VM view
* preselect zone persistence on clearing cache
* prevent root vol from inheriting template/iso icon
* show tempalte icon in the info card details
* fix icon not being show on hard-refresh / initial traversal
* fx success message
Adding Account Switcher for SAML Accounts in multiple domains matching the same saml user
Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Enables creating role based users in projects
UI for feature: apache/cloudstack#4128
Also addresses issue: #485
Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Fixes :
- Don't allow users in UI to delete/archive events
- Fix button name in VM deployment form in its network section to Create new network
- Refresh after template / iso upload
- Making external-id mandatory in ImportBackupOffering
- Fixing visibility of assignVirtualMachineToBackupOffering
- Removing link on traffic label
- Defensive check in TrafficTypesTab
- Ensuring we get the user info so that store.getters.user is never empty when the page is freshly loaded
- Changing from report bug to report issue
- Ordering projects in menu
- Changing router get health check results
- Show configureHAForHost based on hypervisor
- Fix scale and migrate router
- Fix scale and migrate systemvm
- Fix show actionbutton for assignVirtualMachineToBackupOffering
- Fix show actionbutton for stopKubernetesCluster
- Fix show actions for volumes
- Fix show actions for snapshots
- Fix show actions for vm snapshots
- Fix show actions for backups
- Adding loading for tags and annotations
- Enter to submit advanced search
- Fixing show Project instead of account when passed as projectaccount passed in account field
- Show project name instead of displaytext
- Fixing template and iso actions
- Fixing tags with projectid
- Fix security groups ingress/egress rules view
- Removing redundant allocationstate from zones
- Adding managedstate to clusters
- Adding capacity tab to clusters and pods
- Adding routerlink to events in dashboard
- Set autofocus to username in login
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
* Translate portal login
* Footer and header and more
* Internationalize header projects view
* Revert instance groups changes from this PR
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
The new convention used:
- All lower keys
- Most keys start with `label.` prefix
- All spaces and underscores replaced with `.`
Quick ugly hack and similar for config `title`:
> IFS=$'\n'
> git grep -l "\$t('" | grep -v -e "\$t('label\." -e "\$t('message" -e "\$t('error" > ftr
> for f in $(cat ftr); do echo $f; for w in $(grep -Po '\$t\(\K[^)]*' $f | grep "^'" | grep -v -e ^\'message -e ^\'error -e ^\'label); do echo WORD IS $w; nw=$(echo $w | sed "s/$w/'label\.\L&/g" | sed "s/label\.'/label\./g" | sed "s/ /\./g" | sed "s/_/\./g"); echo $w = $nw; sed -i "s/\$t($w/\$t($nw/g" $f; done; done
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Fixes#342
- Fix the project name to show currently selected project
- Reload project list of focus/clicking
- Fix icon size
- Remove code
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Fixes#254
Pod, cluster, host should be hidden for normal and domain admin user
Listing of all items are not done by passing account/domainid, or zoneid (for example listing of networks, template, isos for zone; keypair, affiinity groups etc for account/domain)
Add a way to filter templates by featured, community, shared, mine?
Multiple listing of templates for the same zone? (multiple radios button)
Add button to add network that can open the add network popup or add a router-link?
User data not properly base64 encoded (check encoding?)
Add support for processing min/max cpu/ram based on type of compute offering selected and custom disk offering
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Co-authored-by: Hoang Nguyen <hoangnm@unitech.vn>
Co-authored-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This fixes#41
Adds project specific dashboard tabs, custom actions and tabs for project view. Also adds quickview and other list/details view improvements.
Co-authored-by: hoangnm <hoangcit92@gmail.com>
Co-authored-by: Rohit Yadav <rohit@apache.org>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
- Reusable details settings component for VM and templates, with autocompletion of options
- Instancegroup feature
- split monitor into individual event and alert tabs, move alerts to infra
- reimplement logo
- project selection refactorings
- use password input for relevant fields
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Fixes: #17Fixes: #18
These dependencies are necessary or eslint will fail with the standard vue.js rule set.
The PR also includes fixes for all lint errors.
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>