@rancher/shell 0.3.21 → 0.3.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/assets/translations/en-us.yaml +4 -0
  2. package/assets/translations/zh-hans.yaml +8 -1
  3. package/cloud-credential/__tests__/azure.test.ts +53 -0
  4. package/cloud-credential/azure.vue +6 -0
  5. package/components/GrowlManager.vue +33 -30
  6. package/components/form/ResourceQuota/ProjectRow.vue +38 -15
  7. package/components/formatter/ClusterProvider.vue +9 -3
  8. package/components/formatter/__tests__/ClusterProvider.test.ts +5 -1
  9. package/components/nav/Header.vue +1 -0
  10. package/config/settings.ts +59 -2
  11. package/config/types.js +2 -0
  12. package/creators/pkg/files/.github/workflows/build-extension-catalog.yml +28 -0
  13. package/creators/pkg/files/.github/workflows/build-extension-charts.yml +26 -0
  14. package/creators/pkg/init +63 -4
  15. package/detail/provisioning.cattle.io.cluster.vue +4 -2
  16. package/edit/fleet.cattle.io.gitrepo.vue +1 -0
  17. package/edit/provisioning.cattle.io.cluster/rke2.vue +4 -4
  18. package/mixins/__tests__/chart.test.ts +40 -0
  19. package/mixins/chart.js +5 -0
  20. package/models/catalog.cattle.io.clusterrepo.js +6 -2
  21. package/models/fleet.cattle.io.cluster.js +10 -2
  22. package/package.json +1 -1
  23. package/pages/c/_cluster/gatekeeper/index.vue +10 -1
  24. package/plugins/steve/__tests__/header-warnings.spec.ts +238 -0
  25. package/plugins/steve/actions.js +4 -23
  26. package/plugins/steve/header-warnings.ts +91 -0
  27. package/promptRemove/management.cattle.io.project.vue +9 -6
  28. package/scripts/extension/parse-tag-name +30 -0
  29. package/types/shell/index.d.ts +1 -0
  30. package/utils/settings.ts +2 -17
  31. package/vue-config-helper.js +135 -0
  32. package/vue.config.js +23 -139
  33. package/yarn-error.log +200 -0
  34. package/creators/pkg/files/.github/workflows/build-container.yml +0 -64
  35. package/creators/pkg/files/.github/workflows/build-extension.yml +0 -110
