* Remove close button from banner and move to a page action
* Update home.vue to fix lint
* Update e2e tests and fix lint issue
* Ensure we wait for both PUTs
* Improve comments
* Change test order
* Improve e2e test
* Fix lint issue
* Improve e2e test reliability
* Fix lint
* Fix e2e test so it works for standard user
* cluster list now uses resource table
* New PaginatedResourceTable
* WIP
* add context to pag setting
* tidying up
* Add server-side pagination to cluster explorer events and general events list
* Servier-side pagination for catalog apps, cluster repo and operation
* Servier-side pagination for Service --> HPA, inmgress, services
* Server-side pagination for home page clusters list and side bar clusters
- Functional Changes
- SSP now works after vue3 bump
- Home Page Clusters list now uses server-side pagination
- Side Bar clusters list now uses server-side pagination
- Wire in now supported sorting / filtering by id and name used for table columns
- Allow pagination to be enabled given a specific context
- Call findPage without persisting to store
- New Pagination Tools
- PaginatedResourceTable - Convenience Component, wraps ResourceTable with pagination specific props
- PaginationWrapper - Convenience class to handle requests for resources and updates to them (avoiding store)
- Regressions
- Side Nav menu ready state was `mgmtCluster.isReady && !pCluster?.hasError`, now ???
* fixes after merge. apply PagResTable to node list, vue3 fixes
* - Fix issue where list components containing PaginatedResourceTables would incorrectly fetch all resources anyway
- convert reminaing storage lists
* policy section
* fix async button in manual refresh mode
* fgh
* aaaaa
* Server-side pagination for home page clusters list and side bar clusters
- Functional Changes
- SSP now works after vue3 bump
- Home Page Clusters list now uses server-side pagination
- Side Bar clusters list now uses server-side pagination
- Wire in now supported sorting / filtering by id and name used for table columns
- Allow pagination to be enabled given a specific context
- Call findPage without persisting to store
- New Pagination Tools
- PaginatedResourceTable - Convenience Component, wraps ResourceTable with pagination specific props
- PaginationWrapper - Convenience class to handle requests for resources and updates to them (avoiding store)
- Regressions
- Side Nav menu ready state was `mgmtCluster.isReady && !pCluster?.hasError`, now ???
* Iteration
Note - prov clusters is broken (only fetches local) due to blocking pr. breals
- notPinned list
* Fix dupe inStore
- remove from resource list, put in resource-fetch (used also by pag res table)
* Fix dupe inStore
- remove from resource list, put in resource-fetch (used also by pag res table)
* Two fixes
- changes namespaces kicked of side nav cluster requests (thought pinnedIds changed)
- fix generic lists re-fetching given ns filter changes (they don't have namespaced arg)
* fixes / updates
* testing/tidying
* WIP - Rest of workload lists
* finish off workloads
* tidying up
* fix non-generic list filtering by namespace
* remove comment, backport fix
* test fixes
* E2E: Ensure we wait for cluster entries to exist before clicking on them
* backport fix for local/api filtering
* Remove debug code
* Changes after review
* e2e fixes / debugging
* More e2e fixes
* More e2e fixes
* More e2e fixes
* Fix generic pages that filter on pagination
* Attempt to fix flaky vai test
* Fix after merge from master
* Updates following new indexed files
* Fix lint and test
* Changes given real cluster tests
- general fixes
- correct issue were sorting prov clusters on mgmt cluster props (issue in master as well...)
- bit the bullet, we now don't fetch all mgmt clusters on dashboard visit.
- there could be knock on affects, but we'd need to remove it sometime in 2.11....
* Fix issues with diplaying rke1 data in home page
- includes https://github.com/rancher/dashboard/pull/12881
* Fix unit tests
* remove invalid sort/filter type
* Running through new indexed fields
* fix unit tests
* lint fixes
* Fixes after small review
* lint
* Test for check-plugin-gates pkg build from shell
* e2e fixes
* Testing new indexed fields with dev image
* tidyuing up imports in hope to fix ts error in check-plugins gate
* Fix failing check-plugin-gates
- caused by shell/scripts/test-plugins-build.sh importing list/catalog.cattle.io.clusterrepo.vue
- the component had been updated to a TS component
- check-plugin build outputs TS errors for a component file imports
- vs code shows no errors for imported file
* tidying up a smidge
* Many tweaks
- Remove final todo's
- includes fix for service type clusterip/headless overlap
- Removed ununused ENDPOINT column (note ENDPOINT formatter used in other columns)
- Testing freshly added index fields
* Improve location of new place where componentWillFetch is set
* fix lint, comment updated
* Fix failing e2e tests
- fix cluster dashboard events test
- fix and greatly improve flaky events test
- fix hpa test
- functional fixes
- fix sorting/filtering events by object type
- fix hpa columns
* fix keyboard nav for home page
* minor fixes based on another PR comment
* add aria-sort to table column headers + remove space key bindings for links
* revert small change on Checkbox
* revert small change on Checkbox
* clear key space to trigger links
* change role for links that are in fact buttons + keep space key
* Server-side pagination for home page clusters list and side bar clusters
- Functional Changes
- SSP now works after vue3 bump
- Home Page Clusters list now uses server-side pagination
- Side Bar clusters list now uses server-side pagination
- Wire in now supported sorting / filtering by id and name used for table columns
- Allow pagination to be enabled given a specific context
- Call findPage without persisting to store
- New Pagination Tools
- PaginatedResourceTable - Convenience Component, wraps ResourceTable with pagination specific props
- PaginationWrapper - Convenience class to handle requests for resources and updates to them (avoiding store)
- Regressions
- Side Nav menu ready state was `mgmtCluster.isReady && !pCluster?.hasError`, now ???
* Iteration
Note - prov clusters is broken (only fetches local) due to blocking pr. breals
- notPinned list
* Fix dupe inStore
- remove from resource list, put in resource-fetch (used also by pag res table)
* Two fixes
- changes namespaces kicked of side nav cluster requests (thought pinnedIds changed)
- fix generic lists re-fetching given ns filter changes (they don't have namespaced arg)
* remove comment, backport fix
* test fixes
* E2E: Ensure we wait for cluster entries to exist before clicking on them
* backport fix for local/api filtering
* Remove debug code
* Changes after review
* e2e fixes / debugging
* More e2e fixes
* More e2e fixes
* More e2e fixes
* Fix generic pages that filter on pagination
* Attempt to fix flaky vai test
* Fix after merge from master
* Updates following new indexed files
* Fix lint and test
* Changes given real cluster tests
- general fixes
- correct issue were sorting prov clusters on mgmt cluster props (issue in master as well...)
- bit the bullet, we now don't fetch all mgmt clusters on dashboard visit.
- there could be knock on affects, but we'd need to remove it sometime in 2.11....
* Fix issues with diplaying rke1 data in home page
- includes https://github.com/rancher/dashboard/pull/12881
* Fix unit tests
See #11588 for details
- mgmt cluster is a steve resource, so can inherit the steve model
- this resolve the issue of mgmt cluster not having a description
- prv cluster uses it's own description, falls back on mgmt description
- custom stuff on home screen not needed
- fixes description on detail page of legacy clusters
- remove description from hybrid model
- this contains steve references and isn't needed
* add mgmt cluster description to prov cluster description as fallbacks in home cluster list and main side nav clusters
* address pr comments
* add e2e to test description for rke1 cluster in home page
* address pr comments
* add cluster description to home page cluster list and side menu clusters
* working on tooltip for long descriptions
* add tooltip to description on side menu
* remove console logs
* add tooltip to description on side menu + fine tune tooltip position
* finish tests
* fix e2e
* address test flakiness of repeated use of toggling main nav menu and not waiting for transitions
* address failing e2e tests + add missing array brackets to tests that only had tag as string (were not running)
* fix bug where clicking on home link wouldn't close the main nav + fix e2e
* update home link e2e getter with correct structure
* address #8854
* break long strings to next line
---------
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
* Now uses the same data as the cluster homepage, delayed load not needed.
* Auto stash before rebase of "master"
* Fix ready state
- the loading indiciator was only shown when the http request to fetch required data was happening
- in our world there's no http request, so no loading indicator
- this means for clusters that are `pending` there's no a forever loading indicicator
---------
Co-authored-by: Richard Cox <richard.cox@suse.com>
* update release notes url and whats-new test
* link to latest release notes for rc builds
* fix home page e2e test; update release notes version check to use existing util
* Prevent ESLint to format generated paths
* Add HTML ESLint Rules
* Format all the Vue HTML templates except Harvester
* Exclude Harvester package from linting HTML, keeping old formatting rules
Home Page
- Don't block whole page on loading of mgmt and prov clusters
- Use table `loading` indicator when clusters are loading
- Use correct cluster count (with harv cluster filter) - To confirm
Cluster Dashboard
- EventsTable - use standard table loading indicator
- Don't block on fetch at all (or show page loading indicator)
- Remove fetch for nodeTemplates and rke1NodePools. I went through a lot of code and don't think these are needed
- Reminaing calls for Node and Metrics can happen at the same time
- Forget additional resource types when leaving page
- Optimise fetch of management nodes
Pre-Page optimisations
- Authentication Mixin
- if applicable, fetch `principal` 'me' same time as `user` 'me'
Other tweaks
- Don't show AwsComplianceBanner or AzureWarning until management store ready
* Configure E2E tests for CI
* Add Github CI configuration for E2E
* Write welcome and first login tests
* Add Docker initialization script
* Sort tests
* Allow to trigger input checkboxes from labels
* Run setup script in a single test to avoid server requirement restrictions with authentication in a single session
* Trigger E2E tests on PR to master only
* Correct password for E2E; extend documentation about authentication
* Allow E2E jobs to be excluded if present tag in the title
* Build and start project for E2E using SPA flag and prod env for CI
* Assure link presence while navigating in E2E tests; Improve readability
* Allow to skip setup E2E tests for remote initialized instances
* Update Cypress related libraries
* Replace class to id selections for E2E tests
* Create Page Actions PO; Move navigation related tests; Ensure Home page tests to be reliable
* Correct login redirection to include local
* Reset cards for E2E changelog
* E2E: Add manual waiting while opening the side navigation
* Change CI E2E skip exception from title to label
* E2E: Increase waiting time for side navigation racing condition issue
* Remove bootstrap setup assertion
* Allow to manually trigger E2E tests
* Disabling all flaky tests which cause race condition random failure
* Remove setup scripts and commands due opted out solution
* Rename files, tests and PO
* Remove libraries added while rebasing
* Replace ID with data-testid for E2E element selection
* Skip entirely E2E test Job on label in favor of single steps condition
* Use run ID and number for artifacts names
* Updated documentation related to E2E selectors and added best practice link
* Remove passed tests video after each test
* Add getId command to select elements by attribute
* Correct all the selections of all the existing tests; Add related data id for testing purpose
* Add terms and ignore log issue with TS
* Add missing ID to data conversion
* Replace password cases with new PO
* Restore locale login check in E2E
* Enable artifacts upload only on failure
* Disable video artifacts upload from E2E runs
* Correct linting issue with a TODO note
* Correct script naming and docker command to avoid killing other containers
* Remove unnecessary --spa flag from existing scripts
* Correct tests to do not rely spcifically to the version while testing changelog text
* Adjust documentation definitions
* Reference issue in the TODOs
* Allow failing if no container found while stopping docker
* Rephrase E2E commands reference in docs
* Correct Docker stop command typo with image name
This adds a new project for Rancher Components under `pkg/rancher-components` and replaces components used throughout dashboard with the versions used here. All imports for the following components have been updated:
```
|- BadgeState.vue
|- Banner.vue
|- Card.vue
|- Form
|- Checkbox.vue
|- LabeledInput.vue
|- LabeledTooltip.vue
|- RadioButton.vue
|- RadioGroup.vue
|- TextAreaAutoGrow.vue
```