- we have a list of jobs and fetch on demand
- if these change or removed we get updates
- if a new one appears though we need to explicitly go out and fetch it
- 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
* Test / Wire in new label filtering to limited places
- Wired in to
- Workload detail page - pods and services (broken due to reverse selector)
- Service Detail - Pods List
- Service create/edit - Pod selector tab
- Also
- Fix showPodRestarts in random location
- TODOs
- Lots of testing / validation required
- reverse deployment --> service selector (not services given deployment, but for each service contains pods from deployment)
- workload model usages of pods getter
- services model usages of pods getter
- many many more....
* wired in, NOT tested
* improvement
* sdfdsf
* ryrty
* werer
* The great test off begins
* testing and tidying
* testing and tidying
* First good run
* tests, fixes and improvements
* updates
* Tidying up
* Fixes (namespace orientated), tweaks, updates
* Fix unit test
* Fixes for vai off
* Re-write `matching`
- handle namespaces better (given if the resource is namespaced
- better align with legacy matching fn (given specific scenarios that should return none or all)
* Lots of fixes, but mainly vai off --> pods list --> deployment detail --> pods list updates correctly
* fix lint, unit test
* e2e fix
* Fix weird plugins build validation failure (TS error on expected param for JS method with a default)
* Fix workload services
* changes following mini code review
* Only show pods tab if workload type supports it, always show pod resource table if tab is shown
* Update checkout to v4 and bump Node to 16
* Update GHA workflow migration paths
* Removed named exports from Vue files
* Move code outside of the Vue app element
* Remove @nuxtjs/eslint-config-typescript
* Remove @nuxt/types and @nuxt/typescript-build
* Fix import issue with http-proxy-middleware
* Replace @nuxtjs/axios with axios and axios-retry
* Remove @nuxtjs/webpack-profile
* Fix linting issues after Nuxt webpack removal
* Pin resolution for glob after rebase
* Update yarn.lock after rebase
* Fix issue with rancher-components
* Bump rancher-component GHA config to match rebase changes
* Generate yarn file
* Add dependency
* Remove nuxt global var in app template
* Pin version for babel/plugin-proposal-private-methods
* 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
* add logic to support new table cols via extensions hook on resource table instead of type-map so that we can capture table with locally defined headers like the nodes list
* cleanup
* address PR comments
---------
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
This embeds the project monitoring Grafana metric dashboards if they are present and user has no access to cluster monitoring.
Fixes https://github.com/rancher/dashboard/issues/7286
Signed-off-by: Bastian Hofmann <mail@bastianhofmann.de>
* change condition to check if buttons for scale up/scale down deployment are enabled
* revert changes
* change condition to check if buttons for scale up/scale down deployment are enabled
* `canUpdate` exists in inherited `resource-class` class
- I've confirmed this change is ok with Alex
---------
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
Co-authored-by: Richard Cox <ricox@suse.com>
* 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
Fixes#6800 - Workload storage mount point for volumes should be on containers
Fixes#7021 - Allow user to change the volume name
Fixes#7027 - Pod details page broken
These all works on 2.6.9 because PRs were merged after the branch separation. So this is applying the same changes to 2.7.0
For Release 2.6.9
#6800 -> release 2.6.9 PR fix#6886#7021 -> release 2.6.9 PR fix#7022#7027 -> release 2.6.9 PR fix#6952
* Make container tabs horizontal.
* Update cronjobs, DaemonSets, Jobs, StatefulSets to use same Workload component.
* Fix 6755 - Wrong sidecar config edit not shown in UI.
* Set Persistent Volume claim capacity as required.
* Doc
* v0.7.0
* v0.7.1
* v0.7.2
* Add creators
* v0.1.14
* v0.1.17
* Add Yarn link
* Tidy ups and typos
* Allow models to be loaded from plugins
* v0.1.15
* v0.1.18
* v0.6.6
* Improve readme, fix cyperss log msg
* v0.1.17
* v0.1.19
* v0.6.7
* v0.6.8
* Fix logo ref when in shell
* Fix lint issues
* Fix error in example
* Fix script to work on linux
* Add ability to revert moves without losing changes
* Fix bug with custom models in a plugin
* Fix build of UI packages
* Add dist-pkg to .eslintignore
* Pull out util from extend-router to prevent router being pulled in UI packages
* Update PLUGINS.md
* Remove duplicate dependency
* Reduce size of built UI packages
* Share codemirror. Other tidy ups
* Further improvements
* Tidy ups to support i18n in plugins
* Clen up add comments
* More clean-ups and comments added
* Rename from extension to plugin
* Missed file in rename
* v0.6.9
* TIdy ups following rename
* v0.1.20
* v0.1.21
* More refactor and tidy up
* v0.1.22
* v0.1.18
* v0.1.19
* v0.1.23
* v0.6.10
* Version Packages. Improve naming. Unload.
* v0.6.11
* v0.1.20
* v0.1.21
* v0.1.24
* v0.6.12
* v0.1.25
* v0.1.22
* v0.6.13
* Fix issues when plugin is builtin
* Add missing files
* Fix lint issues and watcher ignores
* Fixes following review
* v0.1.28
* v0.1.31
* v0.6.20
* Fix coer.js version
* Fix bug where plugins included via npm don't work
* Changes post merge
* Move plugins doc to dev guide, add note at top of README
* Update cypress version
* Add note about the reset --hard in rejig -d
* Fixes post merge
* Rename @ranch to @rancher and ad plugins
* Improve routes support, add package assets support
* Add uninstall hooks and pass interal opts
* Fix rejig script
* Minor fixes
* disable consent banner text overflow wrap
* add additional metadata to workload detail view
* minor css tweak
* Routing tweaks
- attempted to improve `addRoutes` typing, failed a lot
- improved typings in plugins.ts
- added "@pkg/*" entry and vue-shim (for importing components) to the pkg creator
- fixed some linting
- safely fail when Verdaccio isn't running
- fixed some typos
* Remove frontmatter-markdown-loader reference from nuxt-config
* Add annotation to stop upgrades for managed charts
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Use correct name for Network Attachment Definition Resource (#5579)
* Fix heading levels in Account and API keys page (#5563)
* SortableTable Performance: Optimise row mouse over/leave handlers (#5550)
Co-authored-by: Richard Cox <richard.cox@suse.com>
* Keep the check for fleet bundle ID
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Revert "Remove frontmatter-markdown-loader reference from nuxt-config"
This reverts commit 29ef6f2f7b.
* Exclude creators from dashboard build
* Revert "Exclude creators from dashboard build"
This reverts commit 8ede93ee7c.
* Ingore creators via tsconfig
- We're still susceptible with vue shims in multiple packages
- Need to determine why packages can't use shim from route
- Probably need to move `./vue-shim.d.ts` in to `./shell`. Needs testing with a pkg that imports a component
* warn on adding windows node to cutom cluster
* Display custom error message when login fails. (#5582)
* change rke2 upgradeStrategy to 1 concurrent controlplane and worker (#5580)
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
* update endpoint display, fix ready status for daemonset type
* Fix Sortable Tble SSR (#5599)
* Sortable Table: Fix broken props to slot (#5600)
* expanded error check to include simple type
* fixed error check logic
* Fix async buton wobble with spinner (#5586)
* Add Pod restart count to workload detail page
* Can scale workload from workload detail page
* Enable source map in Nuxt/Webpack configuration for debugging (#5590)
* Move hardcoded values for roles in his own config file
* Allow to set default values also for Clusters and Namespaces
* Allow local cluster to be hidden
* Initialize always auth errors as empty list
* Add translation for snapshot group
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Enable s3 storage in rke2 cluster config
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Group by snapshot location
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* After rejig
* Prevent injection of malformed errors in the generic resource form component
* New Epinio pkg, and updates to dashboard (core, pkg process)
* Remove epinio-select
* correct @shell// reference
* Fix filtering issue
- store/index suffered a bad merge
* Add hide-local-cluster to the settings page
* Fix node table column sorting (#5611)
* Fix issue where private registry auth can be changed in view mode (#5617)
* Change title of support block on home page when custom link set (#5547)
* Tidying up
* Add feedback to the copy kubeconfig header button (#5628)
* Add feedback to the copy kubeconfig header button
* Minor improvement
* Get rke3 and k3s latest versions from settings (#5608)
* Revert previous change and avoid watching spoofed types
* Move the group-by string to computed prop
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
* Use computed instead of method, use Array.isArray instead of lodash isArray
* Ensure auth provider note appears consistently within form instead of new floating button section
- some auth providers already had this
- possibly better ux to add to top, but that area is already busy
* Fix bug where delay loading only worked on scroll with live columns (#5635)
* Inconsistencies with Cluster metrics across the UI (#5542)
* fix num pods being displayed on the homepage cluster list + set mem to gib for ram on homepage cluster list
* show total number of nodes rather that useful nodes in cluster dashboard view + remove reserved info for CPU and MEM in cluster table in homepage + fix pods usage in nodes list view + clear console logs
* cleanup
* correctly wire PodsUsage as a formatter + display N/A when usage is zero in nodes list values for CPU, MEM, PODS
* add loader icon to PodsUsage formatter
* add string translation to n/a in percentageBar formatter
* add delayedLoading to PodsUsage formatter
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro-2.local>
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
* Enable filtering by project name on project/namespaces paeg (#5636)
* Fixes post merge
* Rename core-store to dashboard-store
- contains TODO: RCs to resolve
* Tidy up/imporve nav hooks
* Fix some todo's, epinio routing product
* refactor detailtop
* Hide NeuVector product if `cattle-neuvector-system` does not exist
- As per request at https://github.com/rancher/dashboard/issues/5556#issuecomment-1098270110
- fixes#5556
- alternative to #5604
* Fix a number of areas where the sticky footer consumes large amounts of space
- Fixes#5643
- Mostly caused by non-standard ways the CruResource was being used
Effected Areas / Places to test
Note - Only need to visit pages, shouldn't need to make any changes to resources
- Cluster create/import screens (types, credentials (create new / existing), import, rke2)
- Auth providers (shortest form is keycloak saml)
- Create/Edit resource types - project, namespace, some random others
- Create/Edit resource types that have sub-types (secrets, workloads, OPA Gateway / Constraints)
Also Addressed
- Only show top border of the footer if CruResource is in edit view
- Fixed hide of errors
* Fix conditional showing of Group `Assign To` and `Refresh` buttons
Buttons should only show if
- There is a non-local auth provider enabled
- The user has the correct permissions for the relevent action
Fixes#4897
* Fix live expiry badge used on api keys table
* Hide local cluster in LandingPagePreference and api key (token) list
* HARVESTER: Fix Grafana metrics reload failure
* Address some TODOs
* minor fixes
* Rename i18n to l10n, make use of default folders
* Improve adding multiple routes
* Config map view inconsistent for binary data (#5602)
* Fix Config map view inconsistent for binary data
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro-2.local>
* check for existance of limit prop so that deleting a project doesnt silently fail (#5661)
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
* Changes following review
* Fix CruResource `Edit as Yaml` feature
- ensure sticky buttons are stuck at bottom
- doesn't apply sticky buttons to direct `Edit as Yaml` feature outside of CruResource
* Fix navigation & ns filter bugs
- nav from explorer to epinio cluster (errors in console)
- nav from epinio cluster to explorer (ns filter broken)
* Remove epinio ns and config validation
- this was the process that will be replaced with Sean's work
- it's suffered bit rot and was broken after the merge
- not running in places
- it visually broke the labelled select (in multiple places)
* remaining todos
* fixes following validation change
* fix bad yarn lock file
Co-authored-by: Neil MacDougall <nmacdougall@suse.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>
Co-authored-by: Neill Somerville <neill.somerville@gmail.com>
Co-authored-by: Phillip Rak <rak.phillip@gmail.com>
Co-authored-by: Nancy Butler <42977925+mantis-toboggan-md@users.noreply.github.com>
Co-authored-by: Shavin Fonseka <Shavindra@users.noreply.github.com>
Co-authored-by: Alexandre Alves <97888974+aalves08@users.noreply.github.com>
Co-authored-by: Alexandre Alves <aalves@AlexandresMBP2.lan>
Co-authored-by: Catherine Luse <catherine.luse@gmail.com>
Co-authored-by: Giuseppe Leo <giuseppe.leo@suse.com>
Co-authored-by: cnotv <giuseppe.leo@suse.de>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro-2.local>
Co-authored-by: n313893254 <n313893254@126.com>
# Conflicts:
# shell/assets/translations/en-us.yaml
# shell/components/CruResource.vue
# shell/components/ResourceDetail/Masthead.vue
# shell/components/ResourceList/Masthead.vue
# shell/components/SortableTable/index.vue
# shell/components/form/KeyValue.vue
# shell/components/form/LabeledInput.vue
# shell/components/form/NameNsDescription.vue
# shell/components/form/NotificationSettings.vue
# shell/components/formatter/PodsUsage.vue
# shell/components/nav/Header.vue
# shell/config/product/neuvector.js
# shell/detail/workload/index.vue
# shell/edit/provisioning.cattle.io.cluster/CustomCommand.vue
# shell/models/cluster.x-k8s.io.machinedeployment.js
# shell/models/harvester/kubevirt.io.virtualmachineinstance.js
# shell/models/workload.js
# shell/pages/c/_cluster/settings/banners.vue
# shell/plugins/steve/actions.js
# shell/store/type-map.js
* Doc
* v0.7.0
* v0.7.1
* v0.7.2
* Add creators
* v0.1.14
* v0.1.17
* Add Yarn link
* Tidy ups and typos
* Allow models to be loaded from plugins
* v0.1.15
* v0.1.18
* v0.6.6
* Improve readme, fix cyperss log msg
* v0.1.17
* v0.1.19
* v0.6.7
* v0.6.8
* Fix logo ref when in shell
* Fix lint issues
* Fix error in example
* Fix script to work on linux
* Add ability to revert moves without losing changes
* Fix bug with custom models in a plugin
* Fix build of UI packages
* Add dist-pkg to .eslintignore
* Pull out util from extend-router to prevent router being pulled in UI packages
* Update PLUGINS.md
* Remove duplicate dependency
* Reduce size of built UI packages
* Share codemirror. Other tidy ups
* Further improvements
* Tidy ups to support i18n in plugins
* Clen up add comments
* More clean-ups and comments added
* Rename from extension to plugin
* Missed file in rename
* v0.6.9
* TIdy ups following rename
* v0.1.20
* v0.1.21
* More refactor and tidy up
* v0.1.22
* v0.1.18
* v0.1.19
* v0.1.23
* v0.6.10
* Version Packages. Improve naming. Unload.
* v0.6.11
* v0.1.20
* v0.1.21
* v0.1.24
* v0.6.12
* v0.1.25
* v0.1.22
* v0.6.13
* Fix issues when plugin is builtin
* Add missing files
* Fix lint issues and watcher ignores
* Fixes following review
* v0.1.28
* v0.1.31
* v0.6.20
* Fix coer.js version
* Fix bug where plugins included via npm don't work
* Changes post merge
* Move plugins doc to dev guide, add note at top of README
* Update cypress version
* Add note about the reset --hard in rejig -d
* Fixes post merge
* Rename @ranch to @rancher and ad plugins
* Improve routes support, add package assets support
* Add uninstall hooks and pass interal opts
* Fix rejig script
* Minor fixes
* Routing tweaks
- attempted to improve `addRoutes` typing, failed a lot
- improved typings in plugins.ts
- added "@pkg/*" entry and vue-shim (for importing components) to the pkg creator
- fixed some linting
- safely fail when Verdaccio isn't running
- fixed some typos
* Remove frontmatter-markdown-loader reference from nuxt-config
* Revert "Remove frontmatter-markdown-loader reference from nuxt-config"
This reverts commit 29ef6f2f7b.
* Exclude creators from dashboard build
* Revert "Exclude creators from dashboard build"
This reverts commit 8ede93ee7c.
* Ingore creators via tsconfig
- We're still susceptible with vue shims in multiple packages
- Need to determine why packages can't use shim from route
- Probably need to move `./vue-shim.d.ts` in to `./shell`. Needs testing with a pkg that imports a component
* After rejig
Co-authored-by: Neil MacDougall <nmacdougall@suse.com>
Co-authored-by: Neil MacDougall <nwmac@users.noreply.github.com>