- previously only completely generic lists were supported in extensions (i.e. no custom list component or custom headers)
- now we allow extensions to explicetely state a resource type is enabled
- this type MUST have pagination settings applied either via product or component config
- labelSelector has two primary applicators
- matching utils function
- this should normally NOT be cached and not receive updates over sockets
- this is done by stipulating transient = true
- findLabelSelector
- this should normally be cached and receive updates
- this is done by stipulating transient = false
- when applicable (workload and services detail page) we want live updates whilst we're on the page
- we don't when we leave, so unwatch
- fix and align these two and their usages
- ensure each input (transient) is correct for context
- ensure response is in the correct format and handled correctly
- improved typing
Additionally
- Improve labelling for network policy ingress/egress label selectors
- Replace empty table with 'no details' in cis report detail page's list's sub row
- On services page handle the very weird use case of no visibility on pods
- Fix issue where extension catalog was not showing when refreshing on extension catalog page list
- Fixed an issue where we would ALWAYS show false positive invalid field warning in console
- Bump up default page size from 10k to 100k
- this is for requests we make to the new vai cache outside of pages
- it matches the default they use when proxying requests to target kube cluster
* port of wip
* asdassad
* Update vai / sql cache based api filtering to match latest changes
* Revert "Pin Rancher version to v2.11-2053ce644a31cd8053d1f58e2487154b0b8513b6-head for e2e tests"
This reverts commit 60f62107e7.
* sdfdsf
* dsfdsf
* asdsad
* fix dynamic hide local cluster changes
* improvements
* aaaa
* Working through todo's/tidys
* Remove debug / tidy up
* resolving todos
* remove some debug
* Tidying up #1
* Make manual refresh and auto-refresh visible on perf setting, disabled by default
* Remove dev stuff
* Fix some e2e tests
* Updated comment
* Wire in resource.changes debounce, clearer label for feature `listAutoRefreshToggle`
* Temporarily disable all watches when vai enable
- remove once rancher/rancher#40773 is resolved, which will then finally fix#12734
* Revert "Temporarily disable all watches when vai enable"
This reverts commit c708f468e4.
* Fix nextResourceVersion
- Ensure it handles resource revisions (in both LIST or individual resources) that are strings
- add unit tests
* Update after review
- 'almost' applies to enabling SSP by default
- Previously the ui-performance object contained a required set of resources to apply SSP to
- This isn't workable going forward where the available resources will be updated between versions
- Now the default is to use a set of default resources which can change between versions
- Users can override if they wish
* 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
* Changes for new design
- New visuals
- Pagination controls --> load more
- finished testing of label select with pagination off
# Conflicts:
# shell/edit/provisioning.cattle.io.cluster/__tests__/Basics.tests.ts
* Changes following review
* Update Node list to support server-side pagination
- Setup pagination headers for the node type
- Define a pattern for fetching custom list secondary resources
- Major improvements to the way pagination settings are defined and created
- Lots of docs improvements
- Handle calling fetch again once fetch is in progress (nuxt caches running request)
- Validate filter fields (not all are supported by the vai cache
- General pagination fixes
* Lint / test / fixes
* Improvements to configmap e2e test & Improve pagination disabled
* Beef up validation
* Fix missing name column in non-server-side paginated node list
* Fix PR automation actions
- fix syntax
- catch scenario where a pr has no fixed issue
> There's duplication between files, see https://github.com/rancher/dashboard/pull/10534
* CI bump
* Fixes post merge
* Wire in 2.9.0 settings for server-side pagination
- Everything is gated on `on-disk-steve-cache` feature flag
- There's a backend in progress item to resolve a `revision` issue, until then disable watching a resource given it
- Global Settings - Performance
- Added new setting to enable server side pagination
- this is incompatible with two other performance settings
* Integrate pagination with configmaps in cis clusterscanbenchmark edit form
Also
- improved labeled select pagination
- gate label select pagination functinality on steve cache being enabled
* - harvester machine-config
- project monitoring (and bug fixes)
* Disable workload screen if vai cache is on
- temp step until we get new overview
* TODOs and TEST
* Conditionally remove fetch of all secrets from SelectOrCreateAuthSecret
* TODOs and TEST
* Update SimpleSecretSelector
- only used in monitoring.coreos.com.alertmanagerconfig context
* View and Edit ingress - secrets
* node detail page - pods list
* Backup/Restore: Secrets (WIP)
* Backup/Restore: Secrets, and other usages of SimpleSecretSelector / SelectOrCreateAuthSecret
* Edit: Service account
* Add comments for remaining items
* Paginate Secret selection for logging providers
- Allow `None` option in Paginationed LabelSelect
- Optionally classify pagination response
* WIP
* fixes arfter merge
* Don't suggest container names, not practical
- previously all pods were fetched... and we scrapped all container names from them
- this is a scaling nightmare, user now must just enter the name/s to match
* Avoid findAll secrets in SimpleSecretSelector
* tidying up
* Move LabeledSelect/index.vue back to LabeledSelect.vue to not break extensions
* changes after self review... 1
* changes after self review... 2
* ooof
* changes after self review... 3
* fix formatting
* Link new paginated label select with pagination setting
* Work around failing kubewarden unit tests in check-plugins gate
* Fix backup.spec e2e test
* fix formatting, paginationUtils.isSteveCacheEnabled --> paginationUtils.isEnabled
* Don't fetch all secrets on cloud creds page
* Fix backup.spec e2e test
* TODO tidying / tracking
* don't getch ALL workloads for hacky way to get a link to a service's workload
* Fix bad merge
* Updates after working with vai cache image
* test fixes
* Create a convienence wrapper called ResourceLabelSelector that hides most of the complexity
* fix unit test
* Updates following review
* Remove workload health until #10417 is resolved
* Updates following review
* changes following self review
* Fix bottom bar of edit backup, edit restore pages
* revert temp change
* changes following self review
* Workaround for kubewarden unit tests in check plugin gate
* bump
* Fix e2e
* Fix linting
* type fixing
* - improve filtering without pagination
- update allowed fields given latest backend changes
- enable on by default exact filter string matches (disable for lists
* remove temp code
* fix linting
* Changes following review
* Fixes for vai cache feature flag
- name was changed from on-disk-steve-cache to ui-sql-cache
- fix timing issue - don't watch resources until we know the vai cache feature flag
* Changes following review
* Fix two sketchy tests
- new exception in docs page
- don't nav to page via button click and then goto same page
* More test improvement
- force user to go to tab which is source of route guard issue
- move setup stuff to a test for cypress to re-retry
* Changes for new design
- New visuals
- Pagination controls --> load more
- finished testing of label select with pagination off
# Conflicts:
# shell/edit/provisioning.cattle.io.cluster/__tests__/Basics.tests.ts
* Changes following review
* Update Node list to support server-side pagination
- Setup pagination headers for the node type
- Define a pattern for fetching custom list secondary resources
- Major improvements to the way pagination settings are defined and created
- Lots of docs improvements
- Handle calling fetch again once fetch is in progress (nuxt caches running request)
- Validate filter fields (not all are supported by the vai cache
- General pagination fixes
* Lint / test / fixes
* Improvements to configmap e2e test & Improve pagination disabled
* Beef up validation
* Fix missing name column in non-server-side paginated node list
* Fix PR automation actions
- fix syntax
- catch scenario where a pr has no fixed issue
> There's duplication between files, see https://github.com/rancher/dashboard/pull/10534
* CI bump
* Fixes post merge
* Wire in 2.9.0 settings for server-side pagination
- Everything is gated on `on-disk-steve-cache` feature flag
- There's a backend in progress item to resolve a `revision` issue, until then disable watching a resource given it
- Global Settings - Performance
- Added new setting to enable server side pagination
- this is incompatible with two other performance settings
* Integrate pagination with configmaps in cis clusterscanbenchmark edit form
Also
- improved labeled select pagination
- gate label select pagination functinality on steve cache being enabled
* TODOs and TEST
* Paginate Secret selection for logging providers
- Allow `None` option in Paginationed LabelSelect
- Optionally classify pagination response
* WIP
* fixes arfter merge
* Don't suggest container names, not practical
- previously all pods were fetched... and we scrapped all container names from them
- this is a scaling nightmare, user now must just enter the name/s to match
* Avoid findAll secrets in SimpleSecretSelector
* tidying up
* Move LabeledSelect/index.vue back to LabeledSelect.vue to not break extensions
* changes after self review... 1
* changes after self review... 2
* changes after self review... 3
* Link new paginated label select with pagination setting
* Work around failing kubewarden unit tests in check-plugins gate
* Fix backup.spec e2e test
* Create a convienence wrapper called ResourceLabelSelector that hides most of the complexity
* fix unit test
- Everything is gated on `on-disk-steve-cache` feature flag
- There's a backend in progress item to resolve a `revision` issue, until then disable watching a resource given it
- Global Settings - Performance
- Added new setting to enable server side pagination
- this is incompatible with two other performance settings
- Setup pagination headers for the node type
- Define a pattern for fetching custom list secondary resources
- Major improvements to the way pagination settings are defined and created
- Lots of docs improvements
- Handle calling fetch again once fetch is in progress (nuxt caches running request)
- Validate filter fields (not all are supported by the vai cache
- General pagination fixes
- General changes following review comments
- Fix issue where in local cluster the systen classed namespace associated with a project would get muddled with selecting user resources in mathing project
- Part of this is a big refacture, most of the code to create pag filter params is now in a helper filer
- Added much improved typing
- Fixed issue where the dynamic namespaces (c-, p-, etc) weren't correctly hidden
- Move user to previous page if last entry on last page deleted (and there is a previous page)
- Fix confusing preference to hide dynamic namespaces (c-, p-, etc)