@backstage/cli 0.17.2-next.2 → 0.18.0-next.1
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.
- package/CHANGELOG.md +50 -0
- package/dist/cjs/{PackageGraph-53dd0b3a.cjs.js → PackageGraph-7e994333.cjs.js} +2 -2
- package/dist/cjs/{build-b640fbb1.cjs.js → build-358f7340.cjs.js} +18 -20
- package/dist/cjs/{bundle-2865badd.cjs.js → buildBackend-40a0db49.cjs.js} +76 -5
- package/dist/cjs/{buildWorkspace-1318ef7c.cjs.js → buildWorkspace-113c2556.cjs.js} +6 -7
- package/dist/cjs/{bump-a2a67632.cjs.js → bump-8012d58d.cjs.js} +5 -5
- package/dist/cjs/{clean-b88c06d7.cjs.js → clean-51f7e960.cjs.js} +2 -2
- package/dist/cjs/{config-c55d76c2.cjs.js → config-c574e8ff.cjs.js} +3 -3
- package/dist/cjs/{create-3481627f.cjs.js → create-cdb38353.cjs.js} +4 -4
- package/dist/cjs/{packager-e7ca33b6.cjs.js → createDistWorkspace-fb33ba17.cjs.js} +206 -6
- package/dist/cjs/{createPlugin-4a6dad5f.cjs.js → createPlugin-68c996ad.cjs.js} +4 -4
- package/dist/cjs/{diff-dd85d694.cjs.js → diff-fc217aa9.cjs.js} +2 -2
- package/dist/cjs/{docs-347465a8.cjs.js → docs-6c75c5e0.cjs.js} +4 -4
- package/dist/cjs/{fix-edf6ddd5.cjs.js → fix-ffae9892.cjs.js} +3 -3
- package/dist/cjs/{index-04607cda.cjs.js → index-85d34e34.cjs.js} +99 -15
- package/dist/cjs/{index-8425c7e9.cjs.js → index-996aef8d.cjs.js} +23 -25
- package/dist/cjs/{index-c808cf0d.cjs.js → index-9f937162.cjs.js} +45 -34
- package/dist/cjs/{index-484b5764.cjs.js → index-a8f4ed57.cjs.js} +51 -62
- package/dist/cjs/{info-bdf9500e.cjs.js → info-ed12f647.cjs.js} +3 -3
- package/dist/cjs/{install-f2c69ceb.cjs.js → install-0dfffa1e.cjs.js} +4 -4
- package/dist/cjs/{lint-78966a2b.cjs.js → lint-00f4c9e7.cjs.js} +2 -2
- package/dist/cjs/{lint-31191dbb.cjs.js → lint-2c60616f.cjs.js} +3 -3
- package/dist/cjs/{lint-842c16ad.cjs.js → lint-a9a1f30c.cjs.js} +3 -3
- package/dist/cjs/{list-deprecations-0ca97f41.cjs.js → list-deprecations-29b99689.cjs.js} +3 -3
- package/dist/cjs/{pack-063fc0e4.cjs.js → pack-9cd16c4d.cjs.js} +2 -2
- package/dist/cjs/{packageLintConfigs-a9450c0f.cjs.js → packageLintConfigs-b0372a12.cjs.js} +4 -4
- package/dist/cjs/{packageRole-d53a079d.cjs.js → packageRole-35b363ad.cjs.js} +3 -3
- package/dist/cjs/{packageRoles-7963d6c3.cjs.js → packageRoles-c5b78d5d.cjs.js} +2 -2
- package/dist/cjs/{packageScripts-cb877166.cjs.js → packageScripts-80a80019.cjs.js} +4 -4
- package/dist/cjs/{packages-75064d97.cjs.js → packages-e5e2a455.cjs.js} +3 -3
- package/dist/cjs/{paths-5b55d04b.cjs.js → paths-d615bab6.cjs.js} +3 -3
- package/dist/cjs/{print-22734527.cjs.js → print-240a7bcf.cjs.js} +4 -4
- package/dist/cjs/{run-b1683a19.cjs.js → run-94261248.cjs.js} +2 -2
- package/dist/cjs/{schema-fa0c5bc6.cjs.js → schema-4e5c9ed3.cjs.js} +4 -4
- package/dist/cjs/{tasks-4a4c19ec.cjs.js → tasks-c599c124.cjs.js} +2 -2
- package/dist/cjs/{test-40d397f6.cjs.js → test-873bb0fc.cjs.js} +3 -3
- package/dist/cjs/{validate-07fe3595.cjs.js → validate-dc3ecade.cjs.js} +4 -4
- package/dist/index.cjs.js +1 -1
- package/package.json +14 -14
- package/dist/cjs/backend-33948fed.cjs.js +0 -35
- package/dist/cjs/build-0a70fea8.cjs.js +0 -58
- package/dist/cjs/build-48f61d5c.cjs.js +0 -38
- package/dist/cjs/build-de048feb.cjs.js +0 -38
- package/dist/cjs/buildBackend-bfab5262.cjs.js +0 -86
- package/dist/cjs/bundle-729219a4.cjs.js +0 -75
- package/dist/cjs/createDistWorkspace-176d2203.cjs.js +0 -215
- package/dist/cjs/dev-695d205e.cjs.js +0 -44
- package/dist/cjs/oldBuild-11077a74.cjs.js +0 -51
- package/dist/cjs/serve-38e4427f.cjs.js +0 -56
- package/dist/cjs/serve-569da697.cjs.js +0 -97
- package/dist/cjs/server-f78129b4.cjs.js +0 -76
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var configLoader = require('@backstage/config-loader');
|
|
4
4
|
var openBrowser = require('react-dev-utils/openBrowser');
|
|
5
|
-
var config = require('./config-
|
|
5
|
+
var config = require('./config-c574e8ff.cjs.js');
|
|
6
6
|
require('@backstage/config');
|
|
7
|
-
require('./index-
|
|
7
|
+
require('./index-a8f4ed57.cjs.js');
|
|
8
8
|
require('commander');
|
|
9
9
|
require('chalk');
|
|
10
10
|
require('fs-extra');
|
|
@@ -12,7 +12,7 @@ require('semver');
|
|
|
12
12
|
require('@backstage/cli-common');
|
|
13
13
|
require('@backstage/errors');
|
|
14
14
|
require('@manypkg/get-packages');
|
|
15
|
-
require('./PackageGraph-
|
|
15
|
+
require('./PackageGraph-7e994333.cjs.js');
|
|
16
16
|
require('path');
|
|
17
17
|
require('child_process');
|
|
18
18
|
require('util');
|
|
@@ -33,4 +33,4 @@ var docs = async (opts) => {
|
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
exports["default"] = docs;
|
|
36
|
-
//# sourceMappingURL=docs-
|
|
36
|
+
//# sourceMappingURL=docs-6c75c5e0.cjs.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-a8f4ed57.cjs.js');
|
|
4
4
|
var eslint = require('eslint');
|
|
5
5
|
var path = require('path');
|
|
6
6
|
var fs = require('fs-extra');
|
|
7
7
|
var cliCommon = require('@backstage/cli-common');
|
|
8
|
-
var PackageGraph = require('./PackageGraph-
|
|
8
|
+
var PackageGraph = require('./PackageGraph-7e994333.cjs.js');
|
|
9
9
|
require('commander');
|
|
10
10
|
require('chalk');
|
|
11
11
|
require('semver');
|
|
@@ -113,4 +113,4 @@ async function command() {
|
|
|
113
113
|
}
|
|
114
114
|
|
|
115
115
|
exports.command = command;
|
|
116
|
-
//# sourceMappingURL=fix-
|
|
116
|
+
//# sourceMappingURL=fix-ffae9892.cjs.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var fs = require('fs-extra');
|
|
4
|
-
var index = require('./index-
|
|
5
|
-
var
|
|
4
|
+
var index = require('./index-a8f4ed57.cjs.js');
|
|
5
|
+
var webpack = require('webpack');
|
|
6
|
+
var paths = require('./paths-d615bab6.cjs.js');
|
|
6
7
|
require('yn');
|
|
7
8
|
require('path');
|
|
8
|
-
require('webpack');
|
|
9
9
|
require('react-dev-utils/FileSizeReporter');
|
|
10
10
|
require('react-dev-utils/formatWebpackMessages');
|
|
11
11
|
require('fork-ts-checker-webpack-plugin');
|
|
@@ -15,21 +15,19 @@ require('run-script-webpack-plugin');
|
|
|
15
15
|
require('webpack-node-externals');
|
|
16
16
|
require('@backstage/cli-common');
|
|
17
17
|
require('@manypkg/get-packages');
|
|
18
|
-
require('./paths-5b55d04b.cjs.js');
|
|
19
18
|
require('mini-css-extract-plugin');
|
|
20
|
-
require('./run-
|
|
19
|
+
require('./run-94261248.cjs.js');
|
|
21
20
|
require('eslint-webpack-plugin');
|
|
22
21
|
require('lodash/pickBy');
|
|
23
22
|
var chalk = require('chalk');
|
|
24
|
-
require('webpack-dev-server');
|
|
25
|
-
require('react-dev-utils/openBrowser');
|
|
23
|
+
var WebpackDevServer = require('webpack-dev-server');
|
|
24
|
+
var openBrowser = require('react-dev-utils/openBrowser');
|
|
26
25
|
var uniq = require('lodash/uniq');
|
|
27
|
-
var
|
|
28
|
-
var config = require('./config-c55d76c2.cjs.js');
|
|
26
|
+
var config = require('./config-c574e8ff.cjs.js');
|
|
29
27
|
var Lockfile = require('./Lockfile-48dc675e.cjs.js');
|
|
30
28
|
require('minimatch');
|
|
31
|
-
var lint = require('./lint-
|
|
32
|
-
var packageRoles = require('./packageRoles-
|
|
29
|
+
var lint = require('./lint-2c60616f.cjs.js');
|
|
30
|
+
var packageRoles = require('./packageRoles-c5b78d5d.cjs.js');
|
|
33
31
|
require('commander');
|
|
34
32
|
require('semver');
|
|
35
33
|
require('@backstage/errors');
|
|
@@ -38,7 +36,7 @@ require('child_process');
|
|
|
38
36
|
require('util');
|
|
39
37
|
require('@backstage/config-loader');
|
|
40
38
|
require('@backstage/config');
|
|
41
|
-
require('./PackageGraph-
|
|
39
|
+
require('./PackageGraph-7e994333.cjs.js');
|
|
42
40
|
require('@yarnpkg/parsers');
|
|
43
41
|
require('@yarnpkg/lockfile');
|
|
44
42
|
require('lodash/partition');
|
|
@@ -47,12 +45,98 @@ require('zod');
|
|
|
47
45
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
48
46
|
|
|
49
47
|
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
48
|
+
var webpack__default = /*#__PURE__*/_interopDefaultLegacy(webpack);
|
|
50
49
|
var chalk__default = /*#__PURE__*/_interopDefaultLegacy(chalk);
|
|
50
|
+
var WebpackDevServer__default = /*#__PURE__*/_interopDefaultLegacy(WebpackDevServer);
|
|
51
|
+
var openBrowser__default = /*#__PURE__*/_interopDefaultLegacy(openBrowser);
|
|
51
52
|
var uniq__default = /*#__PURE__*/_interopDefaultLegacy(uniq);
|
|
52
53
|
|
|
54
|
+
async function serveBackend(options) {
|
|
55
|
+
const paths$1 = paths.resolveBundlingPaths(options);
|
|
56
|
+
const config = await paths.createBackendConfig(paths$1, {
|
|
57
|
+
...options,
|
|
58
|
+
isDev: true
|
|
59
|
+
});
|
|
60
|
+
const compiler = webpack__default["default"](config, (err) => {
|
|
61
|
+
if (err) {
|
|
62
|
+
console.error(err);
|
|
63
|
+
} else
|
|
64
|
+
console.log("Build succeeded");
|
|
65
|
+
});
|
|
66
|
+
const waitForExit = async () => {
|
|
67
|
+
for (const signal of ["SIGINT", "SIGTERM"]) {
|
|
68
|
+
process.on(signal, () => {
|
|
69
|
+
compiler.close(() => process.exit());
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return new Promise(() => {
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
return waitForExit;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
async function serveBundle(options) {
|
|
79
|
+
var _a, _b;
|
|
80
|
+
const url = paths.resolveBaseUrl(options.frontendConfig);
|
|
81
|
+
const host = options.frontendConfig.getOptionalString("app.listen.host") || url.hostname;
|
|
82
|
+
const port = options.frontendConfig.getOptionalNumber("app.listen.port") || Number(url.port) || (url.protocol === "https:" ? 443 : 80);
|
|
83
|
+
const paths$1 = paths.resolveBundlingPaths(options);
|
|
84
|
+
const pkgPath = paths$1.targetPackageJson;
|
|
85
|
+
const pkg = await fs__default["default"].readJson(pkgPath);
|
|
86
|
+
const config = await paths.createConfig(paths$1, {
|
|
87
|
+
...options,
|
|
88
|
+
isDev: true,
|
|
89
|
+
baseUrl: url
|
|
90
|
+
});
|
|
91
|
+
const compiler = webpack__default["default"](config);
|
|
92
|
+
const server = new WebpackDevServer__default["default"]({
|
|
93
|
+
hot: !process.env.CI,
|
|
94
|
+
devMiddleware: {
|
|
95
|
+
publicPath: (_a = config.output) == null ? void 0 : _a.publicPath,
|
|
96
|
+
stats: "errors-warnings"
|
|
97
|
+
},
|
|
98
|
+
static: paths$1.targetPublic ? {
|
|
99
|
+
publicPath: (_b = config.output) == null ? void 0 : _b.publicPath,
|
|
100
|
+
directory: paths$1.targetPublic
|
|
101
|
+
} : void 0,
|
|
102
|
+
historyApiFallback: {
|
|
103
|
+
disableDotRule: true
|
|
104
|
+
},
|
|
105
|
+
https: url.protocol === "https:",
|
|
106
|
+
host,
|
|
107
|
+
port,
|
|
108
|
+
proxy: pkg.proxy,
|
|
109
|
+
allowedHosts: [url.hostname],
|
|
110
|
+
client: {
|
|
111
|
+
webSocketURL: "auto://0.0.0.0:0/ws"
|
|
112
|
+
}
|
|
113
|
+
}, compiler);
|
|
114
|
+
await new Promise((resolve, reject) => {
|
|
115
|
+
server.startCallback((err) => {
|
|
116
|
+
if (err) {
|
|
117
|
+
reject(err);
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
openBrowser__default["default"](url.href);
|
|
121
|
+
resolve();
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
const waitForExit = async () => {
|
|
125
|
+
for (const signal of ["SIGINT", "SIGTERM"]) {
|
|
126
|
+
process.on(signal, () => {
|
|
127
|
+
server.close();
|
|
128
|
+
process.exit();
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
return new Promise(() => {
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
return waitForExit;
|
|
135
|
+
}
|
|
136
|
+
|
|
53
137
|
async function startBackend(options) {
|
|
54
138
|
await fs__default["default"].remove(index.paths.resolveTarget("dist"));
|
|
55
|
-
const waitForExit = await
|
|
139
|
+
const waitForExit = await serveBackend({
|
|
56
140
|
entry: "src/index",
|
|
57
141
|
checksEnabled: options.checksEnabled,
|
|
58
142
|
inspectEnabled: options.inspectEnabled,
|
|
@@ -98,7 +182,7 @@ async function startFrontend(options) {
|
|
|
98
182
|
This can be resolved by changing app.baseUrl and backend.baseUrl to point to their respective local development ports.
|
|
99
183
|
`));
|
|
100
184
|
}
|
|
101
|
-
const waitForExit = await
|
|
185
|
+
const waitForExit = await serveBundle({
|
|
102
186
|
entry: options.entry,
|
|
103
187
|
checksEnabled: options.checksEnabled,
|
|
104
188
|
...config$1
|
|
@@ -136,4 +220,4 @@ async function command(opts) {
|
|
|
136
220
|
}
|
|
137
221
|
|
|
138
222
|
exports.command = command;
|
|
139
|
-
//# sourceMappingURL=index-
|
|
223
|
+
//# sourceMappingURL=index-85d34e34.cjs.js.map
|
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var packageRoles = require('./packageRoles-
|
|
5
|
-
var index = require('./index-
|
|
6
|
-
var buildBackend = require('./buildBackend-
|
|
7
|
-
require('fs-extra');
|
|
8
|
-
require('rollup');
|
|
3
|
+
var createDistWorkspace = require('./createDistWorkspace-fb33ba17.cjs.js');
|
|
4
|
+
var packageRoles = require('./packageRoles-c5b78d5d.cjs.js');
|
|
5
|
+
var index = require('./index-a8f4ed57.cjs.js');
|
|
6
|
+
var buildBackend = require('./buildBackend-40a0db49.cjs.js');
|
|
9
7
|
require('chalk');
|
|
8
|
+
require('fs-extra');
|
|
10
9
|
require('path');
|
|
10
|
+
require('os');
|
|
11
|
+
require('tar');
|
|
12
|
+
require('lodash/partition');
|
|
13
|
+
require('./run-94261248.cjs.js');
|
|
14
|
+
require('child_process');
|
|
15
|
+
require('util');
|
|
16
|
+
require('@backstage/errors');
|
|
17
|
+
require('./PackageGraph-7e994333.cjs.js');
|
|
18
|
+
require('@manypkg/get-packages');
|
|
19
|
+
require('rollup');
|
|
11
20
|
require('@rollup/plugin-commonjs');
|
|
12
21
|
require('@rollup/plugin-node-resolve');
|
|
13
22
|
require('rollup-plugin-postcss');
|
|
@@ -19,41 +28,30 @@ require('@rollup/plugin-yaml');
|
|
|
19
28
|
require('rollup-pluginutils');
|
|
20
29
|
require('./svgrTemplate-550efce6.cjs.js');
|
|
21
30
|
require('./parallel-8286d3fa.cjs.js');
|
|
22
|
-
require('os');
|
|
23
31
|
require('worker_threads');
|
|
32
|
+
require('npm-packlist');
|
|
24
33
|
require('zod');
|
|
25
34
|
require('commander');
|
|
26
35
|
require('semver');
|
|
27
36
|
require('@backstage/cli-common');
|
|
28
|
-
require('@backstage/errors');
|
|
29
37
|
require('webpack');
|
|
30
38
|
require('fork-ts-checker-webpack-plugin');
|
|
31
39
|
require('html-webpack-plugin');
|
|
32
40
|
require('react-dev-utils/ModuleScopePlugin');
|
|
33
41
|
require('run-script-webpack-plugin');
|
|
34
42
|
require('webpack-node-externals');
|
|
35
|
-
require('
|
|
36
|
-
require('./paths-5b55d04b.cjs.js');
|
|
43
|
+
require('./paths-d615bab6.cjs.js');
|
|
37
44
|
require('mini-css-extract-plugin');
|
|
38
|
-
require('./run-b1683a19.cjs.js');
|
|
39
|
-
require('child_process');
|
|
40
|
-
require('util');
|
|
41
45
|
require('eslint-webpack-plugin');
|
|
42
46
|
require('lodash/pickBy');
|
|
43
|
-
require('./bundle-2865badd.cjs.js');
|
|
44
47
|
require('yn');
|
|
45
48
|
require('react-dev-utils/FileSizeReporter');
|
|
46
49
|
require('react-dev-utils/formatWebpackMessages');
|
|
47
50
|
require('webpack-dev-server');
|
|
48
51
|
require('react-dev-utils/openBrowser');
|
|
49
|
-
require('./config-
|
|
52
|
+
require('./config-c574e8ff.cjs.js');
|
|
50
53
|
require('@backstage/config-loader');
|
|
51
54
|
require('@backstage/config');
|
|
52
|
-
require('./PackageGraph-53dd0b3a.cjs.js');
|
|
53
|
-
require('tar');
|
|
54
|
-
require('./createDistWorkspace-176d2203.cjs.js');
|
|
55
|
-
require('lodash/partition');
|
|
56
|
-
require('npm-packlist');
|
|
57
55
|
|
|
58
56
|
async function command(opts) {
|
|
59
57
|
const role = await packageRoles.findRoleFromCommand(opts);
|
|
@@ -73,15 +71,15 @@ async function command(opts) {
|
|
|
73
71
|
const roleInfo = packageRoles.getRoleInfo(role);
|
|
74
72
|
const outputs = /* @__PURE__ */ new Set();
|
|
75
73
|
if (roleInfo.output.includes("cjs")) {
|
|
76
|
-
outputs.add(
|
|
74
|
+
outputs.add(createDistWorkspace.Output.cjs);
|
|
77
75
|
}
|
|
78
76
|
if (roleInfo.output.includes("esm")) {
|
|
79
|
-
outputs.add(
|
|
77
|
+
outputs.add(createDistWorkspace.Output.esm);
|
|
80
78
|
}
|
|
81
79
|
if (roleInfo.output.includes("types")) {
|
|
82
|
-
outputs.add(
|
|
80
|
+
outputs.add(createDistWorkspace.Output.types);
|
|
83
81
|
}
|
|
84
|
-
return
|
|
82
|
+
return createDistWorkspace.buildPackage({
|
|
85
83
|
outputs,
|
|
86
84
|
minify: Boolean(opts.minify),
|
|
87
85
|
useApiExtractor: Boolean(opts.experimentalTypeBuild)
|
|
@@ -89,4 +87,4 @@ async function command(opts) {
|
|
|
89
87
|
}
|
|
90
88
|
|
|
91
89
|
exports.command = command;
|
|
92
|
-
//# sourceMappingURL=index-
|
|
90
|
+
//# sourceMappingURL=index-996aef8d.cjs.js.map
|
|
@@ -4,7 +4,7 @@ var fs = require('fs-extra');
|
|
|
4
4
|
var chalk = require('chalk');
|
|
5
5
|
var yaml = require('yaml');
|
|
6
6
|
var inquirer = require('inquirer');
|
|
7
|
-
var index$1 = require('./index-
|
|
7
|
+
var index$1 = require('./index-a8f4ed57.cjs.js');
|
|
8
8
|
var crypto = require('crypto');
|
|
9
9
|
var openBrowser = require('react-dev-utils/openBrowser');
|
|
10
10
|
var request = require('@octokit/request');
|
|
@@ -25,17 +25,6 @@ var openBrowser__default = /*#__PURE__*/_interopDefaultLegacy(openBrowser);
|
|
|
25
25
|
var express__default = /*#__PURE__*/_interopDefaultLegacy(express);
|
|
26
26
|
var fetch__default = /*#__PURE__*/_interopDefaultLegacy(fetch);
|
|
27
27
|
|
|
28
|
-
const MANIFEST_DATA = {
|
|
29
|
-
default_events: ["create", "delete", "push", "repository"],
|
|
30
|
-
default_permissions: {
|
|
31
|
-
contents: "read",
|
|
32
|
-
metadata: "read"
|
|
33
|
-
},
|
|
34
|
-
name: "Backstage-<changeme>",
|
|
35
|
-
url: "https://backstage.io",
|
|
36
|
-
description: "GitHub App for Backstage",
|
|
37
|
-
public: false
|
|
38
|
-
};
|
|
39
28
|
const FORM_PAGE = `
|
|
40
29
|
<html>
|
|
41
30
|
<body>
|
|
@@ -50,27 +39,33 @@ const FORM_PAGE = `
|
|
|
50
39
|
</html>
|
|
51
40
|
`;
|
|
52
41
|
class GithubCreateAppServer {
|
|
53
|
-
constructor(actionUrl,
|
|
42
|
+
constructor(actionUrl, permissions) {
|
|
54
43
|
this.actionUrl = actionUrl;
|
|
55
|
-
this.
|
|
44
|
+
this.permissions = permissions;
|
|
56
45
|
this.formHandler = (_req, res) => {
|
|
57
46
|
const baseUrl = this.baseUrl;
|
|
58
47
|
if (!baseUrl) {
|
|
59
48
|
throw new Error("baseUrl is not set");
|
|
60
49
|
}
|
|
61
50
|
const manifest = {
|
|
62
|
-
|
|
51
|
+
default_events: ["create", "delete", "push", "repository"],
|
|
52
|
+
default_permissions: {
|
|
53
|
+
metadata: "read",
|
|
54
|
+
...this.permissions.includes("members") && { members: "read" },
|
|
55
|
+
...this.permissions.includes("read") && { contents: "read" },
|
|
56
|
+
...this.permissions.includes("write") && {
|
|
57
|
+
contents: "write",
|
|
58
|
+
actions: "write"
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
name: "Backstage-<changeme>",
|
|
62
|
+
url: "https://backstage.io",
|
|
63
|
+
description: "GitHub App for Backstage",
|
|
64
|
+
public: false,
|
|
63
65
|
redirect_url: `${baseUrl}/callback`,
|
|
64
66
|
hook_attributes: {
|
|
65
67
|
url: this.webhookUrl,
|
|
66
68
|
active: false
|
|
67
|
-
},
|
|
68
|
-
...this.readWrite && {
|
|
69
|
-
default_permissions: {
|
|
70
|
-
contents: "write",
|
|
71
|
-
actions: "write",
|
|
72
|
-
metadata: "read"
|
|
73
|
-
}
|
|
74
69
|
}
|
|
75
70
|
};
|
|
76
71
|
const manifestJson = JSON.stringify(manifest).replace(/\"/g, """);
|
|
@@ -86,7 +81,7 @@ class GithubCreateAppServer {
|
|
|
86
81
|
static async run(options) {
|
|
87
82
|
const encodedOrg = encodeURIComponent(options.org);
|
|
88
83
|
const actionUrl = `https://github.com/organizations/${encodedOrg}/settings/apps/new`;
|
|
89
|
-
const server = new GithubCreateAppServer(actionUrl, options.
|
|
84
|
+
const server = new GithubCreateAppServer(actionUrl, options.permissions);
|
|
90
85
|
return server.start();
|
|
91
86
|
}
|
|
92
87
|
async start() {
|
|
@@ -129,19 +124,35 @@ class GithubCreateAppServer {
|
|
|
129
124
|
}
|
|
130
125
|
|
|
131
126
|
var index = async (org) => {
|
|
132
|
-
const answers = await inquirer__default["default"].prompt(
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
127
|
+
const answers = await inquirer__default["default"].prompt({
|
|
128
|
+
name: "appType",
|
|
129
|
+
type: "checkbox",
|
|
130
|
+
message: "Select permissions [required] (these can be changed later but then require approvals in all installations)",
|
|
131
|
+
choices: [
|
|
132
|
+
{
|
|
133
|
+
name: "Read access to content (required by Software Catalog to ingest data from repositories)",
|
|
134
|
+
value: "read",
|
|
135
|
+
checked: true
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
name: "Read access to members (required by Software Catalog to ingest GitHub teams)",
|
|
139
|
+
value: "members",
|
|
140
|
+
checked: true
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
name: "Read and Write to content and actions (required by Software Templates to create new repositories)",
|
|
144
|
+
value: "write"
|
|
145
|
+
}
|
|
146
|
+
]
|
|
147
|
+
});
|
|
148
|
+
if (answers.appType.length === 0) {
|
|
149
|
+
console.log(chalk__default["default"].red("You must select at least one permission"));
|
|
150
|
+
process.exit(1);
|
|
151
|
+
}
|
|
141
152
|
await verifyGithubOrg(org);
|
|
142
153
|
const { slug, name, ...config } = await GithubCreateAppServer.run({
|
|
143
154
|
org,
|
|
144
|
-
|
|
155
|
+
permissions: answers.appType
|
|
145
156
|
});
|
|
146
157
|
const fileName = `github-app-${slug}-credentials.yaml`;
|
|
147
158
|
const content = `# Name: ${name}
|
|
@@ -184,4 +195,4 @@ async function verifyGithubOrg(org) {
|
|
|
184
195
|
}
|
|
185
196
|
|
|
186
197
|
exports["default"] = index;
|
|
187
|
-
//# sourceMappingURL=index-
|
|
198
|
+
//# sourceMappingURL=index-9f937162.cjs.js.map
|