@backstage/cli 0.25.3-next.2 → 0.26.0

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 (51) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/bin/backstage-cli +1 -9
  3. package/config/nodeTransform.cjs +45 -0
  4. package/dist/cjs/{build-8382b8d8.cjs.js → build-dd1760ba.cjs.js} +10 -8
  5. package/dist/cjs/{buildBackend-8dad4184.cjs.js → buildBackend-93008edd.cjs.js} +12 -10
  6. package/dist/cjs/{buildWorkspace-65108f13.cjs.js → buildWorkspace-537eb788.cjs.js} +5 -4
  7. package/dist/cjs/{bump-7eb29899.cjs.js → bump-aee0496e.cjs.js} +5 -5
  8. package/dist/cjs/{clean-da51bc11.cjs.js → clean-6ccda488.cjs.js} +2 -2
  9. package/dist/cjs/{clean-5afc7d48.cjs.js → clean-8a505ab4.cjs.js} +2 -2
  10. package/dist/cjs/{codeowners-20b953b3.cjs.js → codeowners-b305c16a.cjs.js} +2 -2
  11. package/dist/cjs/{config-56e0de04.cjs.js → config-9d068fb3.cjs.js} +2 -2
  12. package/dist/cjs/{createDistWorkspace-030a024c.cjs.js → createDistWorkspace-521b8e20.cjs.js} +8 -6
  13. package/dist/cjs/{createPlugin-204e49d9.cjs.js → createPlugin-5b733848.cjs.js} +4 -4
  14. package/dist/cjs/{diff-7d8597da.cjs.js → diff-ffcf1ddd.cjs.js} +2 -2
  15. package/dist/cjs/{docs-f78c80fc.cjs.js → docs-62f456dc.cjs.js} +3 -3
  16. package/dist/cjs/{fix-d22e0b11.cjs.js → fix-c9486e20.cjs.js} +2 -2
  17. package/dist/cjs/{index-09d2153b.cjs.js → index-14d17c46.cjs.js} +11 -9
  18. package/dist/cjs/{index-edd730f9.cjs.js → index-34be8e16.cjs.js} +2 -2
  19. package/dist/cjs/{index-9063098c.cjs.js → index-7a73b7d7.cjs.js} +27 -17
  20. package/dist/cjs/{index-9544d932.cjs.js → index-959685eb.cjs.js} +3 -3
  21. package/dist/cjs/{index-e1de5c59.cjs.js → index-f42e533f.cjs.js} +78 -65
  22. package/dist/cjs/{info-1f294f45.cjs.js → info-ecbe826f.cjs.js} +3 -3
  23. package/dist/cjs/{install-673dc92b.cjs.js → install-27e2fe5d.cjs.js} +4 -4
  24. package/dist/cjs/{lint-8300340a.cjs.js → lint-748f9c9d.cjs.js} +2 -2
  25. package/dist/cjs/{lint-b802a7cd.cjs.js → lint-813542b6.cjs.js} +2 -2
  26. package/dist/cjs/{lint-ba008767.cjs.js → lint-cadb3a1e.cjs.js} +3 -3
  27. package/dist/cjs/{list-deprecations-e2ee5969.cjs.js → list-deprecations-a9347f75.cjs.js} +2 -2
  28. package/dist/cjs/{new-c58b4036.cjs.js → new-7cca705d.cjs.js} +4 -4
  29. package/dist/cjs/{pack-50caa243.cjs.js → pack-7abdf1e1.cjs.js} +2 -2
  30. package/dist/cjs/{packageDetection-4743318d.cjs.js → packageDetection-8d19bd36.cjs.js} +6 -3
  31. package/dist/cjs/{packageExports-a1441001.cjs.js → packageExports-84600a62.cjs.js} +3 -3
  32. package/dist/cjs/{packageLintConfigs-d64c7abd.cjs.js → packageLintConfigs-f1239915.cjs.js} +3 -3
  33. package/dist/cjs/{packageRole-dac636ac.cjs.js → packageRole-b982f1e6.cjs.js} +2 -2
  34. package/dist/cjs/{packages-6d977cf6.cjs.js → packages-9e5204b8.cjs.js} +3 -3
  35. package/dist/cjs/{print-6b92e96e.cjs.js → print-33cb8274.cjs.js} +3 -3
  36. package/dist/cjs/{role-a4d0fea7.cjs.js → role-26dc0550.cjs.js} +2 -2
  37. package/dist/cjs/{run-d7eebc11.cjs.js → run-8f756fce.cjs.js} +2 -2
  38. package/dist/cjs/{schema-4835d534.cjs.js → schema-13e89347.cjs.js} +3 -3
  39. package/dist/cjs/{test-7743a73f.cjs.js → test-52dfdc79.cjs.js} +3 -3
  40. package/dist/cjs/{test-5db6618e.cjs.js → test-7076bd21.cjs.js} +3 -3
  41. package/dist/cjs/{validate-beb5d30e.cjs.js → validate-2e4a0b12.cjs.js} +3 -3
  42. package/dist/index.cjs.js +1 -1
  43. package/package.json +27 -23
  44. package/templates/default-backend-plugin/dev/index.ts +9 -0
  45. package/templates/default-backend-plugin/package.json.hbs +4 -0
  46. package/templates/default-backend-plugin/src/index.ts.hbs +2 -0
  47. package/templates/default-backend-plugin/src/plugin.ts.hbs +32 -0
  48. package/templates/default-backend-plugin/src/service/router.ts +3 -2
  49. package/templates/default-backend-plugin/src/index.ts +0 -1
  50. package/templates/default-backend-plugin/src/run.ts.hbs +0 -17
  51. package/templates/default-backend-plugin/src/service/standaloneServer.ts.hbs +0 -34
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var yaml = require('yaml');
4
- var config = require('./config-56e0de04.cjs.js');
4
+ var config = require('./config-9d068fb3.cjs.js');
5
5
  var configLoader = require('@backstage/config-loader');