@@ -0,0 +1,135 @@
1
+ const dev = (process.env.NODE_ENV !== 'production');
2
+ const devPorts = dev || process.env.DEV_PORTS === 'true';
3
+ const prime = process.env.PRIME;
4
+
5
+ let api = process.env.API || 'http://localhost:8989';
6
+
7
+ if ( !api.startsWith('http') ) {
8
+ api = `https://${ api }`;
9
+ }
10
+
11
+ // ===============================================================================================
12
+ // Functions for the request proxying used in dev
13
+ // ===============================================================================================
14
+
15
+ function proxyMetaOpts(target) {
16
+ return {
17
+ target,
18
+ followRedirects: true,
19
+ secure: !dev,
20
+ changeOrigin: true,
21
+ onProxyReq,
22
+ onProxyReqWs,
23
+ onError,
24
+ onProxyRes,
25
+ };
26
+ }
27
+
28
+ function proxyOpts(target) {
29
+ return {
30
+ target,
31
+ secure: !devPorts,
32
+ changeOrigin: true,
33
+ onProxyReq,
34
+ onProxyReqWs,
35
+ onError,
36
+ onProxyRes
37
+ };
38
+ }
39
+
40
+ // Intercept the /rancherversion API call wnad modify the 'RancherPrime' value
41
+ // if configured to do so by the environment variable PRIME
42
+ function proxyPrimeOpts(target) {
43
+ const opts = proxyOpts(target);
44
+
45
+ // Don't intercept if the PRIME environment variable is not set
46
+ if (!prime?.length) {
47
+ return opts;
48
+ }
49
+
50
+ opts.onProxyRes = (proxyRes, req, res) => {
51
+ const _end = res.end;
52
+ let body = '';
53
+
54
+ proxyRes.on( 'data', (data) => {
55
+ data = data.toString('utf-8');
56
+ body += data;
57
+ });
58
+
59
+ res.write = () => {};
60
+
61
+ res.end = () => {
62
+ let output = body;
63
+
64
+ try {
65
+ const out = JSON.parse(body);
66
+
67
+ out.RancherPrime = prime;
68
+ output = JSON.stringify(out);
69
+ } catch (err) {}
70
+
71
+ res.setHeader('content-length', output.length );
72
+ res.setHeader('content-type', 'application/json' );
73
+ res.setHeader('transfer-encoding', '');
74
+ res.setHeader('cache-control', 'no-cache');
75
+ res.writeHead(proxyRes.statusCode);
76
+ _end.apply(res, [output]);
77
+ };
78
+ };
79
+
80
+ return opts;
81
+ }
82
+
83
+ function onProxyRes(proxyRes, req, res) {
84
+ if (devPorts) {
85
+ proxyRes.headers['X-Frame-Options'] = 'ALLOWALL';
86
+ }
87
+ }
88
+
89
+ function proxyWsOpts(target) {
90
+ return {
91
+ ...proxyOpts(target),
92
+ ws: true,
93
+ changeOrigin: true,
94
+ };
95
+ }
96
+
97
+ function onProxyReq(proxyReq, req) {
98
+ if (!(proxyReq._currentRequest && proxyReq._currentRequest._headerSent)) {
99
+ proxyReq.setHeader('x-api-host', req.headers['host']);
100
+ proxyReq.setHeader('x-forwarded-proto', 'https');
101
+ }
102
+ }
103
+
104
+ function onProxyReqWs(proxyReq, req, socket, options, head) {
105
+ req.headers.origin = options.target.href;
106
+ proxyReq.setHeader('origin', options.target.href);
107
+ proxyReq.setHeader('x-api-host', req.headers['host']);
108
+ proxyReq.setHeader('x-forwarded-proto', 'https');
109
+ // console.log(proxyReq.getHeaders());
110
+
111
+ socket.on('error', (err) => {
112
+ console.error('Proxy WS Error:', err); // eslint-disable-line no-console
113
+ });
114
+ }
115
+
116
+ function onError(err, req, res) {
117
+ res.statusCode = 598;
118
+ console.error('Proxy Error:', err); // eslint-disable-line no-console
119
+ res.write(JSON.stringify(err));
120
+ }
121
+
122
+ module.exports = {
123
+ dev,
124
+ devPorts,
125
+ prime,
126
+ api,
127
+ proxyMetaOpts,
128
+ proxyOpts,
129
+ proxyPrimeOpts,
130
+ onProxyRes,
131
+ proxyWsOpts,
132
+ onProxyReq,
133
+ onProxyReqWs,
134
+ onError
135
+ };
package/vue.config.js CHANGED
@@ -5,6 +5,7 @@ const webpack = require('webpack');
5
5
  const { generateDynamicTypeImport } = require('./pkg/auto-import');
6
6
  const CopyWebpackPlugin = require('copy-webpack-plugin');
7
7
  const serverMiddlewares = require('./server/server-middleware.js');
8
+ const configHelper = require('./vue-config-helper.js');
8
9
 
9
10
  // Suppress info level logging messages from http-proxy-middleware
10
11
  // This hides all of the "[HPM Proxy created] ..." messages
@@ -20,24 +21,18 @@ console.info = oldInfoLogger; // eslint-disable-line no-console
20
21
  // const { STANDARD } = require('./config/private-label');
21
22
  const STANDARD = 1;
22
23
 
23
- const dev = (process.env.NODE_ENV !== 'production');
24
- const devPorts = dev || process.env.DEV_PORTS === 'true';
24
+ const dev = configHelper.dev;
25
+ const devPorts = configHelper.devPorts;
25
26
 
26
27
  // human readable version used on rancher dashboard about page
27
28
  const dashboardVersion = process.env.DASHBOARD_VERSION;
28
29
 
29
- const prime = process.env.PRIME;
30
-
31
30
  const pl = process.env.PL || STANDARD;
32
31
  const commit = process.env.COMMIT || 'head';
