Commit Graph

31 Commits

Author SHA1 Message Date
Neil MacDougall c9e1a19396
Extension support for custom provisioning (#9246)
* Extension support for custom provisioning

* FIx lint issues

* Discovery / Tweaks
- fix issue where namespacesOverride was lost
- tidy up PROVIDER
- try to handle missing provider=type url param (could be missing extension-params)
- added a few comments to comments to come back to

* Names and typings
- change param --> customParam to make it clearer it's not url params
- add labels-annotations to shell types

* Wire in provider detailTabs
- as per original readme this should be made generic (extension point working directly with ResourceTabs)

* Update IClusterProvisioner & docs

* Improvements / Changes to support proving out DO extension
- cluster hooks optional
- buff up save hook (and pass in cluster when calling apply fn)
- move normalizeName into generic place
- bring back async create machine config
- hack for do extension (map example provider to do provider)

* updates, add optional saveCluster, add missing kube file
- saveCluster complements hooks, doesn't skip handling of addons, etc
- ensure register hooks take the `this` context in all worlds

* Adding docs

* Updates
- location config based changes
  - change customParams to context
  - add query param
- add new extention point to add tabs to cluster create cluster config section
- fixed some typing
- fixed issue where cluster was not passed to before / after hooks (only important if 'this' changes

* Changes following review, fix `t` in plugins

* Fix linting

* Docs updates, pass through more edit/view things

* Conditionally show the namespace grouping in the cluster list
- means users can differentiate between clusters with same name in different namespaces
- useful when clusters created via extension provisioner where ns can be selected

* docs tweaks, actually include the provisioning page in docs

---------

Co-authored-by: Richard Cox <richard.cox@suse.com>
2023-07-11 22:17:57 +01:00
Alexandre Alves 398585fb83
bump kube version (#9139)
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2023-06-20 19:11:34 +01:00
Jordon Leach be2689bdda
Clean up temporary charts - fix chart url path (#9075) 2023-06-09 12:16:45 -04:00
Jordon Leach d94e78c24a
Add extension image load dialog (#9010)
Update dialog with repo creation - update docs

Add uninstall for custom images

Add extension images list view

Add image load dialog and uninstall within extension image view

Update publish and bundle scripts for image load - move image page to tab

Add extension container build workflow file to pkg creator

Move plugin server template into extension build scripts

Fix publish script for multiple asset packages

Move ImageList view to separate page - add crd metadata for custom images

Update docs - fix references to images with catalog

Fix wording, cache state badge, masthead breadcrumb, when deleteing resources check for namespaces

Update docs - fix delete repo resource - default cache state

Trim image whitespace - populate extensionUrl

Add experimental badge
2023-06-02 08:28:47 -04:00
Jordon Leach 678e7db7ea
Fix publish script to properly check for gh-pages branch (#8781)
Bump shell version 0.3.7
2023-05-04 10:21:25 +01:00
codyrancher 2723213c44 Adding a descriptive error message to the serve-pkgs script
https://github.com/rancher/dashboard/issues/8744
2023-05-01 19:54:27 +02:00
Jordon Leach c1c340bc53
Update extensions publish workflow for assets in gh-pages branch (#8618)
* Update extensions workflow to move assets into gh-pages branch

Fix gh-pages check

* Move bundle execution - add default basename and ext version

* Fix basename op

* PR changes
2023-04-26 08:39:26 -04:00
Jordon Leach 2d5e1c32ee
Add github workflow option to creator pkg (#8318)
* Add github workflow option to creator pkg

Add js-yaml to creator pkg dependencies

Update init to move workflow file into root app dir

Split build-extension workflow jobs - add tmp directory step in publish script

Fix issues with non-existent workflows - add some docs

Fix pkg and app versions

add yarn.lock and ignore

Update workflow to use @rancher/shell publish script

Decouple the image build from the publish script - update docs

Remove implies for repo and branch options

Update advanced.md

Change type folder generation from i18n to l10n

Remove mention of tmp dir in clean-up section

* Remove bundle registry_org conditional
2023-04-03 15:44:16 -04:00
Cody Jackson bbb7eebc90 Removing nuxt 2023-03-03 11:49:26 +00:00
Neil MacDougall 6537360006
Extensions: Add publish script to shell (#8198)
* Add publish script to shell

* Fix wrong path
2023-02-21 20:06:48 +00:00
Neil MacDougall f69dcff49d
Ensure build fails when it fails! (#8201) 2023-02-17 17:09:29 +00:00
Neil MacDougall b73940b7e3 Need to build after yarn install 2022-12-01 16:59:08 +00:00
Neil MacDougall 7bac916f96 Fix test plugins script to avoid version issues with rancher components lib 2022-12-01 16:51:11 +00:00
Neil MacDougall 4abc94a940
Fix plugin pkg tsconfig (#6930)
* Fix pkg tsconfig

* Ensure test package is removed

* Fix package versions

* Add update package and refine typescript configuration

* Fix lint issues

* Fix issues with creators

* Install dependencies

* Fix e2e

* Include components for standalone app build

* Fix issue with yarn linking shell

* Fix for yarn linking

* Fix for lstat on non-existing file

* Fix lint issue when running with yarn link

* Update TextAreaAutoGrow.vue

* Fix test script build

* Fix test script issue

* Fix script on mac
2022-11-24 10:03:42 +00:00
Neil MacDougall bd1a8abd0a
Fix shell package dependencies (#7070)
* Fix shell package dependencies

* Revert version number change
2022-10-04 12:02:45 +01:00
Neil MacDougall 2ebc0d89b2
Add support for building and serving non-minified plugins (#6887) 2022-09-27 10:05:38 +01:00
Phillip Rak dc76e9e074 Add registry to publish commands
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
2022-09-16 13:33:54 -07:00
Richard Cox 25cae83780 Fix drone-build-pkg script for `master` branch
- Ensure that we correctly source for github env vars
2022-09-12 19:19:28 +01:00
Richard Cox 68eb668406 Changes following review 2022-09-12 13:40:12 +01:00
Richard Cox 20ee37df8d More fixes 2022-09-12 09:57:03 +01:00
Richard Cox 15b71abef2 Fixes 2022-09-12 09:46:43 +01:00
Richard Cox df3857939a Build harvester plugin 2022-09-12 09:46:43 +01:00
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
Neil MacDougall 0eacd47718
Ensure we use a version number (#6792) 2022-09-01 14:45:59 +01:00
Neil MacDougall 8b02a3fbf7 Fix plugin check script 2022-09-01 13:57:07 +01:00
Neil MacDougall c614af2173
Plugins fixes and check GitHub action (#6370)
* Plugins fixes and check GitHub action

* Update check-plugins.yaml

* Update check-plugins.yaml

* Debug script

* Debug script

* Make sure verdaccio check does not fail script

* Allow errors when checking

* Fixes for CI

* Fix directory cleanup

* Debug

* Add yarn install for in-tree check

* Fix lint issues
2022-07-20 13:07:38 +01:00
n313893254 c0439699b0 Fix rancher-component does not pack 2022-07-05 17:22:08 +08: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
Neil MacDougall bc86fbed99
Fix yarn install with @rancher/shell (#6013)
* Fix yarn install with rancher/shell

* Fix issues with standalone shell

* Fix import of code not required
2022-05-24 15:50:13 +01:00
Neil MacDougall dfdcf0505a
Update package versions and update publishing script (#5956) 2022-05-17 11:55:20 +01:00
Richard Cox 3a04cf7b1a Plugins: Initial codebase refactor and plugin support (#4779)
* 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

Co-authored-by: Richard Cox <richard.cox@suse.com>
# Conflicts:
#	components/nav/Header.vue
#	nuxt.config.js
#	package.json
#	yarn.lock
2022-05-10 10:00:39 +01:00