6
6
  require('@backstage/config');
7
- require('./index-e1de5c59.cjs.js');
7
+ require('./index-f42e533f.cjs.js');
8
8
  require('commander');
9
9
  require('chalk');
10
10
  require('fs-extra');
@@ -42,4 +42,4 @@ var schema = async (opts) => {
42
42
  };
43
43
 
44
44
  exports["default"] = schema;
45
- //# sourceMappingURL=schema-4835d534.cjs.js.map
45
+ //# sourceMappingURL=schema-13e89347.cjs.js.map
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-e1de5c59.cjs.js');
4
- var run = require('./run-d7eebc11.cjs.js');
3
+ var index = require('./index-f42e533f.cjs.js');
4
+ var run = require('./run-8f756fce.cjs.js');
5
5
  require('commander');
6
6
  require('chalk');
7
7
  require('fs-extra');
@@ -56,4 +56,4 @@ var test = async (_opts, cmd) => {
56
56
  };
57
57
 
58
58
  exports["default"] = test;
59
- //# sourceMappingURL=test-7743a73f.cjs.js.map
59
+ //# sourceMappingURL=test-52dfdc79.cjs.js.map
@@ -2,8 +2,8 @@
2
2
 
3
3
  var os = require('os');
4
4
  var cliNode = require('@backstage/cli-node');
5
- var index = require('./index-e1de5c59.cjs.js');
6
- var run = require('./run-d7eebc11.cjs.js');
5
+ var index = require('./index-f42e533f.cjs.js');
6
+ var run = require('./run-8f756fce.cjs.js');
7
7
  require('commander');
8
8
  require('chalk');
9
9
  require('fs-extra');