33
32
  const perfTest = (process.env.PERF_TEST === 'true'); // Enable performance testing when in dev
34
33
  const instrumentCode = (process.env.TEST_INSTRUMENT === 'true'); // Instrument code for code coverage in e2e tests
35
34
 
36
- let api = process.env.API || 'http://localhost:8989';
37
-
38
- if ( !api.startsWith('http') ) {
39
- api = `https://${ api }`;
40
- }
35
+ const api = configHelper.api;
41
36
  // ===============================================================================================
42
37
  // Nuxt configuration
43
38
  // ===============================================================================================
@@ -276,26 +271,26 @@ module.exports = function(dir, _appConfig) {
276
271
  console.log(`API: '${ api }'. Env: '${ rancherEnv }'`); // eslint-disable-line no-console
277
272
  const proxy = {
278
273
  ...appConfig.proxies,
279
- '/k8s': proxyWsOpts(api), // Straight to a remote cluster (/k8s/clusters/<id>/)
280
- '/pp': proxyWsOpts(api), // For (epinio) standalone API
281
- '/api': proxyWsOpts(api), // Management k8s API
282
- '/apis': proxyWsOpts(api), // Management k8s API
283
- '/v1': proxyWsOpts(api), // Management Steve API
284
- '/v3': proxyWsOpts(api), // Rancher API
285
- '/v3-public': proxyOpts(api), // Rancher Unauthed API
286
- '/api-ui': proxyOpts(api), // Browser API UI
287
- '/meta': proxyMetaOpts(api), // Browser API UI
288
- '/v1-*': proxyOpts(api), // SAML, KDM, etc
289
- '/rancherversion': proxyPrimeOpts(api), // Rancher version endpoint
274
+ '/k8s': configHelper.proxyWsOpts(api), // Straight to a remote cluster (/k8s/clusters/<id>/)
275
+ '/pp': configHelper.proxyWsOpts(api), // For (epinio) standalone API
276
+ '/api': configHelper.proxyWsOpts(api), // Management k8s API
277
+ '/apis': configHelper.proxyWsOpts(api), // Management k8s API
278
+ '/v1': configHelper.proxyWsOpts(api), // Management Steve API
279
+ '/v3': configHelper.proxyWsOpts(api), // Rancher API
280
+ '/v3-public': configHelper.proxyOpts(api), // Rancher Unauthed API
281
+ '/api-ui': configHelper.proxyOpts(api), // Browser API UI
282
+ '/meta': configHelper.proxyMetaOpts(api), // Browser API UI
283
+ '/v1-*': configHelper.proxyOpts(api), // SAML, KDM, etc
284
+ '/rancherversion': configHelper.proxyPrimeOpts(api), // Rancher version endpoint
290
285
  // These are for Ember embedding
291
- '/c/*/edit': proxyOpts('https://127.0.0.1:8000'), // Can't proxy all of /c because that's used by Vue too
292
- '/k/': proxyOpts('https://127.0.0.1:8000'),
293
- '/g/': proxyOpts('https://127.0.0.1:8000'),
294
- '/n/': proxyOpts('https://127.0.0.1:8000'),
295
- '/p/': proxyOpts('https://127.0.0.1:8000'),
296
- '/assets': proxyOpts('https://127.0.0.1:8000'),
297
- '/translations': proxyOpts('https://127.0.0.1:8000'),
298
- '/engines-dist': proxyOpts('https://127.0.0.1:8000'),
286
+ '/c/*/edit': configHelper.proxyOpts('https://127.0.0.1:8000'), // Can't proxy all of /c because that's used by Vue too
287
+ '/k/': configHelper.proxyOpts('https://127.0.0.1:8000'),
288
+ '/g/': configHelper.proxyOpts('https://127.0.0.1:8000'),
289
+ '/n/': configHelper.proxyOpts('https://127.0.0.1:8000'),
290
+ '/p/': configHelper.proxyOpts('https://127.0.0.1:8000'),
291
+ '/assets': configHelper.proxyOpts('https://127.0.0.1:8000'),
292
+ '/translations': configHelper.proxyOpts('https://127.0.0.1:8000'),
293
+ '/engines-dist': configHelper.proxyOpts('https://127.0.0.1:8000'),
299
294
  };
300
295
 
301
296
  const config = {
@@ -570,114 +565,3 @@ module.exports = function(dir, _appConfig) {
570
565
 
571
566
  return config;
572
567
  };
573
-
574
- // ===============================================================================================
575
- // Functions for the request proxying used in dev
576
- // ===============================================================================================
577
-
578
- function proxyMetaOpts(target) {
579
- return {
580
- target,
581
- followRedirects: true,
582
- secure: !dev,
583
- changeOrigin: true,
584
- onProxyReq,
585
- onProxyReqWs,
586
- onError,
587
- onProxyRes,
588
- };
589
- }
590
-
591
- function proxyOpts(target) {
592
- return {
593
- target,
594
- secure: !devPorts,
595
- changeOrigin: true,
596
- onProxyReq,
597
- onProxyReqWs,
598
- onError,
599
- onProxyRes
600
- };
601
- }
602
-
603
- // Intercept the /rancherversion API call wnad modify the 'RancherPrime' value
604
- // if configured to do so by the environment variable PRIME
605
- function proxyPrimeOpts(target) {
606
- const opts = proxyOpts(target);
607
-
608
- // Don't intercept if the PRIME environment variable is not set
609
- if (!prime?.length) {
610
- return opts;
611
- }
612
-
613
- opts.onProxyRes = (proxyRes, req, res) => {
614
- const _end = res.end;
615
- let body = '';
616
-
617
- proxyRes.on( 'data', (data) => {
618
- data = data.toString('utf-8');
619
- body += data;
620
- });
621
-
622
- res.write = () => {};
623
-
624
- res.end = () => {
625
- let output = body;
626
-
627
- try {
628
- const out = JSON.parse(body);
629
-
630
- out.RancherPrime = prime;
631
- output = JSON.stringify(out);
632
- } catch (err) {}
633
-
634
- res.setHeader('content-length', output.length );
635
- res.setHeader('content-type', 'application/json' );
636
- res.setHeader('transfer-encoding', '');
637
- res.setHeader('cache-control', 'no-cache');
638
- res.writeHead(proxyRes.statusCode);
639
- _end.apply(res, [output]);
640
- };
641
- };
642
-
643
- return opts;
644
- }
645
-
646
- function onProxyRes(proxyRes, req, res) {
647
- if (devPorts) {
648
- proxyRes.headers['X-Frame-Options'] = 'ALLOWALL';
649
- }
650
- }
651
-
652
- function proxyWsOpts(target) {
653
- return {
654
- ...proxyOpts(target),
655
- ws: true,
656
- changeOrigin: true,
657
- };
658
- }
659
-
660
- function onProxyReq(proxyReq, req) {
661
- if (!(proxyReq._currentRequest && proxyReq._currentRequest._headerSent)) {
662
- proxyReq.setHeader('x-api-host', req.headers['host']);
663
- proxyReq.setHeader('x-forwarded-proto', 'https');
664
- }
665
- }
666
-
667
- function onProxyReqWs(proxyReq, req, socket, options, head) {
668
- req.headers.origin = options.target.href;
669
- proxyReq.setHeader('origin', options.target.href);
670
- proxyReq.setHeader('x-api-host', req.headers['host']);
671
- proxyReq.setHeader('x-forwarded-proto', 'https');
672
- // console.log(proxyReq.getHeaders());
673
-
674
- socket.on('error', (err) => {
675
- console.error('Proxy WS Error:', err); // eslint-disable-line no-console
676
- });
677
- }
678
-
679
- function onError(err, req, res) {
680
- res.statusCode = 598;
681
- console.error('Proxy Error:', err); // eslint-disable-line no-console
682
- res.write(JSON.stringify(err));
683
- }
package/yarn-error.log ADDED
@@ -0,0 +1,200 @@
1
+ Arguments:
2
+ /Users/aalves/.nvm/versions/node/v16.19.1/bin/node /Users/aalves/.nvm/versions/node/v16.19.1/bin/yarn publish . --new-version 0.3.22 --no-git-tag-version --access public
3
+
4
+ PATH:
5
+ /Users/aalves/.rd/bin:/Users/aalves/.nvm/versions/node/v16.19.1/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/aalves/.rd/bin:/Users/aalves/.nvm/versions/node/v16.19.1/bin:/opt/homebrew/bin:/opt/homebrew/sbin
6
+
7
+ Yarn version:
8
+ 1.22.19
9
+
10
+ Node version:
11
+ 16.19.1
12
+
13
+ Platform:
14
+ darwin arm64
15
+
16
+ Trace:
17
+ Error: https://registry.yarnpkg.com/-/user/org.couchdb.user:aalves08: failed to authenticate: Could not authenticate aalves08: bad password
18
+ at Request.params.callback [as _callback] (/Users/aalves/.nvm/versions/node/v16.19.1/lib/node_modules/yarn/lib/cli.js:66145:18)
19
+ at Request.self.callback (/Users/aalves/.nvm/versions/node/v16.19.1/lib/node_modules/yarn/lib/cli.js:140890:22)
20
+ at Request.emit (node:events:513:28)
21
+ at Request.<anonymous> (/Users/aalves/.nvm/versions/node/v16.19.1/lib/node_modules/yarn/lib/cli.js:141862:10)
22
+ at Request.emit (node:events:513:28)
23
+ at IncomingMessage.<anonymous> (/Users/aalves/.nvm/versions/node/v16.19.1/lib/node_modules/yarn/lib/cli.js:141784:12)
24
+ at Object.onceWrapper (node:events:627:28)
25
+ at IncomingMessage.emit (node:events:525:35)
26
+ at endReadableNT (node:internal/streams/readable:1358:12)
27
+ at processTicksAndRejections (node:internal/process/task_queues:83:21)
28
+
29
+ npm manifest:
30
+ {
31
+ "name": "@rancher/shell",
32
+ "version": "0.3.22",
33
+ "description": "Rancher Dashboard Shell",
34
+ "repository": "https://github.com/rancherlabs/dashboard",
35
+ "license": "Apache-2.0",
36
+ "author": "SUSE",
37
+ "private": false,
38
+ "engines": {
39
+ "node": ">=12"
40
+ },
41
+ "files": [
42
+ "**/*"
43
+ ],
44
+ "scripts": {
45
+ "clean": "./scripts/clean",
46
+ "lint": "./node_modules/.bin/eslint --max-warnings 0 --ext .ts,.js,.vue .",
47
+ "test": "./node_modules/.bin/nyc ava --serial --verbose",
48
+ "dev": "./node_modules/.bin/vue-cli-service dev",
49
+ "docker-dev": "docker run --rm --name dashboard-dev -p 8005:8005 -e API=$API -v $(pwd):/src -v dashboard_node:/src/node_modules rancher/dashboard:dev",
50
+ "build": "./node_modules/.bin/vue-cli-service build",
51
+ "analyze": "./node_modules/.bin/vue-cli-service build --report",
52
+ "start": "./node_modules/.bin/vue-cli-service start",
53
+ "cy:run": "cypress run",
54
+ "cy:open": "cypress open",
55
+ "e2e:pre": "NODE_ENV=dev yarn build",
56
+ "e2e:run": "NODE_ENV=dev START_SERVER_AND_TEST_INSECURE=1 start-server-and-test start https://localhost:8005/ cy:run",
57
+ "e2e:dev": "start-server-and-test dev https://localhost:8005 cy:open"
58
+ },
59
+ "dependencies": {
60
+ "@aws-sdk/client-ec2": "3.1.0",
61
+ "@aws-sdk/client-eks": "3.1.0",
62
+ "@aws-sdk/client-kms": "3.8.1",
63
+ "@babel/plugin-proposal-optional-chaining": "7.14.5",
64
+ "@babel/plugin-proposal-private-property-in-object": "7.14.5",
65
+ "@babel/preset-typescript": "7.16.7",
66
+ "@innologica/vue-dropdown-menu": "0.1.3",
67
+ "@novnc/novnc": "1.2.0",
68
+ "@nuxt/types": "2.14.6",
69
+ "@nuxt/typescript-build": "2.1.0",
70
+ "@nuxtjs/axios": "5.12.0",
71
+ "@nuxtjs/eslint-config-typescript": "6.0.1",
72
+ "@nuxtjs/webpack-profile": "0.1.0",
73
+ "@popperjs/core": "2.4.4",
74
+ "@types/node": "16.4.3",
75
+ "@typescript-eslint/eslint-plugin": "4.33.0",
76
+ "@typescript-eslint/parser": "4.33.0",
77
+ "@vue/cli-plugin-babel": "4.5.18",
78
+ "@vue/cli-plugin-typescript": "4.5.18",
79
+ "@vue/cli-service": "4.5.18",
80
+ "@vue/test-utils": "1.2.1",
81
+ "@vue/vue2-jest": "27.0.0",
82
+ "add": "2.0.6",
83
+ "ansi_up": "5.0.0",
84
+ "babel-eslint": "10.1.0",
85
+ "babel-plugin-module-resolver": "4.0.0",
86
+ "babel-preset-vue": "2.0.2",
87
+ "browser-env": "3.3.0",
88
+ "cookie": "0.5.0",
89
+ "cookie-universal-nuxt": "2.1.4",
90
+ "core-js": "3.21.1",
91
+ "cron-validator": "1.2.0",
92
+ "cronstrue": "1.95.0",
93
+ "cross-env": "6.0.3",
94
+ "css-loader": "6.7.3",
95
+ "csv-loader": "3.0.3",
96
+ "cypress": "10.3.1",
97
+ "d3": "7.3.0",
98
+ "d3-selection": "1.4.1",
99
+ "dagre-d3": "0.6.4",
100
+ "dayjs": "1.8.29",
101
+ "diff2html": "3.4.24",
102
+ "dompurify": "2.4.5",
103
+ "eslint": "7.32.0",
104
+ "eslint-config-standard": "16.0.3",
105
+ "eslint-import-resolver-node": "0.3.4",
106
+ "eslint-module-utils": "2.6.1",
107
+ "eslint-plugin-cypress": "2.12.1",
108
+ "eslint-plugin-import": "2.23.4",
109
+ "eslint-plugin-jest": "24.4.0",
110
+ "eslint-plugin-n": "15.2.0",
111
+ "eslint-plugin-vue": "9.10.0",
112
+ "event-target-shim": "5.0.1",
113
+ "express": "4.17.1",
114
+ "file-saver": "2.0.2",
115
+ "frontmatter-markdown-loader": "3.7.0",
116
+ "identicon.js": "2.3.3",
117
+ "intl-messageformat": "7.8.4",
118
+ "is-url": "1.2.4",
119
+ "jest": "27.5.1",
120
+ "jest-serializer-vue": "2.0.2",
121
+ "jexl": "2.2.2",
122
+ "jquery": "3.5.1",
123
+ "js-cookie": "2.2.1",
124
+ "js-yaml": "4.1.0",
125
+ "js-yaml-loader": "1.2.2",
126
+ "jsdiff": "1.1.1",
127
+ "jsdom-global": "3.0.2",
128
+ "jsonpath-plus": "6.0.1",
129
+ "jsrsasign": "10.5.25",
130
+ "jszip": "3.8.0",
131
+ "lodash": "4.17.21",
132
+ "marked": "4.0.17",
133
+ "nodemon": "2.0.22",
134
+ "nuxt": "2.15.8",
135
+ "nyc": "15.1.0",
136
+ "papaparse": "5.3.0",
137
+ "portal-vue": "2.1.7",
138
+ "rancher-icons": "rancher/icons#v2.0.16",
139
+ "require-extension-hooks": "0.3.3",
140
+ "require-extension-hooks-babel": "1.0.0",
141
+ "require-extension-hooks-vue": "3.0.0",
142
+ "sass": "1.51.0",
143
+ "sass-loader": "10.2.1",
144
+ "serve-static": "1.14.1",
145
+ "set-cookie-parser": "2.4.6",
146
+ "shell-quote": "1.7.3",
147
+ "sinon": "8.1.1",
148
+ "start-server-and-test": "1.13.1",
149
+ "style-loader": "1.2.1",
150
+ "ts-node": "8.10.2",
151
+ "typescript": "4.1.6",
152
+ "url-parse": "1.5.10",
153
+ "v-tooltip": "2.0.3",
154
+ "vue": "2.7.14",
155
+ "vue-clipboard2": "0.3.1",
156
+ "vue-codemirror": "4.0.6",
157
+ "vue-js-modal": "1.3.35",
158
+ "vue-resize": "0.4.5",
159
+ "vue-select": "3.18.3",
160
+ "vue-server-renderer": "2.7.14",
161
+ "vue-shortkey": "3.1.7",
162
+ "vue-template-compiler": "2.7.14",
163
+ "vue-virtual-scroll-list": "^2.3.4",
164
+ "vue2-transitions": "0.3.0",
165
+ "vuedraggable": "2.24.3",
166
+ "vuex": "3.6.2",
167
+ "webpack-bundle-analyzer": "4.5.0",
168
+ "webpack-virtual-modules": "0.4.3",
169
+ "xterm": "5.0.0",
170
+ "xterm-addon-fit": "0.6.0",
171
+ "xterm-addon-search": "0.10.0",
172
+ "xterm-addon-web-links": "0.7.0",
173
+ "xterm-addon-webgl": "0.13.0",
174
+ "worker-loader": "3.0.8",
175
+ "yarn": "1.22.18"
176
+ },
177
+ "resolutions": {
178
+ "ejs": "^3.1.7",
179
+ "json5": ">=2.2.2",
180
+ "d3-color": ">=3.1.0",
181
+ "glob-parent": ">=5.1.2",
182
+ "node-forge": ">=1.3.0",
183
+ "qs": ">=6.7.3",
184
+ "nth-check": ">=2.0.1",
185
+ "follow-redirects": ">=1.14.7",
186
+ "merge": ">=2.1.1"
187
+ },
188
+ "nyc": {
189
+ "extension": [
190
+ ".js",
191
+ ".vue"
192
+ ]
193
+ }
194
+ }
195
+
196
+ yarn manifest:
197
+ No manifest
198
+
199
+ Lockfile:
200
+ No lockfile
@@ -1,64 +0,0 @@
1
- name: Build and release container to registry
2
-
3
- on:
4
- push:
5
- branches:
6
- - main
7
-
8
- env:
9
- REGISTRY: ghcr.io
10
- IMAGE_NAME: ${{ github.repository }}
11
-
12
- jobs:
13
- build:
14
- name: Build container image
15
- if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
16
- runs-on: ubuntu-latest
17
- permissions: write-all
18
-
19
- steps:
20
- - name: Checkout repository
21
- uses: actions/checkout@v3
22
-
23
- - name: Configure Git
24
- run: |
25
- git config user.name "${{ github.actor }}"
26
- git config user.email "${{ github.actor }}@users.noreply.github.com"
27
-
28
- - name: Login to GitHub Container Registry
29
- uses: docker/login-action@v2
30
- with:
31
- registry: ${{ env.REGISTRY }}
32
- username: ${{ github.actor }}
33
- password: ${{ secrets.GITHUB_TOKEN }}
34
-
35
- - name: Setup Helm
36
- uses: azure/setup-helm@v3
37
- with:
38
- version: v3.8.0
39
-
40
- - name: Setup yq
41
- uses: chrisdickinson/setup-yq@v1.0.1
42
- with:
43
- yq-version: v4.28.2
44
-
45
- - name: Setup Nodejs and npm
46
- uses: actions/setup-node@v3
47
- with:
48
- node-version: '16'
49
-
50
- - name: Setup yarn
51
- run: npm install -g yarn
52
-
53
- - name: Setup Nodejs with yarn caching
54
- uses: actions/setup-node@v3
55
- with:
56
- node-version: '16'
57
- cache: yarn
58
-
59
- - name: Install dependencies
60
- run: yarn
61
-
62
- - name: Build and push UI image
63
- run: |
64
- yarn publish-pkgs -cp -r ${{ env.REGISTRY }} -o ${{ github.repository_owner }}