Commit Graph

56 Commits

Author SHA1 Message Date
Richard Cox 43d338fac2
Harvester Plugin (#6729)
* routing maybe

* remove nested edit views

* harvester custom routes

* fix loading imported dev cluster

* move harvester-manager hci.cluster type out of harvester pkg

* fixes for build-pkg

* fix harvester custom dialogs

* fix harvester pkg routing

* generateDynamicTypeImport hyphenated dirs

rename cloud_credential and machine_config back to cloud-credential and machine-config

* Appease linting

* Fix epinio pkg build
- Includes fixes for some dashboard component references

* Revert "Receiver credential secrets are deleted when secret is set to none"

This reverts commit 836460e2998959bcda0b14a9f6511f248980b7b5.

* Fix plugin modal cancel button in dark mode

* Ensure correct components loaded when a new version of a plugin is loaded
- The route matcher was never updated with new route-->component values
- This was due to `this.router.options.routes` not containing the result of `router.add`
- See https://github.com/vuejs/vue-router/issues/2280

* Revert "Revert "Receiver credential secrets are deleted when secret is set to none""

This reverts commit e524bb3d40ea7adfe35c38ec7870560625965d25.

* fix harvester manager->harvester routing

* rename dialogs

* move harvester-manager files out of harvester pkg

* Revert "remove nested edit views"

This reverts commit e835835943d63e74c50942884fec3706f8703047.

* plugin validators dynamic import - not working

* fix merge conflict

* fix harvester members

* fix conflict

* custom validators

* harvester table formatters

* members routing

* import path fixes

* harvester mutli load

* Port across tweaks made during dynamic plugin work
- harvester plugin can be bundled with the dashboard until dynamic work has been completed
- Nav directly to virt cluster dashboard instead of via /harvester-c-cluster
- Fix missing bottom border on virt cluster list, hide actions (as they're never populated)

* move config/settings and config/harvester-map

fix hci setting custom components

* fix harvester setting import path

* Move over SerialConsole and Novnc, remove harvester.notifications
- These components were so 1-1 with harvester in the end i moved them over
- Also removed the like-for-like generic.notification `harvester.notification` strings

* Remove isSingleVirtualCluster, most of isMultiVirtualCluster

* Fix two nav issues
- harv cluster members --> prefs --> click on-screen back
- dashboard --> prefs --> click on-screen back

Both of these would be better fixed by an incoming change to the default layout (don't show old content before switching page)

* Fix reload of project/namespace page

* Split out project namespace into it's own component (1 or 2)

* Split out project namespace into it's own component (2 or 2)

* use product hideSystemResources opt instead of isVirtual/product===virtual

* fix missing prop in header

* Move FilterLabel and CloudInitType to harv pkg + two other references

* Move Harvester Upgrade components to harv pkg
- Needs a review with Neil regarding generics

* rebase build+load not working

* fix harvester route in authenticated

* Experimental Changes

* Fix merge conflicts

* WIP Fix routing
- includes project/namespace and namespace pages

* Tidying up

* Move harvester core store to plugin, remove harvester code from authenticated flow
- harvester store is a steve store that now lives in the plugin
- harvester `loadVirtual` replaced with a shortened `loadCluster` in it's own store
- Also fix xterm css import

* Fix three routing related bugs
- Fix project/namespace create/edit/cancel/done flows
- Update harvester's loadCluster to better match loadCluster
- Make edit namespace page project resource agnostic

* Build fixes

* Fix create namespace button and other tweaks

* fix two issues with nav out of imported harvester cluster

* Fix alignment of action menu button
- Used in many places
  - all generic table action menus
  - global settings --> settings
  - rke1 cluster detail page machine pool group actions
  - project/namespace list project group actions
  - resource detail page action menu

* Revert changes to app and pkg creators
- This should fix `check-plugins-build` gate
- It does hide the underlying issue, but that won't have been brought in by this PR?

Co-authored-by: Nancy Butler <42977925+mantis-toboggan-md@users.noreply.github.com>
2022-09-01 08:57:05 -07:00
Phillip Rak be087fe6e9
Merge branch 'master' into feature/toggle-switch 2022-08-19 09:34:01 -07:00
Neil MacDougall 684bdc93ff
On Resource Tab, only fetch events when events tab is active (#6683) 2022-08-19 09:46:32 +01:00
Giuseppe Leo 698194fea3
Create E2E tests for cluster CRUD operations (#6284)
* Set data test id and allow complex component to have default and inherited values for all the actions

* Create cluster tests with steps; Create cluster E2E test

* Extend command to use selector matchers

* Create test for cluster navigation and deletion

* Extend commands to find by id as in get method

* Extend documentation with guidelines and info about E2E

* Correct cluster delete and details tests to get menu within speciftc cluster row

* Add remaining E2E tests for the cluster

* Add baseUrl to the paths

* Add RKE2 selection on cluster creation for CI

* Add E2E debugging information

* Rename clluster manager E2E for consistency

* Correct data test ID after rebase

* Prevent cluster provider errors if no management parameter is provided

* Prevent accessing objects in mutation if none is provided

* Remove imported cluster sample due discarded logic

* Reset RKE2 switch on cluster creation

* Adjust test naming for cluster manager

* Group tests under scoped cases
2022-08-17 20:48:20 +02:00
Phillip Rak 5d5e38a251 Move ToggleSwitch to @rancher/components
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2022-08-16 15:49:56 -07:00
Richard Cox 6ceae93a75 For certain roles hide concept of namespace outside of groups
Users who have no overaching view of the cluster (non-rancher admins, non-cluster owners)
- shouldn't see namespaces outside of their projects
- shouldn't be able to create namespaces outside of their projects (specifically not in a project)
2022-08-04 12:39:03 +01:00
Nancy Butler f0e16d7f78 default podaffinity namespaces prop to null instead of empty array 2022-08-03 10:29:14 -07:00
yuzeng 3ad5318d94 Harvester: move harvester specific code out of PodAffinity 2022-08-03 18:17:08 +08:00
yuzeng 542ca71216 Harvester: typology field is inputable if get nodes failed 2022-08-03 00:37:45 +08:00
Neil MacDougall b5e89f49ba
Improve presentation of add Member dialog (#6500)
* Improve presentation of add Member dialog

* Updated for PR feedback
2022-07-29 17:07:33 +01:00
Sean 1917b0c3cd Passes rules to certificate host field, extends arraylist to use rules 2022-07-25 19:10:49 -04:00
Shavindra 340e2af8d3
Deployment creation view - fix health check - #5734 (#6470) 2022-07-25 17:50:49 +02:00
Sean 21f424814c Resolves issues with ServicePort validation 2022-07-21 14:33:08 -04:00
Sean 41ba49b6c2 Adds in UI-side validation for Ingress Form plus additional fixes.
Fixes #4575 Add in validator injection to form-validation mixin, add in "allTabsExtraContent" slot to "tabbed" for messaging that should span all tabs, Error component optionally displays as banner, InputWithSelect can now show validationMessage on text-box without a label, LabeledSelect can now show tooltip and validationMessage at the same time, Select component can now show validation message, adding and removing rules and rulepaths displays correct content, removing does not reload page (fixes #6319), ingress form shows proper validation messages for the following states: invalid "name" field, invalid request host, invalid rule path, invalid rule target service, invalid rule port, invalid default backend target service, invalid default backend port, either rules or default backend must be present. Ingress form is validated and "Create" button is disabled if payload is not validated as correct.
2022-07-21 13:55:38 -04:00
Nancy 7618bb5fb8
Merge pull request #6398 from n313893254/pr
HARVESTER: Fixes v1.0.3 issues
2022-07-20 13:19:03 -07:00
Nancy Butler 75010054cf harvester: update podaffinity from pr feedback 2022-07-20 12:51:45 -07:00
Neil MacDougall 379c573830
Fix imports that break plugins (#6427) 2022-07-20 17:22:04 +01:00
yuzeng c3666c61fb Harvester: Use random string to trigger pod/node affinity re-render 2022-07-20 17:27:03 +08:00
yuzeng 3784ddece9 Harvester: Harvester node driver with external credentials enhancement 2022-07-20 17:26:54 +08:00
yuzeng c40439aee6 Harvester: add the configuration of node/pod scheduling on Harvester node driver(RKE2) 2022-07-19 15:46:04 +08:00
yuzeng 20ff3550c9 Remove pod/node scheduling correctly 2022-07-19 15:46:04 +08:00
Shavindra 33bc3d6449
Fleet add repository form update - #5197 (#5625)
* Fleet add repository form update.

* Refactor CruResoruce.
2022-07-18 17:55:18 +01:00
wujun 15f5065392 HARVESTER: filter labels 2022-07-15 09:16:07 -07:00
n313893254 c76750936d HARVESTER: VM template is not working with Node scheduling 2022-07-15 09:15:53 -07:00
Alexandre Alves af1df2c660
add tooltip to fleet cluster labels editor title with appropriate copy (#6355)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2022-07-14 10:54:29 +01:00
Catherine Luse 89a55389ed
Merge pull request #6302 from catherineluse/amc
Can select secrets for receivers in AlertmanagerConfig
2022-07-10 06:39:01 -07:00
Catherine Luse f81d0d9876 Can select secrets for receivers in AlertmanagerConfig 2022-07-07 20:35:57 -07:00
Sean ddab180ecc Adds in form validation mixin, error reporting on inputs, a few examples 2022-07-07 13:18:43 -04:00
Bastian Hofmann d9ccb3a673 Add more details to auth secret dropdown
This makes it easier to pick the right secret if there are multiple ones. These are used for example in the GitRepo Continuous Delivery UI.

Adresses https://github.com/rancher/dashboard/issues/6239
2022-06-28 14:32:39 +02:00
Richard Cox 94e15d3e52 Merge remote-tracking branch 'upstream/epinio-dev' 2022-06-22 13:13:51 +01:00
Neil MacDougall 01cf6dcd46
Fix shell package with rancher components (#6200)
* Fix shell package with rancher components

* Fix tsconfig so it is parsable
2022-06-22 10:29:49 +01:00
Giuseppe Leo 6422c1de77
Fix issue with inputs not updating data inside multiple forms while typing (#6070)
* Use plugins globally in Jest configuration over single statements

* Add checkspell terms

* Add test id and cleanup code for Upgrading

* Create test for Upgrading input actually updating values while typing

* Handle missing terminationGracePeriodSeconds value in the spec qhile hanfling Upgrade value

* Replace Deployment Upgrading input event strategy with blur

* Remove container input listener, over single input emitters, to avoid issues in case of blur

* Extend tests to all the inputs to update the data in the Upgrading tab

* Removed deprecated components

* Correct vue-select import in Vue within Jest setup

* Add vue-select type

* Create form tests sample for input with custom select component

* Create unit tests for all the forms

* Create test for Upgrading without verify value

* Changed from component to query selectors in select input unit tests

* Prevent multiple events due inconsistent event input pattern in network update for Harvester

* Correct TS complain about Vue logic

* Add issue number to TODO
2022-06-20 11:25:49 +02:00
Richard Cox 73f611686e Fix white page error when there are no ns, user enters text and hits return
- there's still an underlying issue with the NameNsDescription component to resolve when there are no ns, but nothing severe
2022-06-17 15:09:27 +01:00
Richard Cox ac43cc5b45 When choosing to create a namespace set focus to new input field 2022-06-13 12:17:56 +01:00
Richard Cox 7f54c0d274 Align cross button with drop down arrow 2022-06-13 11:50:38 +01:00
Richard Cox 750256a0f5 NameNsDescription Updates
- Cancel cross should be a standard colour rather than red
- Ensure CruResource `namespaceKey` works for paths
  - align CruResource `namespaceKey` with NameNsDescription `namespaceKey`
  - reduce complexity
  - This follows on from the conversation in https://github.com/rancher/dashboard/pull/6084
2022-06-13 11:42:58 +01:00
Catherine Luse b0abe0761a
Merge branch 'master' into create-edit-namespace 2022-06-10 13:41:53 -07:00
Phillip Rak 3c23d90b0d
Port rancher components to TypeScript (#6073)
Summary

This ports the components under pkg/rancher-components to TypeScript. Take note that this change also touches some areas outside of pkg/rancher-components, including

    shell/mixins/labeled-form-element.ts
    shell/mixins/compact-input.ts
    shell/components/form/LabeledSelect.vue
    shell/components/form/Select.vue

Making changes to these components was required to properly work with the mixins used for pkg/rancher-components/src/components/Form/LabeledInput/LabeledInput.vue. Perhaps these would be good candidates to port to Rancher Components next..

Fixes #5932
Areas or cases that should be tested

We'll need to review a good range of usages for the modified components to check for regressions. I'm mostly concerned about type errors or warnings that might be raised during runtime.
2022-06-07 10:36:37 -07:00
Neil MacDougall 6d015116e2
Workload events tab (#6058) 2022-06-06 13:20:23 +01:00
Neil MacDougall 362579eeea
Fix PVC expansion and add to action menu (#6072)
* Fix PVC expansion and add to action menu

* Localize action name
2022-06-06 13:19:30 +01:00
Catherine Luse 8709f99ba7 Can select or create a namespace in create resource forms 2022-06-02 19:49:16 -07:00
Phillip Rak 72b36cb360
Create Rancher Component Library (#5504)
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
```
2022-05-24 15:09:53 -07:00
Catherine Luse 3a8be3a1d1 Change name of event emitted for secret selector 2022-05-19 22:57:29 -07:00
Giuseppe Leo 281d6a2b74
Feature/5186 unitinput blur (#5965)
* Remove delay to unitinput due issue with form/vuex binding

* Pass event on label input blur

* Emit unit input value on blur only
2022-05-18 11:12:07 +02:00
Neill Somerville 48666791bb ns reserved value update 2022-05-16 16:33:56 -07:00
Neill Somerville 6752fe2952 add tooltip for Project Namespace Resource Quotas 2022-05-16 16:33:55 -07:00
Richard Cox a75342566a
Merge pull request #5940 from richard-cox/initial-services-support
Initial support for epinio services
2022-05-16 13:40:58 +01:00
Alexandre Alves d59743d5ee
Project is created with resource quota even after the quota is removed (#5841)
* clear up resource quota if removed individually from UI

* finish logic to clear project resourceQuotas

* fix issue where data was not being captured corretly from remove event coming from ArrayList in ResourceQuota component

* PR review changes

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2022-05-12 15:05:16 +01:00
Richard Cox bf465a7666 Initial support for epinio services
- includes fix to NameNsDescription `namespacesOverride`
- Implements basic fetch, models and lists
- Everythhing else blocked on UX decisions / backend changes (see https://github.com/epinio/ui/issues/97)
2022-05-12 13:47:19 +01:00
Alexandre Alves 55ce0a9da3
Can't create an Opaque secret using plain text as value (#5918)
* fix issue where user could not create opaque secret from edit config interface

* Add `canEncode` to cover c&p

Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
Co-authored-by: Richard Cox <richard.cox@suse.com>
2022-05-11 14:03:10 +01:00