@@ -123,4 +123,4 @@ async function command(opts, cmd) {
123
123
 
124
124
  exports.command = command;
125
125
  exports.createFlagFinder = createFlagFinder;
126
- //# sourceMappingURL=test-5db6618e.cjs.js.map
126
+ //# sourceMappingURL=test-7076bd21.cjs.js.map
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var config = require('./config-56e0de04.cjs.js');
3
+ var config = require('./config-9d068fb3.cjs.js');
4
4
  require('@backstage/config-loader');
5
5
  require('@backstage/config');
6
- require('./index-e1de5c59.cjs.js');
6
+ require('./index-f42e533f.cjs.js');
7
7
  require('commander');
8
8
  require('chalk');
9
9
  require('fs-extra');
@@ -25,4 +25,4 @@ var validate = async (opts) => {
25
25
  };
26
26
 
27
27
  exports["default"] = validate;
28
- //# sourceMappingURL=validate-beb5d30e.cjs.js.map
28
+ //# sourceMappingURL=validate-2e4a0b12.cjs.js.map
package/dist/index.cjs.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  require('commander');
4
4
  require('chalk');
5
- require('./cjs/index-e1de5c59.cjs.js');
5
+ require('./cjs/index-f42e533f.cjs.js');
6
6
  require('fs-extra');
7
7
  require('semver');
8
8
  require('@backstage/cli-common');
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@backstage/cli",
3
3
  "description": "CLI for developing Backstage plugins and apps",
4
- "version": "0.25.3-next.2",
4
+ "version": "0.26.0",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -30,14 +30,14 @@
30
30
  "backstage-cli": "bin/backstage-cli"
31
31
  },
32
32
  "dependencies": {
33
- "@backstage/catalog-model": "^1.4.5-next.0",
33
+ "@backstage/catalog-model": "^1.4.5",
34
34
  "@backstage/cli-common": "^0.1.13",
35
- "@backstage/cli-node": "^0.2.4-next.0",
36
- "@backstage/config": "^1.2.0-next.1",
37
- "@backstage/config-loader": "^1.7.0-next.1",
38
- "@backstage/errors": "^1.2.4-next.0",
39
- "@backstage/eslint-plugin": "^0.1.6-next.0",
40
- "@backstage/integration": "^1.9.1-next.2",
35
+ "@backstage/cli-node": "^0.2.4",
36
+ "@backstage/config": "^1.2.0",
37
+ "@backstage/config-loader": "^1.7.0",
38
+ "@backstage/errors": "^1.2.4",
39
+ "@backstage/eslint-plugin": "^0.1.6",
40
+ "@backstage/integration": "^1.9.1",
41
41
  "@backstage/release-manifests": "^0.0.11",
42
42
  "@backstage/types": "^1.1.1",
43
43
  "@manypkg/get-packages": "^1.1.3",
@@ -50,9 +50,9 @@
50
50
  "@rollup/plugin-json": "^6.0.0",
51
51
  "@rollup/plugin-node-resolve": "^15.0.0",
52
52
  "@rollup/plugin-yaml": "^4.0.0",
53
- "@spotify/eslint-config-base": "^14.0.0",
54
- "@spotify/eslint-config-react": "^14.0.0",
55
- "@spotify/eslint-config-typescript": "^14.0.0",
53
+ "@spotify/eslint-config-base": "^15.0.0",
54
+ "@spotify/eslint-config-react": "^15.0.0",
55
+ "@spotify/eslint-config-typescript": "^15.0.0",
56
56
  "@sucrase/webpack-loader": "^2.0.0",
57
57
  "@svgr/core": "6.5.x",
58
58
  "@svgr/plugin-jsx": "6.5.x",
@@ -112,7 +112,9 @@
112
112
  "node-libs-browser": "^2.2.1",
113
113
  "npm-packlist": "^5.0.0",
114
114
  "ora": "^5.3.0",
115
+ "p-limit": "^3.1.0",
115
116
  "p-queue": "^6.6.2",
117
+ "pirates": "^4.0.6",
116
118
  "postcss": "^8.1.0",
117
119
  "process": "^0.11.10",
118
120
  "react-dev-utils": "^12.0.0-next.60",
@@ -130,7 +132,6 @@
130
132
  "swc-loader": "^0.2.3",
131
133
  "tar": "^6.1.12",
132
134
  "terser-webpack-plugin": "^5.1.3",
133
- "tsx": "^4.0.0",
134
135
  "util": "^0.12.3",
135
136
  "webpack": "^5.70.0",
136
137
  "webpack-dev-server": "^4.7.3",
@@ -141,16 +142,16 @@
141
142
  "zod": "^3.22.4"
142
143
  },
