Commit Graph

72 Commits

Author SHA1 Message Date
yonasberhe23 2c18619932
ui automation: update workflow: create standard user, add tags to tests (#9029)
* add standard user to workflow

* update create user logic and added cypress-grep plugin

* added admin and standard user tags to tests, updated workflow in test.yaml

* update workflow file and added adminUser tag to setup

---------

Co-authored-by: Yonas Berhe <yberhe@Yonass-MacBook-Pro.local>
2023-07-04 11:17:24 -07:00
Richard Cox a3f17e3f6d Use the latest rancher/ui build in e2e tests
- given we now serve the (built) dashboard files we set CATTLE_UI_OFFLINE_PREFERRED=true
- this means the embedded rancher/ui is used
- so now we do something similar to ensure the latest rancher/ui is used
2023-06-27 11:16:54 +01:00
Giuseppe Leo 01eeb0548f
Add recommended lint rules globally (#8997)
* Update configuration

* Create default config for eslint

* Restore plugin:vue/recommended

* Add exceptions and overrides

* Correct manually remaining issues

* Adding further picked exceptions groupped up

* Fix or disable specific cases manually and singularly

* Add naming linting exception

* Remove unused variable in component

* Move rules to default

* Autocorrect rancher/components linting issues

* Configure VSCode to use multiple files, to display linting for rancher components

* Disable jest lint hook restriction for string list component

* Autofix
2023-06-23 17:02:55 +02:00
Neil MacDougall 226ed30e39
e2e: Add built UI to docker container rather than run a node process (#9063)
* e2e: Add built UI to docker container rather than run a node process

* Fix to ensure docker:local:stop tried to both clean and remove cypress container

* Check dist folder is correct

* Build U first

* Remove debug, wait for ui

* Change cluster test

* Tweak test

* Improve resilience of cluster manager delete tests

* Fix lint

* Try and fix delete tests

* Remove unused var

* Remove unused baseUrl

* Fix cluster delete tests

* Address lint issues

* Fix api keys test
2023-06-19 09:08:19 +01:00
Richard Cox cb9b6879a5 Two RC related build fixes
- Apply build-hosted resource base ending `/` (https://github.com/rancher/dashboard/pull/8401)
- Ensure resource links in index.html match that of previous releases
  - These all started with `/dashboard` and had `<base href='/dashboard/'`
  - Note - base is still missing (everything still seems to work)
  - Note - base is ignored for href's starting `/` anyway
  - It's assumed nuxt added this resource prefix via nuxt.config.js build publicPath
2023-06-01 09:36:18 +01:00
Cody Jackson 1c660b97ca Add missing '/' to the ROUTER_BASE in build-hosted
The missing ending '/' was causing the router to parse routes incorrectly
2023-03-10 09:39:43 -07: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
Alexandre Alves 3bd4ccc6c2
Add rancher dashboard version to "About" page (#7516)
* display dashboard version on about page

* add space between commit branch and commit hash

* address PR comments

Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
2022-12-14 09:48:46 +00:00
Neil MacDougall 4ba79f761c
Move storybook (#7611)
* Improve Storybook welcome/landing page

* Move storybook

* Tidy up build scripts and docs

* Update yarn.lock

* Update yarn.lock

* Address PR feedback

* Fix issue with running after 1st run

* Add back top-level build-storybook target
2022-12-07 18:07:48 +00:00
Jordon Leach 6d6c2e084e
Add script to update docker image (#7343)
* Add script to update docker image

* Change docker run output to log file - update docs
2022-11-07 16:04:54 -05:00
Neil MacDougall 6481644579
Customisable links support (#7131)
* Implement Rancher Prime changes.

* Implement Rancher Prime endpoint.

* squash

* Implement Rancher Prime endpoint.

* squash

* fix proxy.

* Fix support page links.

* merge master.

* Fix nuxt config.

* test without /rancherversion

* Fix links.

* Merge tify up - rename back to hasSupport for less change

* Fix version metadata fetching

* Allow links to be edited

* Fix lint, revert changed to KeyValue

* Remove unused code

* Fix typo

* Add support for linkOptions

* Add name to component

* File an issue link should go to choose page

* Fix typo

* Fix issue with legacy settings

* Address PR feedback

* Remove todo that was done

Co-authored-by: Shavindra <shavindra@users.noreply.github.com>
2022-10-11 14:11:22 +01:00
Giuseppe Leo f6bc463f6c
Revert use of eval while executing E2E (#7057) 2022-10-03 13:19:35 +01:00
Giuseppe Leo 1c6b5ac666
Generate coverage value for both unit and E2E tests (#6690)
* Correct Jest coverage configuration

* Add coverage upload

* Exclude operationsl scripts from linting

* Rephrase title based on pull request title, run and attempt, with fallback for commits

* Add instrumentation for E2E coverage report

* Add merge logic to the coverage files

* Add instrumentalization for Cypress to generate coverage for E2E

* Download artifacts before merge coverage in CI

* Merge fix

* Copy coverage files before artifact upload

* Add summary after running tests

* Change restriction rules about coverage for pull_request and push

* Add documentation for the coverage

* Correct test documentation folder restructuring

* Add inclusion list for Cypress coverage; add scripts as exclusion

* Extend ignored path to be parsed for Jest to improve performances

* Workflow cleanup

* Checkout current branch head on test runs

* Submit separated coverage with different flags
2022-09-30 10:36:36 +02:00
Richard Cox ecefcc98cb Enable embedding of legacy harvester plugin
- The harvester plugin to support legacy harvester clusters is now available
- Update the env var to ensure it's included in the dashboard
- Update build-embedded script with a fix
2022-09-13 09:57:14 +01:00
Richard Cox c4fbedc41f Update dashboard build process to embed a specific harvester plugin
- Currently disabled, once the package is available it will be uncommented
2022-09-07 17:08:34 +01:00
Richard Cox 601dd0ff22 Merge remote-tracking branch 'upstream/master' into test-pluginize-rc-2 2022-09-01 19:15:07 +01:00
Neil MacDougall ce982231bc
Standalone script - allow refresh on dynamic pages (#6738)
* Standalone script - allow refersh on dynamic pages

* Fix comment typo
2022-09-01 14:24:14 +01:00
Richard Cox b3f13843dd Merge remote-tracking branch 'origin/harvester-plugin-rebased' into test-pluginize-rc-2 2022-09-01 13:57:18 +01:00
Nancy Butler eb5de29744 generateDynamicTypeImport hyphenated dirs
rename cloud_credential and machine_config back to cloud-credential and machine-config
2022-08-19 12:21:24 -07:00
Nancy Butler a88ea801c9 routing maybe 2022-08-19 12:18:48 -07:00
Richard Cox f49c6bd006 Fix package script and visibility of incremental loading indicator
Script Changes
- fixed `require` errors
- ensure dashboard ignores output of scripts (useful for local dev)

Dashboard Changes
- only show the resource loading indicator if incremental loading is enabled
2022-08-10 12:52:28 +01:00
Giuseppe Leo 194d9a7e03
E2E: Create dashboard access for reviewing tests results (#6576)
* Add sorry-cypress library, commands and configuration

* Replace e2e test run ID to be used for the dashboard with title, id and number run

* Add missing instruction for the dashboard

* Set default browser to Chrome

* Updated env template
2022-08-04 17:10:02 +02:00
Giuseppe Leo 5d4e32e855
Create unit test and linting jobs with GitHub Actions (#6562)
* Add GitHub Actions on push to run lint and unit test

* Store unit test coverage as artifact

* Correct unit tests coverage path collection

* Add i18n linting on CI

* Correct rancher-component path

* Remove pull request trigger from Drone

* Fix linting from master

Co-authored-by: Richard Cox <richard.cox@suse.com>
2022-08-01 16:25:20 +01:00
Richard Cox a2e90f9610 Tweaks and fixes
- Remove unused mimeTypes (and eslint file)
- add some build output dirs to gitignore
- fix serve of html files (content was in ui/dist instead of ui)
2022-08-01 12:17:38 +01:00
Neil MacDougall af24fa2b68
Add missing socket 2022-07-30 17:38:18 +01:00
Neil MacDougall 75c726a763 Script to create standalone build for testing 2022-07-30 15:09:00 +01:00
Richard Cox 22e4d3479f WIP build process changes & comment tidy up 2022-07-14 14:00:55 +01:00
Neil MacDougall 26f004407e
Add support for linting l10n files (#6360)
* Add support for linting l10n files

* Address PR feedback
2022-07-13 15:56:20 +01:00
Nancy Butler 6b18d802ad generateDynamicTypeImport hyphenated dirs
rename cloud_credential and machine_config back to cloud-credential and machine-config
2022-07-12 10:59:34 -07:00
Nancy Butler 4dfeb7c291 routing maybe 2022-07-12 10:59:32 -07:00
Sebastiaan van Steenis d60c0a917f
Use correct inputs when creating PR in rancher 2022-06-09 18:34:39 +02:00
Richard Cox dbc6d123d1
Merge pull request #5849 from superseb/add_dispatch_2ndtry
Add dispatch step to update tag in rancher/rancher
2022-05-24 10:32:53 +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
Sebastiaan van Steenis f6f5d1c711
Add dispatch step to update tag in rancher/rancher 2022-05-05 21:55:16 +02:00
Nancy ae851694b8
Revert "Add dispatch step to update tag in rancher/rancher" 2022-05-05 12:28:24 -07:00
Sebastiaan van Steenis fd464c1685
Add dispatch step to update tag in rancher/rancher 2022-05-03 16:46:42 +02:00
Nancy 20976a70d4
Unit test jest (#3405)
* initial setup; unitinput simple example tests

* add coverage report

* testing info in docs

* rm unused babel config options

fix jest typescript

update unitinput unit tests

* Correct tsconfig Jest/Cypress conflicts; update libraries version; remove unnecessary Mocha/Chai

* Update unit input tests

* Ignore new rules from eslint

* Add local unit test script; Disable unit test coverage

* Add babel plugin definitions to avoid warning spam on build

* Pin @babel/preset-env to avoid issues with missing utils;  Merge yarn config from master; Moved packages to devDependencies as not required after build

* Remove file exclusion from editor settings

* Add Lodash types

* Add types to array utility

* Update ESlint rules to allow overload types declarations

* Create Jest tests from existing Ava ones

* Add Jest launcher for debugging

* Update Drone test script runner with CI version

* Remove Ava libraries, scripts and configuration

* Add Jest related linting rules

* Move tests within the related code path

Co-authored-by: cnotv <giuseppe.leo@suse.com>
2022-03-23 11:35:26 +01:00
Josh Soref 2256ee3acf
Spelling (#4994)
* spelling: accommodate

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: additional

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: address

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: array

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: async

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: attributes

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: automatically

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: available

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: awesomeness

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: because

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: behaviour

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: bootstrapping

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: calculated

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: callback

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: codemirror

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: config

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: configurable

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: constraints

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: default

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: deux

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: different

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: dissimilar

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: ensure

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: evaluate

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: example

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: existence

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: falsy

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: getter

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: global

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: grafana

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: image

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: integer

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: manifest

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: microservices

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: milli

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: mismatch

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: modifier

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: namespace

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: navigation

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: nullable

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: occurred

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: package

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: param

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: permissions

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: portion

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: potentially

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: powershell

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: recipient

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: records

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: representation

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: request

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: required

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: returns

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: separated

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: should

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: software

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: substitute

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: support

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: their

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: unknown

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: upfront

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: upgrade

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: useful

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: validator

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-02-11 10:09:54 +00:00
Neil MacDougall 389b337048 Fix Storybook build 2021-11-24 10:57:09 +00:00
Neil MacDougall afaa6beab7 Fix sass issue 2021-11-04 14:30:10 +00:00
Neil MacDougall f081a365a6 Initial storybook support 2021-11-04 14:29:29 +00:00
Neil MacDougall e4b9c1e18c Initial Storybook support 2021-11-04 14:27:28 +00:00
Neil MacDougall e100814544 Helper script for running backend in docker 2021-07-19 15:28:33 +01:00
Vincent Fiduccia bbefcaf1b6
rm -rf Rio 2021-07-02 02:10:02 -04:00
Vincent Fiduccia 486aa7fa4e
Upload build-gate to use a "version" of jq that will exist 2021-04-02 12:38:38 -07:00
Richard Cox 52c164feba Changes following review 2021-03-12 16:21:49 +00:00
Richard Cox 903e364d3f Check response code and rate limiting when fetching latest commit
- if the request to github looks like it failed due to rate limiting check and ignore failure if so
- compromised solution balanced between complexity/lines of code and safety
- alternatives... always check rate limiting up front, check for `X-RateLimit-Remaining` in response header
2021-03-02 11:04:05 +00:00
Richard Cox 65cff46e08 Improve drone build
- Reduce the impact of concurrent drone builds
- hosted and embedded builds will not get uploaded if they're not from head of current branch
- docker builds however still might, there's no intermediate step between build and upload to docker
2021-03-01 14:51:45 +00:00
Vincent Fiduccia 0ad9542218
Strip nested static index.html files out of embedded builds 2021-02-10 17:44:23 -07:00