Commit Graph

105 Commits

Author SHA1 Message Date
Alexandre Alves 467139b939
fix aria-labels in copy to clipboard (#14014) 2025-04-08 08:45:57 +01:00
Phillip Rak 2da8c2b0e3 Replace translated data prop with computed prop in ServiceType
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2025-03-11 10:15:48 -07:00
Phillip Rak f75e23d5c2 `ServiceType.vue`: Make `headless` and `clusterIp` computed props
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2025-03-07 13:24:13 -07:00
Alexandre Alves 84c234383a
Fix textual descriptions for cluster appearance in multiple places (#13416)
* Fix textual descriptions for cluster appearance in multiple places

* address pr comments

* address pr comments
2025-02-24 09:00:54 +00:00
Alexandre Alves 9b92574199
fix space key triggering scroll on page (#13413) 2025-02-17 09:30:08 +00:00
Alexandre Alves 478e195431
fix workload health accessibility (#13220) 2025-01-31 09:32:27 +00:00
Alejandro Ruiz c5403d50e2 Calculate resourceCount for single cluster instead of using find 2025-01-23 18:41:01 +01:00
Alejandro Ruiz a301c7ef01 Avoid calculating summary multiple times 2025-01-23 18:41:01 +01:00
Alejandro Ruiz 04cde0f6fd Use clusterId instead of clusterLabel 2025-01-23 18:41:01 +01:00
Neil MacDougall 8c0ced4e24
Add last used column for API tokens (#12114)
* Add last used column for API tokens

* Address PR feedback
2025-01-21 08:57:17 +00:00
Richard Cox f980283813
Add server-side pagination to cluster explorer lists (#11672)
* 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
2025-01-07 15:13:42 -07:00
Francesco Torchia eac3deaa4b
Add harvester features
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2024-11-13 15:38:36 +01:00
Nancy 6f52e59b07
Fix editing local rke1 and eks clusters (#12583)
* rework isImported and provisionerDisplay cluster properties

* refactor cluster unti tests to account for isImport property refactor

* update CLI e2e test to expect successful download
2024-11-12 14:11:00 -08:00
codyrancher 001b6e922d
Resolving an issue where we don't check to see if unrepeatedSans exists before using it (#12417)
https://github.com/rancher/dashboard/issues/12255
2024-10-30 12:10:39 +00:00
Richard Cox ffa7bfce1e Tweaks 2024-10-07 10:40:16 +01:00
Richard Cox 96172607b3 Show Cloud Credential Expiration information for Harvester Creds, add actions to renew 2024-10-07 10:40:09 +01:00
Nancy 5607114e5d
update all instances of LabeledInput using v-model.number to use v-model:value.number (#11902)
* update all instances of LabeledInput using v-model.number

* add probe http headers unit test

* add hookoption test

* remove codemirror focus change
2024-09-19 14:46:37 -07:00
Phillip Rak 6e02fbbfa3
Merge pull request #11880 from momesgin/11763-floating-vue-fixes
Fix Tooltip and Dropdown issues
2024-09-17 08:41:22 -07:00
Phillip Rak b8af4da149 Remove extra `<template>` tags from components
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-09-12 15:19:41 -07:00
Mo Mesgin a0891d070e update open-group to show-group 2024-09-11 11:28:16 -07:00
Mo Mesgin 682a09cae5 replace trigger with triggers 2024-09-11 10:56:45 -07:00
Alexandre Alves 60026587c3 fixing tooltips and metions of tooltips and dropdowns wherever I could find them 2024-08-30 15:49:34 +01:00
Phillip Rak 0fb02f5b2d Unit test updates
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:09:56 -07:00
Cody Jackson f7254d2909 Resolving a inheritAttrs issues with LiveExpiryBadgeState.
Went with this solution because it's only used in one location. I'd prefer to fix the overloaded attributes when possible.
2024-08-22 16:09:55 -07:00
Cody Jackson 1f82c9c642 Fixing the usage of :value to be :modelValue in regards to Consumption Gauge 2024-08-22 16:09:54 -07:00
Phillip Rak 97b58ca4f0 Update unit tests
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:09:54 -07:00
Cody Jackson b3e35acf3f Fixing the remaining compiler errors.
- Moved key to be on the for loop
- Made the default template present conditionally
2024-08-22 16:09:54 -07:00
cnotv ff08d80e0e Lint: Manually fixed issues related to vueApp variable added by the script 2024-08-22 16:07:03 -07:00
cnotv 78d70353c5 Unit test: Migrate unit tests with the script 2024-08-22 16:07:03 -07:00
Phillip Rak 399696ae73 Upgrade `v-tooltip` to `floating-vue`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-08-22 16:05:37 -07:00
Cody Jackson 9b829c55ea Ran `yarn lint --fix` 2024-08-22 16:05:36 -07:00
Cody Jackson d5ce4fff2e Run the vue3 migration script
Commands run:

➤ yarn migrate
➤ git clean -fdx
➤ nvm use 20
➤ yarn
2024-08-22 16:05:36 -07:00
Phillip Rak f404873ffe Stop displaying relative time when date has lapsed
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-06-21 16:27:48 -07:00
Richard Cox a5661c575f
Remove usages of findAll for types supported by server-side pagination (#10795)
* 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

* Create a convienence wrapper called ResourceLabelSelector that hides most of the complexity

* fix unit test

* 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
2024-06-05 09:15:43 +01:00
Richard Cox 69f3ce71c4 Fix Resource summary column in fleet cluster list 2024-05-31 11:49:39 +01:00
Phillip Rak fdc415d437 Use correct stubs in unit tests
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-03-27 14:29:55 -07:00
Phillip Rak 7e703b4c74 Replace `nuxt-link` & `n-link` with `router-link`
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2024-03-27 14:04:17 -07:00
Francesco Torchia 06392e5aab
Remove unused state property
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2024-03-21 18:19:09 +01:00
Richard Cox b464d15ee0
Integrate new schemaDefinitions endpoint (#10141)
* resource edit AS yaml

* fix cruresource (yaml from form)
- lazy load the schemaDefinitions when needed, avoids sync all to createYaml before we have an async chance to fetch schemaDefinitions

* Fix questions
- there are only four places we use questions, none of which use schema, this is just to be safe

* cluster scan, plugins/fieldsForDriver, defaultFor, validationErrors

* pathExistsInSchema
- used to optionally show conditions tab/list in resource detail view
- logs of things in ingress list/edit

* createPopulated / defaultFor
defaultFor requires resourceFields, it's only used by createPopulated in one place to support machine configs without components

* wip

* WIP MONITORING.SPOOFED
- these aren't spoofed types, but secondary schemas
- testing fix blocked, primary schema's have resourceFields

* Move steve specific (resourceField) code to steve models
- create models for steve schemas and apply to cluster and management stores
- move resoureField based validationto steve model
- move pathExistsInSchema to steve store getter
- don't fetch schemaDefinitions on start up when saving prefs (not needed and blocking)

* comments / improvements

* (untested) refactoring

* Fix alertmanager definitions, add retry definition fetch

* Fix pathExistsInSchema for path length > 2

* Fix questions that accept schemas
- tested by adding Questions to random page and the node schema

* Fix to saving configmap part 1
- the save works but doesn't show data. the yaml is the same as before. debug info added

* Validation by resourceFields is a norman specific thing, so make it such

* small refactor

* Tidying up

* Remove rebase junk

* fix linting and unit tests

* fix unit tests

* fix linting from fix for test....

* Tidying up, fix alertmanagerconfig

* Remove unit test todos

* add unit tests for resource fields

* sdssdf

* Add unit tests for pathExistsInSchema

* JS --> TS

* Store schemas in local singleton cache to avoid hitting store

* fix minor changes from review

* cruresource changes following review
- improvement - remove spurious canDiff
- createResourceYaml - pass in resource to use instead of calc in code

* WIP changes to parseType

* Fix generic cloud credential and node driver forms

* handle missing reactivity given schema definitions not in store

* fix and add unit tests for `parseType`

* Fix create-yaml test

* Changes following review
- improved comments
- SchemaDefinitionCache is now per store (and is reset as such)
- typeRef now uses parseType

* Fix dep loop by moving route based helps in auth out to utils file

* fix unit tests

* Changes following review
2024-02-28 17:08:35 +00:00
Alexandre Alves 0a66292228
update logic of `WorkloadDetailEndpoints` to consider hostname as a valid link if there is an `ingress` associated (#10380)
* update logic of WorkloadDetailEndpoints to consider hostname as a valid link if there is an ingress associated + formatter cleanup + add unit tests

* address pr comments

* address pr comments

---------

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2024-02-14 14:51:30 +00:00
Neil MacDougall b036421f25
Fix bug where a manually added node breaks the node list page (#10091)
* Fix bug where a manually added node breaks the node list page

* Address PR feedback

* Address PR feedback

* User rowNames in node list test
2024-01-08 17:08:50 +00:00
Nancy c7b3ba7a2e
account for empty string values in Checked formatter (#9803)
* account for empty string values in Checked formatter

* checked table formatter should only show a check if passed boolean true or string "true"
2023-12-21 08:35:59 -08:00
Shavindra 2e69430808
Fix fleet cluster state (#10162)
* Display cluster state.

* Display cluster repo status badge.

* Fix typo.

* Fix typo.

* Fix linting.

* Fix linting.

* Removed type from request.

* Reverted change.
2023-12-18 10:52:11 +01:00
Richard Cox 4e3a282b79 Add certificates view to cluster dashboard
- Add a new tab, next to events, in the cluster dashboard
- Tab shows a list of all secrets of cert type
- List allows users to see which certs are expiring soon, how long they've lived etc
- Tab also shows a notification if certs are expiring or have expired
- Related fixes
  - plumb in option list paging params (so we can show X of Y Certificates in pagination controls)
  - fix usages of from = from || now
  - Count requests to kube steve as steve requests (alongside local steve requests)
2023-11-08 11:52:23 +00:00
Evgeniya Vashkevich 6d4f75afaf
Fixed RKE cluster being shown as Imported (#9868) 2023-11-01 13:02:37 -07:00
Sean-McQ 80b0e11f59
Now uses the same data as the cluster homepage, delayed load not needed. (#9555)
* 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>
2023-09-28 09:06:55 -04:00
Alexandre Alves 9d8b957c95
fixes issue with Group Roles disappear in users & auth -> groups screen (#9783)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
2023-09-27 09:20:04 +01:00
momesgin 14befb59fc
fixed 'imported' label not showing up for imported AKS/EKS clusters (#9527)
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
2023-08-29 16:54:37 -07:00
LiuYan 56cb64da58 fix(LinkName): add node schema checking 2023-08-22 16:54:13 +01:00
momesgin 94323cfb4e
Fixed 'Imported' label not showing up for imported Google GKE clusters (#9443)
* prefixed the term 'Imported' to the provider name of the imported cluster.

* removed console.log

* handle imported GKE case in ClusterProvider

* added optional chaining

---------

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
2023-07-28 10:17:50 -07:00