143
144
  "devDependencies": {
144
- "@backstage/backend-common": "^0.21.4-next.2",
145
- "@backstage/backend-plugin-api": "^0.6.14-next.2",
146
- "@backstage/backend-test-utils": "^0.3.4-next.2",
147
- "@backstage/config": "^1.2.0-next.1",
148
- "@backstage/core-app-api": "^1.12.1-next.1",
149
- "@backstage/core-components": "^0.14.1-next.2",
150
- "@backstage/core-plugin-api": "^1.9.1-next.1",
151
- "@backstage/dev-utils": "^1.0.28-next.2",
152
- "@backstage/test-utils": "^1.5.1-next.1",
153
- "@backstage/theme": "^0.5.2-next.0",
145
+ "@backstage/backend-common": "^0.21.4",
146
+ "@backstage/backend-plugin-api": "^0.6.14",
147
+ "@backstage/backend-test-utils": "^0.3.4",
148
+ "@backstage/config": "^1.2.0",
149
+ "@backstage/core-app-api": "^1.12.1",
150
+ "@backstage/core-components": "^0.14.1",
151
+ "@backstage/core-plugin-api": "^1.9.1",
152
+ "@backstage/dev-utils": "^1.0.28",
153
+ "@backstage/test-utils": "^1.5.1",
154
+ "@backstage/theme": "^0.5.2",
154
155
  "@types/cross-spawn": "^6.0.2",
155
156
  "@types/diff": "^5.0.0",
156
157
  "@types/ejs": "^3.1.3",
@@ -167,10 +168,13 @@
167
168
  "@types/tar": "^6.1.1",
168
169
  "@types/terser-webpack-plugin": "^5.0.4",
169
170
  "@types/yarnpkg__lockfile": "^1.1.4",
171
+ "@vitejs/plugin-react": "^4.0.4",
170
172
  "del": "^7.0.0",
171
173
  "msw": "^1.0.0",
172
174
  "nodemon": "^3.0.1",
173
- "ts-node": "^10.0.0"
175
+ "vite": "^4.4.9",
176
+ "vite-plugin-html": "^3.2.0",
177
+ "vite-plugin-node-polyfills": "^0.21.0"
174
178
  },
175
179
  "peerDependencies": {
176
180
  "@vitejs/plugin-react": "^4.0.4",
@@ -0,0 +1,9 @@
1
+ import { createBackend } from '@backstage/backend-defaults';
2
+
3
+ const backend = createBackend();
4
+
5
+ backend.add(import('@backstage/plugin-auth-backend'));
6
+ backend.add(import('@backstage/plugin-auth-backend-module-guest-provider'));
7
+ backend.add(import('../src'));
8
+
9
+ backend.start();
@@ -29,6 +29,8 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@backstage/backend-common": "{{versionQuery '@backstage/backend-common'}}",
32
+ "@backstage/backend-defaults": "{{versionQuery '@backstage/backend-defaults'}}",
33
+ "@backstage/backend-plugin-api": "{{versionQuery '@backstage/backend-plugin-api'}}",
32
34
  "@backstage/config": "{{versionQuery '@backstage/config'}}",
33
35
  "@types/express": "{{versionQuery '@types/express' '4.17.6'}}",
34
36
  "express": "{{versionQuery 'express' '4.17.1'}}",
@@ -39,6 +41,8 @@
39
41
  },
