Commit Graph

563 Commits

Author SHA1 Message Date
Richard Cox a1831e371d Ensure Compliance --> Profile list loads - vai can report profiles with `skipTests: []` as `skipTests: null` - this is a general bug for BE to fix - we should make this null safe though 2025-10-16 10:43:50 +00:00
Richard Cox 30f430cb9b
[backport v2.12.3] Table Sort Improvements (#15508)
* Sort Improvements + Fix Events SSP sort - Apply SSP sort order with generic `:desc` notation, - Allow headers to provide default sort order - Ensure SSP first seen and last seen column sorts behave the same

* fix l10n

---------

Co-authored-by: Richard Cox <ricox@suse.com>
2025-10-06 10:26:07 +01:00
Richard Cox bd3b44dd88 Sort Improvements + Fix Events SSP sort - Apply SSP sort order with generic `:desc` notation, - Allow headers to provide default sort order - Ensure SSP first seen and last seen column sorts behave the same 2025-09-24 10:25:58 +00:00
Richard Cox 10da1ab1e7 Ensure side bar cluster list shows icons for clusters with no annotations 2025-09-22 08:21:36 +00:00
Richard Cox bf81aae839 Fix stateful set pods page - normally workloads will fetch pods via the workloads podSelector - however for stateful sets we ignore that and instead get pods that have an owner reference of the statefulset - in a vai on world this was broken - pods are now fetched via workloads model fetchPods - pods are returned via `get pods` - the model statefulset overrode `get pods` and looked into podsByNamespace, which isn't populate in vai world - fix is straightforward - start off with the pods that match the selector (agnostic of vai state) - as before filter down to the ones with the owner 2025-09-09 14:10:50 +00:00
momesgin 359fd9d412
[Backport 2.12.2] - Deprecated charts (#15318)
* cherry pick + resolve conflict

* resolve merge conflicts

* fix cancel redirect + deprecated chart installation from tools (#15316)

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>

---------

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
2025-09-05 09:46:19 -07:00
Francesco Torchia 4ad55b1f9a
[2.12.2] Fleet remove CreatedBy section from App details
- move GitRepo data init in data()
- add fallback getting user info before store init

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-09-04 09:56:21 +02:00
Francesco Torchia 83d07af9f9
[2.12.2] Fleet fix missing resources from clusters details page
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-09-02 18:38:08 +02:00
momesgin 52fb8aca16
fix zero date for charts version date (#15123)
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
2025-08-11 10:27:21 -07:00
Richard Cox 8c474ff64c Merge pull request #15011 from richard-cox/fix-resource-detail-updates
Fix general and specific resource detail watch issues
2025-08-07 10:14:46 +01:00
Alexandre Alves e471103038
fix issue with pods capacity on node list view + add unit test + remove tests that are duplicated in a different model (#15063) 2025-08-06 14:55:45 +01:00
Evgeniya Vashkevich 6f21443dd4
[2.12.1] Fixed Harvester detail page access through Cluster Management (#15059) 2025-08-05 14:54:47 -07:00
Francesco Torchia edda528bb4
Merge pull request #14921 from torchiaf/backport-14895-status-version
[2.12.1] Fleet fix HelmOps table - Source column
2025-08-01 09:32:54 +02:00
Francesco Torchia 150d648b95
Fleet fix HelmOps polling interval
- remove Enable/Disable Polling actions from HelmOps
- fix Polling Interval behavior in HelmOps wizard
- add HelmOps unit tests - polling interval

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-28 09:58:29 +02:00
Francesco Torchia a2bc042362
Fleet add HelmOps installed version in Source column
- fix missing HelmOps OCI sourceSub and clean-up code in the model
- add HelmOps model unit tests
- show dash if source is empty

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-28 09:54:13 +02:00
Richard Cox eb1c08032f
Project Scoped Secrets (#14772)
* rename variables

* change button names + fix import

* apply pagination to secrets

* Major Changes

- secrets and project scoped secrets are now two pages
  - this fixes the issue where resource-fetch and associated mixins just fail with two of the same type on page
    - incremental loading would have been broken for both
- project scoped secrets
  - now correct lists upstream secrets that a project scoped based and on the target cluster
    - lots of work to get CRUD for management secrets in explore/cluster world
    - also includes a specific page to override the store for create/edit/view
  - these are now correctly grouped by project
  - updated to work with SSP enabled
- secrets list
  - shows if the secrets comes from a project
  - shows if the secret is a project scoped secret (only used on upstream cluster)
  - updated to work with SSP enabled
  - disabled update/delete of secrets created from project scoped (these just reset when sync runs again)
- disabled new detail view
  - this is broken, it ignores both storeOverride and currentStore, always going to `cluster` store


TODO:
- mostly testing
- blocked on some BE issues (bugs, additional indexed field)

* ... progress. will update commit message

* Revert "Merge pull request #14748 from richard-cox/revert-project-secrets"

This reverts commit be3962261d, reversing
changes made to 62d80084d9.

* tidy, and remove e2e

* test fixes

* fix vai group by

* Fix for grouping (secrets --> group by namespace --> pss --> table is incorrectly grouped but toggle is correct

* fix warning

* fix clone/yaml, fix default/system pss

* don't fetch projects, it wipes out header. this means in upstream we won't show project names for pss downstream

* fix lint

* fix ts complain

* Tweak column tooltips

* Add cypress logs for failing tests

* pipe in `inStore`

* tweaks to cypress logs process
- better name
- log http requests
- only create logs if run failed

* Secret selector improvements and test fixes
- don't cache or watch secrets if we're showing multiple selectors on a page
- ensure we classify secrets (make it into an instance of a model)

---------

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
Co-authored-by: momesgin <mo.mesgin@suse.com>
2025-07-15 08:27:26 +01:00
Evgeniya Vashkevich 2e25bc83ae
Added back RKE1 removal, removed etcdbackup (#14786) 2025-07-14 08:29:27 -07:00
Francesco Torchia fb67679e28
Merge pull request #14698 from torchiaf/fix-yaml-conflicts
Fix YAML 409 conflict errors
2025-07-14 10:48:15 +02:00
Jordon Leach c51eb70e61
Add ability to configure commentFieldsOptions on resource model for createYaml (#10396)
* Add ability to configure commentFieldsOptions on resource model for createYaml

* Add commentFieldsOptions to createYamlWithOptions method

* Fix and extend commentFieldsOptions to cover array and object types

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

* Fix typo

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

* Clean up addCommentSubFieldsOptions fn

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>

---------

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
Co-authored-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-11 09:19:49 -07:00
Francesco Torchia 4b52e3f877
Handle conflict errors in resource-class.js/saveYaml PUT requests
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-11 17:10:43 +02:00
Francesco Torchia 9873120e9f
normalize/handleConflict refactoring
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-11 17:10:43 +02:00
Francesco Torchia f0617f4536
Fleet add HelmOps in cluster pages
- Add Helm Ops Ready column
- Change cluster columns order
- Fix Git Repos Ready col label
- Fix e2e tests

Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-10 13:05:12 +02:00
Evgeniya Vashkevich 24f6c0bb12
Disabled editing Harvester cluster from Cluster management (#14526) 2025-07-09 21:24:40 -07:00
Francesco Torchia 462f26d126
Fleet add HelmOps count in Workspace details page
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-07 13:52:27 +02:00
Giuseppe Leo e10f19e54d
Implement CRD logic for SCC registration online (#14615)
* Create registration composable

* Add logic to create registration CRD schema and fetch resource with WS

* Convert Registration list to single element

* Updating logic with real case data

* Update UX to display also invalid registrations; Add Types; Update displayed values for the registration

* Update registration values given new specifications: expiration, product name

* Map condition errors from registration to banner

* Code cleanup, removed duplications

* Abstract date and time formatting as it's app standard; convert file to TS

* Add unit test for time

* Prevent logic to register without code; Reset values with null

* Corrent async button bug which has default error

* Move tests to isolate composable and ensure quality

* Abstract initialization

* Add tests and correct found issues

* Add loading status

* Separate data fetching and mapping; Pool registration till hash is changed

* Correct async button callback

* Add missing registration value assignment after refactoring

* Fix asyncbutton wordings and colors not matching standards

* Fix tests: import and fake times

* Fix issue with timezone testing in CI

* Catch namespace creation issue
2025-07-03 17:13:21 +02:00
Richard Cox ce70f83265 Primary change - Fix and improve labelSelectors and vai auto updates
- 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
2025-07-03 14:25:37 +01:00
Francesco Torchia c6b3f8611d
Fleet fix Helm Ops OCI registry field
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-07-02 09:29:18 +02:00
Francesco Torchia 56f40f8282
Merge pull request #14636 from torchiaf/14631-fix-oci-links
Fleet remove OCI repository link from `App Source` column
2025-07-02 09:28:27 +02:00
Francesco Torchia abde612e63
Merge pull request #14626 from torchiaf/fleet-fix-app-bundles-routes
Fleet fix App Bundles routing
2025-07-01 17:12:09 +02:00
Francesco Torchia 90290365a2
Fleet remove link from AppSource column for HelmOps OCI source
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-30 10:30:21 +02:00
Neil MacDougall 41a7cbed79
Update to support compliance benchmarks (#14582)
* Update to support compliance benchmarks

* Fix lint

* Don't use hard-coded default profiles

* Update e2e tests

* Fix name change in e2e test

* Fix lint

* Rename
2025-06-29 20:20:26 +01:00
Francesco Torchia 9c59a3e913
Fleet fix App Bundles routing
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-27 18:19:46 +02:00
Francesco Torchia 6d91adf4aa
Fleet fix git icons
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-26 12:30:31 +02:00
Alexandre Alves aebde5c25f
Rancher as an OIDC provider (#14475)
* Rancher as an OIDC provider (interface and flow)

---------

Co-authored-by: Richard Cox <ricox@suse.com>
2025-06-26 10:39:26 +01:00
Francesco Torchia 88b4888df1
Fleet remove forceUpdate action from HelmOps
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-25 20:01:57 +02:00
Francesco Torchia 2924cd9723
Merge pull request #14525 from torchiaf/13924-cluster-targets
Fleet add Cluster targets Match Expressions
2025-06-20 17:48:14 +02:00
Neil MacDougall a0d725938c
Add Notification Center (#14419)
* Initial version

* Improve growl integration

* Fix lint issues

* Tidy ups and lint fixes

* Add a maxiumum number of notifications

* Add some notes

* Localisations

* Avoid using general 'actions' class name

* Remove clear all button

* Further fixes

* Remove test code

* Always show a read notification indicator

* Address feedback from walk through

* Add test ids and updated e2e tests, fix lint

* Bump version number to match backend

* Work around version issues

* Fix lint issue

* Fix e2e test

* Fix release notes seen issue breading login landing page

* Update .gitignore

* Remove dev readme file

* Remove todo and tweak comments

* Add simple developer docs, update type comments, bump icon package version number

* Update lock file

* Address PR feedback

* Address PR feedback 2nd round

* Fix lint

* Fix broken import

* PR feedback

* Used partial

* PR review feedback

* Use user id hash in the local storage key

* Encrypt the notifications in local storage

* Remove persist stuff from store

* Fix bug with initialization of the store and release notes

* Bug fix - store encryption key

* Debounce setting of notifications to avoid loop
- tab 1 can fight tab 2 if tab 2 progresses whilst tab 1 processes stale content

---------

Co-authored-by: Richard Cox <ricox@suse.com>
2025-06-19 19:47:50 +01:00
Francesco Torchia db5ede12b3
Fleet add namespace in targetMode calculation
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 15:46:44 +02:00
Francesco Torchia b8dde4d8ca
Fleet fix tagetInfo column to be consistent with the new targets rules; add getTargetMode util
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 15:46:42 +02:00
Francesco Torchia 55e8e30986
Fleet fix Source column link for URL HelmOps
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:16:05 +02:00
Francesco Torchia 0ad2b9fd64
Fleet improve applications source field; remove link if URL is not HTTPS, OCI, SSH; cleanup code
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:57 +02:00
Francesco Torchia 9019d27b61
13959 Fleet fix Git ssh repo url
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:56 +02:00
Francesco Torchia 42066448b5
Fleet remove webhook tooltip from HelmOp
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:55 +02:00
Francesco Torchia 448dccd9ad
Fleet HelmOps add polling interal
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:52 +02:00
Francesco Torchia 0bfec3c9bc
Fleet HelmOps wizard refactoring
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:51 +02:00
Francesco Torchia b547f4706c
Fleet fix applications landing pages
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:44 +02:00
Francesco Torchia 6aa7130fd7
Fleet fix appSourceName label in Bundles model
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:42 +02:00
Francesco Torchia c068b32333
Fleet add applications skeleton; re-organize Advanced tap; fix models
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-18 11:15:39 +02:00
Francesco Torchia eb1eef6584
Fleet add OCI storage secret selector in workspace edit page
Signed-off-by: Francesco Torchia <francesco.torchia@suse.com>
2025-06-17 04:04:31 +02:00
momesgin 52ba43a636
FilterPanel Component (#14406)
* app card component

* cover upgradable and installed statuses

* support tags

* comment out handle clicks

* add matching chart logic

* add unit tests

* add unit tests for chart model

* fix e2e tests

* fix e2e test

* add secondary text link in css

* change AppCard to a generic ItemCard

* continue making itemcard more generic

* fix reference issue

* title slot + variant styling

* code cleanup + minor refactor

* new icons

* update icon lib + minor refactor and styling

* unit tests

* more unit tests for chart model

* refactor some slots + finishing touches

* some accessibility updates

* minor styling

* move image div inside slot

* uncomment e2e tests

* fix charts selector

* fix test

* fix statuses alignment

* more robust header styling

* remove PropType

* updated translation key

* update key

* rename

* improve aria labels + minor cleanup

* fix import

* replace deep targetting lazyimage css with style attr

* remove deep for actions + fix small header alignment

* rename component

* remove extra check

* add comments

* add comments to model

* use id instead of chartName

* remove todos

* fix matching app logic not including the latest version

* create RcFilterPanel component and use it in charts page

* fix repo click + minor styling

* update checkbox styling + fix unnecessary render for extra slot

* revert checkbox styling changes

* wrapper styling

* imporve performance

* debounce search query

* update e2e tests

* support actions as prop

* resolve conflicts

* update filter component + add statuses filter

* dynamic card layout when variant is not set

* fixed unit tests + lint

* removed unnecessary default props

* fix e2e test

* improve aria label message + remove unnecessary ones

* move component

* separate status filtering

* status tooltips

* fix export component

* Only calc variant twice

* lint

* fix unset debouncedSearchQuery

* resolve conflict

* add requestAnimationFrame to optimize observer

* fix resolve conflicts

* support both v-model and value + fix sluggish checkboxes + comments

* move RcFilterPanel to pkg

* unit tests

* remove unused carousel related code

* remove unused carousel related code

* remove unused carousel related code

* update card po and its usage

* rename

* resolve merge conflicts

* replace .no-card-click with RcItemCardAction component

* minor styling

* add po for rc-filter-panel and update e2e tests

* update unit tests

* refactor e2e test for disabled repo

* accessibility changes

* add translation + minor refactor

* add keydown handlers + minor refactor

* Revert ResizeObserver, also cache filteredCharts map result

* fix resolve conflicts

* fix resolve conflicts

* revert removed data-testid

* minor styling

* remove unused code

* update css space variables

* fix e2e test

* remove type description + minor styling

* update index.d.ts

* update logic to remove value prop

* rename footer item click

* add screen reader message for opening on a new tab

* check for option.label

* revert space variable changes and update .outlet padding instead

* revert spacing change

* fix using modelValue

* fix checkbox value type

* converted rc component to regular

* fix import

* fix type

* fix item card focus styling

---------

Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
Co-authored-by: Richard Cox <ricox@suse.com>
2025-06-13 15:16:13 -07:00