40
42
  "devDependencies": {
41
43
  "@backstage/cli": "{{versionQuery '@backstage/cli'}}",
44
+ "@backstage/plugin-auth-backend": "{{versionQuery '@backstage/plugin-auth-backend'}}",
45
+ "@backstage/plugin-auth-backend-module-guest-provider": "{{versionQuery '@backstage/plugin-auth-backend-module-guest-provider'}}",
42
46
  "@types/supertest": "{{versionQuery '@types/supertest' '2.0.12'}}",
43
47
  "supertest": "{{versionQuery 'supertest' '6.2.4'}}",
44
48
  "msw": "{{versionQuery 'msw' '1.0.0'}}"
@@ -0,0 +1,2 @@
1
+ export * from './service/router';
2
+ export { {{pluginVar}} as default } from './plugin';
@@ -0,0 +1,32 @@
1
+ import {
2
+ coreServices,
3
+ createBackendPlugin,
4
+ } from '@backstage/backend-plugin-api';
5
+ import { createRouter } from './service/router';
6
+
7
+ /**
8
+ * {{pluginVar}} backend plugin
9
+ *
10
+ * @public
11
+ */
12
+ export const {{pluginVar}} = createBackendPlugin({
13
+ pluginId: '{{pluginVar}}',
14
+ register(env) {
15
+ env.registerInit({
16
+ deps: {
17
+ httpRouter: coreServices.httpRouter,
18
+ logger: coreServices.logger,
19
+ },
20
+ async init({
21
+ httpRouter,
22
+ logger,
23
+ }) {
24
+ httpRouter.use(
25
+ await createRouter({
26
+ logger,
27
+ }),
28
+ );
29
+ },
30
+ });
31
+ },
32
+ });
@@ -1,10 +1,10 @@
1
1
  import { errorHandler } from '@backstage/backend-common';
2
+ import { LoggerService } from '@backstage/backend-plugin-api';
2
3
  import express from 'express';
3
4
  import Router from 'express-promise-router';
4
- import { Logger } from 'winston';
5
5
 
6
6
  export interface RouterOptions {
7
- logger: Logger;
7
+ logger: LoggerService;
8
8
  }
9
9
 
10
10
  export async function createRouter(
@@ -19,6 +19,7 @@ export async function createRouter(
19
19
  logger.info('PONG!');
20
20
  response.json({ status: 'ok' });
21
21
  });
22
+
22
23
  router.use(errorHandler());
23
24
  return router;
24
25
  }
@@ -1 +0,0 @@
1
- export * from './service/router';
@@ -1,17 +0,0 @@
1
- import { getRootLogger } from '@backstage/backend-common';
2
- import yn from 'yn';
3
- import { startStandaloneServer } from './service/standaloneServer';
4
-
5
- const port = process.env.PLUGIN_PORT ? Number(process.env.PLUGIN_PORT) : 7007;
6
- const enableCors = yn(process.env.PLUGIN_CORS, { default: false });
7
- const logger = getRootLogger();
8
-
9
- startStandaloneServer({ port, enableCors, logger }).catch(err => {
10
- logger.error(err);
11
- process.exit(1);
12
- });
13
-
14
- process.on('SIGINT', () => {
15
- logger.info('CTRL+C pressed; exiting.');
16
- process.exit(0);
17
- });
@@ -1,34 +0,0 @@
1
- import { createServiceBuilder } from '@backstage/backend-common';
2
- import { Server } from 'http';
3
- import { Logger } from 'winston';
4
- import { createRouter } from './router';
5
-
6
- export interface ServerOptions {
7
- port: number;
8
- enableCors: boolean;
9
- logger: Logger;
10
- }
11
-
12
- export async function startStandaloneServer(
13
- options: ServerOptions,
14
- ): Promise<Server> {
15
- const logger = options.logger.child({ service: '{{id}}-backend' });
16
- logger.debug('Starting application server...');
17
- const router = await createRouter({
18
- logger,
19
- });
20
-
21
- let service = createServiceBuilder(module)
22
- .setPort(options.port)
23
- .addRouter('/{{id}}', router);
24
- if (options.enableCors) {
25
- service = service.enableCors({ origin: 'http://localhost:3000' });
26
- }
27
-
28
- return await service.start().catch(err => {
29
- logger.error(err);
30
- process.exit(1);
31
- });
32
- }
33
-
34
- module.hot?.accept();