@backstage/create-app 0.5.23-next.0 → 0.5.23-next.2
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 +16 -0
- package/dist/lib/tasks.cjs.js +1 -3
- package/dist/lib/tasks.cjs.js.map +1 -1
- package/dist/lib/versions.cjs.js +30 -28
- package/dist/lib/versions.cjs.js.map +1 -1
- package/dist/package.json.cjs.js +1 -1
- package/dist/packages/app-defaults/package.json.cjs.js +1 -1
- package/dist/packages/backend-defaults/package.json.cjs.js +1 -1
- package/dist/packages/catalog-client/package.json.cjs.js +1 -1
- package/dist/packages/catalog-model/package.json.cjs.js +1 -1
- package/dist/packages/cli/package.json.cjs.js +1 -1
- package/dist/packages/config/package.json.cjs.js +1 -1
- package/dist/packages/core-app-api/package.json.cjs.js +1 -1
- package/dist/packages/core-components/package.json.cjs.js +1 -1
- package/dist/packages/core-plugin-api/package.json.cjs.js +1 -1
- package/dist/packages/errors/package.json.cjs.js +1 -1
- package/dist/packages/integration-react/package.json.cjs.js +1 -1
- package/dist/packages/repo-tools/package.json.cjs.js +1 -1
- package/dist/packages/test-utils/package.json.cjs.js +1 -1
- package/dist/plugins/api-docs/package.json.cjs.js +1 -1
- package/dist/plugins/app-backend/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend-module-github-provider/package.json.cjs.js +1 -1
- package/dist/plugins/auth-backend-module-guest-provider/package.json.cjs.js +1 -1
- package/dist/plugins/auth-node/package.json.cjs.js +1 -1
- package/dist/plugins/catalog/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-backend/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-backend-module-logs/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-backend-module-scaffolder-entity-model/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-common/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-graph/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-import/package.json.cjs.js +1 -1
- package/dist/plugins/catalog-react/package.json.cjs.js +1 -1
- package/dist/plugins/kubernetes/package.json.cjs.js +1 -1
- package/dist/plugins/kubernetes-backend/package.json.cjs.js +1 -1
- package/dist/plugins/org/package.json.cjs.js +1 -1
- package/dist/plugins/permission-backend/package.json.cjs.js +1 -1
- package/dist/plugins/permission-backend-module-policy-allow-all/package.json.cjs.js +1 -1
- package/dist/plugins/permission-common/package.json.cjs.js +1 -1
- package/dist/plugins/permission-node/package.json.cjs.js +1 -1
- package/dist/plugins/permission-react/package.json.cjs.js +1 -1
- package/dist/plugins/proxy-backend/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-backend/package.json.cjs.js +1 -1
- package/dist/plugins/scaffolder-backend-module-github/package.json.cjs.js +6 -0
- package/dist/plugins/scaffolder-backend-module-github/package.json.cjs.js.map +1 -0
- package/dist/plugins/search/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-module-catalog/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-module-pg/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-module-techdocs/package.json.cjs.js +1 -1
- package/dist/plugins/search-backend-node/package.json.cjs.js +1 -1
- package/dist/plugins/search-react/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs-backend/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs-module-addons-contrib/package.json.cjs.js +1 -1
- package/dist/plugins/techdocs-react/package.json.cjs.js +1 -1
- package/dist/plugins/user-settings/package.json.cjs.js +1 -1
- package/package.json +4 -5
- package/templates/default-app/packages/backend/package.json.hbs +1 -0
- package/templates/default-app/packages/backend/src/index.ts +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @backstage/create-app
|
|
2
2
|
|
|
3
|
+
## 0.5.23-next.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- e913fdf: Add github backend module to create-app and improve error messages
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
- @backstage/cli-common@0.1.15
|
|
10
|
+
|
|
11
|
+
## 0.5.23-next.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- 5c9cc05: Use native fetch instead of node-fetch
|
|
16
|
+
- Updated dependencies
|
|
17
|
+
- @backstage/cli-common@0.1.15
|
|
18
|
+
|
|
3
19
|
## 0.5.23-next.0
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/dist/lib/tasks.cjs.js
CHANGED
|
@@ -6,7 +6,6 @@ var handlebars = require('handlebars');
|
|
|
6
6
|
var ora = require('ora');
|
|
7
7
|
var recursive = require('recursive-readdir');
|
|
8
8
|
var path = require('path');
|
|
9
|
-
var fetch = require('node-fetch');
|
|
10
9
|
var child_process = require('child_process');
|
|
11
10
|
var versions = require('./versions.cjs.js');
|
|
12
11
|
var util = require('util');
|
|
@@ -19,7 +18,6 @@ var fs__default = /*#__PURE__*/_interopDefaultCompat(fs);
|
|
|
19
18
|
var handlebars__default = /*#__PURE__*/_interopDefaultCompat(handlebars);
|
|
20
19
|
var ora__default = /*#__PURE__*/_interopDefaultCompat(ora);
|
|
21
20
|
var recursive__default = /*#__PURE__*/_interopDefaultCompat(recursive);
|
|
22
|
-
var fetch__default = /*#__PURE__*/_interopDefaultCompat(fetch);
|
|
23
21
|
var os__default = /*#__PURE__*/_interopDefaultCompat(os);
|
|
24
22
|
|
|
25
23
|
const TASK_NAME_MAX_LENGTH = 14;
|
|
@@ -203,7 +201,7 @@ async function fetchYarnLockSeedTask(dir) {
|
|
|
203
201
|
await Task.forItem("fetching", "yarn.lock seed", async () => {
|
|
204
202
|
const controller = new AbortController();
|
|
205
203
|
const timeout = setTimeout(() => controller.abort(), 3e3);
|
|
206
|
-
const res = await
|
|
204
|
+
const res = await fetch(
|
|
207
205
|
"https://raw.githubusercontent.com/backstage/backstage/master/packages/create-app/seed-yarn.lock",
|
|
208
206
|
{
|
|
209
207
|
signal: controller.signal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasks.cjs.js","sources":["../../src/lib/tasks.ts"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport chalk from 'chalk';\nimport fs from 'fs-extra';\nimport handlebars from 'handlebars';\nimport ora from 'ora';\nimport recursive from 'recursive-readdir';\nimport {\n basename,\n dirname,\n resolve as resolvePath,\n relative as relativePath,\n} from 'path';\nimport fetch from 'node-fetch';\nimport { exec as execCb } from 'child_process';\nimport { packageVersions } from './versions';\nimport { promisify } from 'util';\nimport os from 'os';\n\nconst TASK_NAME_MAX_LENGTH = 14;\nconst TEN_MINUTES_MS = 1000 * 60 * 10;\nconst exec = promisify(execCb);\n\nexport type GitConfig = {\n defaultBranch?: string;\n};\n\nexport class Task {\n static log(name: string = '') {\n process.stdout.write(`${chalk.green(name)}\\n`);\n }\n\n static error(message: string = '') {\n process.stdout.write(`\\n${chalk.red(message)}\\n\\n`);\n }\n\n static section(name: string) {\n const title = chalk.green(`${name}:`);\n process.stdout.write(`\\n ${title}\\n`);\n }\n\n static exit(code: number = 0) {\n process.exit(code);\n }\n\n static async forItem(\n task: string,\n item: string,\n taskFunc: () => Promise<void>,\n ): Promise<void> {\n const paddedTask = chalk.green(task.padEnd(TASK_NAME_MAX_LENGTH));\n\n const spinner = ora({\n prefixText: chalk.green(` ${paddedTask}${chalk.cyan(item)}`),\n spinner: 'arc',\n color: 'green',\n }).start();\n\n try {\n await taskFunc();\n spinner.succeed();\n } catch (error) {\n spinner.fail();\n throw error;\n }\n }\n}\n\n/**\n * Generate a templated backstage project\n *\n * @param templateDir - location containing template files\n * @param destinationDir - location to save templated project\n * @param context - template parameters\n */\nexport async function templatingTask(\n templateDir: string,\n destinationDir: string,\n context: any,\n) {\n const files = await recursive(templateDir).catch(error => {\n throw new Error(`Failed to read template directory: ${error.message}`);\n });\n\n for (const file of files) {\n const destinationFile = resolvePath(\n destinationDir,\n relativePath(templateDir, file),\n );\n await fs.ensureDir(dirname(destinationFile));\n\n if (file.endsWith('.hbs')) {\n await Task.forItem('templating', basename(file), async () => {\n const destination = destinationFile.replace(/\\.hbs$/, '');\n\n const template = await fs.readFile(file);\n const compiled = handlebars.compile(template.toString());\n const contents = compiled(\n { name: basename(destination), ...context },\n {\n helpers: {\n version(name: keyof typeof packageVersions) {\n if (name in packageVersions) {\n return packageVersions[name];\n }\n throw new Error(`No version available for package ${name}`);\n },\n },\n },\n );\n\n await fs.writeFile(destination, contents).catch(error => {\n throw new Error(\n `Failed to create file: ${destination}: ${error.message}`,\n );\n });\n });\n } else {\n await Task.forItem('copying', basename(file), async () => {\n await fs.copyFile(file, destinationFile).catch(error => {\n const destination = destinationFile;\n throw new Error(\n `Failed to copy file to ${destination} : ${error.message}`,\n );\n });\n });\n }\n }\n}\n\n/**\n * Verify that application target does not already exist\n *\n * @param rootDir - The directory to create application folder `name`\n * @param name - The specified name of the application\n * @Throws Error - If directory with name of `destination` already exists\n */\nexport async function checkAppExistsTask(rootDir: string, name: string) {\n await Task.forItem('checking', name, async () => {\n const destination = resolvePath(rootDir, name);\n\n if (await fs.pathExists(destination)) {\n const existing = chalk.cyan(destination.replace(`${rootDir}/`, ''));\n throw new Error(\n `A directory with the same name already exists: ${existing}\\nPlease try again with a different app name`,\n );\n }\n });\n}\n\n/**\n * Verify that application `path` exists, otherwise create the directory\n *\n * @param path - target to create directory\n * @throws if `path` is a file, or `fs.mkdir` fails\n */\nexport async function checkPathExistsTask(path: string) {\n await Task.forItem('checking', path, async () => {\n try {\n await fs.mkdirs(path);\n } catch (error) {\n // will fail if a file already exists at given `path`\n throw new Error(`Failed to create app directory: ${error.message}`);\n }\n });\n}\n\n/**\n * Run `yarn install` and `run tsc` in application directory\n *\n * @param appDir - location of application to build\n */\nexport async function buildAppTask(appDir: string) {\n process.chdir(appDir);\n\n const runCmd = async (cmd: string) => {\n await Task.forItem('executing', cmd, async () => {\n await exec(cmd).catch(error => {\n process.stdout.write(error.stderr);\n process.stdout.write(error.stdout);\n throw new Error(`Could not execute command ${chalk.cyan(cmd)}`);\n });\n });\n };\n\n const installTimeout = setTimeout(() => {\n Task.error(\n \"\\n⏱️ It's taking a long time to install dependencies, you may want to exit (Ctrl-C) and run 'yarn install' and 'yarn tsc' manually\",\n );\n }, TEN_MINUTES_MS);\n\n await runCmd('yarn install').finally(() => clearTimeout(installTimeout));\n await runCmd('yarn tsc');\n}\n\n/**\n * Move temporary directory to destination application folder\n *\n * @param tempDir - source path to copy files from\n * @param destination - target path to copy files\n * @param id - item ID\n * @throws if `fs.move` fails\n */\nexport async function moveAppTask(\n tempDir: string,\n destination: string,\n id: string,\n) {\n await Task.forItem('moving', id, async () => {\n await fs\n .move(tempDir, destination)\n .catch(error => {\n throw new Error(\n `Failed to move app from ${tempDir} to ${destination}: ${error.message}`,\n );\n })\n .finally(() => {\n // remove temporary files on both success and failure\n fs.removeSync(tempDir);\n });\n });\n}\n\n/**\n * Read git configs by creating a temp folder and initializing a repo\n *\n * @throws if `exec` fails\n */\nexport async function readGitConfig(): Promise<GitConfig | undefined> {\n const tempDir = await fs.mkdtemp(resolvePath(os.tmpdir(), 'git-temp-dir-'));\n\n try {\n await exec('git init', { cwd: tempDir });\n await exec('git commit --allow-empty -m \"Initial commit\"', {\n cwd: tempDir,\n });\n\n const getDefaultBranch = await exec(\n 'git branch --format=\"%(refname:short)\"',\n { cwd: tempDir },\n );\n\n return {\n defaultBranch: getDefaultBranch.stdout?.trim() || undefined,\n };\n } catch (error) {\n return undefined;\n } finally {\n await fs.rm(tempDir, { recursive: true });\n }\n}\n\n/**\n * Initializes a git repository in the destination folder if possible\n *\n * @param dir - source path to initialize git repository in\n * @returns true if git repository was initialized\n */\nexport async function tryInitGitRepository(dir: string) {\n try {\n // Check if we're already in a git repo\n await exec('git rev-parse --is-inside-work-tree', { cwd: dir });\n return false;\n } catch {\n /* ignored */\n }\n\n try {\n await exec('git init', { cwd: dir });\n await exec('git add .', { cwd: dir });\n await exec('git commit -m \"Initial commit\"', { cwd: dir });\n return true;\n } catch (error) {\n try {\n await fs.rm(resolvePath(dir, '.git'), { recursive: true, force: true });\n } catch {\n throw new Error('Failed to remove .git folder');\n }\n\n return false;\n }\n}\n\n/**\n * This fetches the yarn.lock seed file at https://github.com/backstage/backstage/blob/master/packages/create-app/seed-yarn.lock\n * Its purpose is to lock individual dependencies with broken releases to known working versions.\n * This flow is decoupled from the release of the create-app package in order to avoid\n * the need to re-publish the create-app package whenever we want to update the seed file.\n *\n * @returns true if the yarn.lock seed file was fetched successfully\n */\nexport async function fetchYarnLockSeedTask(dir: string) {\n try {\n await Task.forItem('fetching', 'yarn.lock seed', async () => {\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 3000);\n const res = await fetch(\n 'https://raw.githubusercontent.com/backstage/backstage/master/packages/create-app/seed-yarn.lock',\n {\n signal: controller.signal,\n },\n );\n clearTimeout(timeout);\n\n if (!res.ok) {\n throw new Error(\n `Request failed with status ${res.status} ${res.statusText}`,\n );\n }\n\n const initialYarnLockContent = await res.text();\n\n await fs.writeFile(\n resolvePath(dir, 'yarn.lock'),\n initialYarnLockContent\n .split('\\n')\n .filter(l => !l.startsWith('//'))\n .join('\\n'),\n 'utf8',\n );\n });\n return true;\n } catch {\n return false;\n }\n}\n"],"names":["promisify","execCb","chalk","ora","recursive","resolvePath","relativePath","fs","dirname","basename","handlebars","packageVersions","os","fetch"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tasks.cjs.js","sources":["../../src/lib/tasks.ts"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport chalk from 'chalk';\nimport fs from 'fs-extra';\nimport handlebars from 'handlebars';\nimport ora from 'ora';\nimport recursive from 'recursive-readdir';\nimport {\n basename,\n dirname,\n resolve as resolvePath,\n relative as relativePath,\n} from 'path';\nimport { exec as execCb } from 'child_process';\nimport { packageVersions } from './versions';\nimport { promisify } from 'util';\nimport os from 'os';\n\nconst TASK_NAME_MAX_LENGTH = 14;\nconst TEN_MINUTES_MS = 1000 * 60 * 10;\nconst exec = promisify(execCb);\n\nexport type GitConfig = {\n defaultBranch?: string;\n};\n\nexport class Task {\n static log(name: string = '') {\n process.stdout.write(`${chalk.green(name)}\\n`);\n }\n\n static error(message: string = '') {\n process.stdout.write(`\\n${chalk.red(message)}\\n\\n`);\n }\n\n static section(name: string) {\n const title = chalk.green(`${name}:`);\n process.stdout.write(`\\n ${title}\\n`);\n }\n\n static exit(code: number = 0) {\n process.exit(code);\n }\n\n static async forItem(\n task: string,\n item: string,\n taskFunc: () => Promise<void>,\n ): Promise<void> {\n const paddedTask = chalk.green(task.padEnd(TASK_NAME_MAX_LENGTH));\n\n const spinner = ora({\n prefixText: chalk.green(` ${paddedTask}${chalk.cyan(item)}`),\n spinner: 'arc',\n color: 'green',\n }).start();\n\n try {\n await taskFunc();\n spinner.succeed();\n } catch (error) {\n spinner.fail();\n throw error;\n }\n }\n}\n\n/**\n * Generate a templated backstage project\n *\n * @param templateDir - location containing template files\n * @param destinationDir - location to save templated project\n * @param context - template parameters\n */\nexport async function templatingTask(\n templateDir: string,\n destinationDir: string,\n context: any,\n) {\n const files = await recursive(templateDir).catch(error => {\n throw new Error(`Failed to read template directory: ${error.message}`);\n });\n\n for (const file of files) {\n const destinationFile = resolvePath(\n destinationDir,\n relativePath(templateDir, file),\n );\n await fs.ensureDir(dirname(destinationFile));\n\n if (file.endsWith('.hbs')) {\n await Task.forItem('templating', basename(file), async () => {\n const destination = destinationFile.replace(/\\.hbs$/, '');\n\n const template = await fs.readFile(file);\n const compiled = handlebars.compile(template.toString());\n const contents = compiled(\n { name: basename(destination), ...context },\n {\n helpers: {\n version(name: keyof typeof packageVersions) {\n if (name in packageVersions) {\n return packageVersions[name];\n }\n throw new Error(`No version available for package ${name}`);\n },\n },\n },\n );\n\n await fs.writeFile(destination, contents).catch(error => {\n throw new Error(\n `Failed to create file: ${destination}: ${error.message}`,\n );\n });\n });\n } else {\n await Task.forItem('copying', basename(file), async () => {\n await fs.copyFile(file, destinationFile).catch(error => {\n const destination = destinationFile;\n throw new Error(\n `Failed to copy file to ${destination} : ${error.message}`,\n );\n });\n });\n }\n }\n}\n\n/**\n * Verify that application target does not already exist\n *\n * @param rootDir - The directory to create application folder `name`\n * @param name - The specified name of the application\n * @Throws Error - If directory with name of `destination` already exists\n */\nexport async function checkAppExistsTask(rootDir: string, name: string) {\n await Task.forItem('checking', name, async () => {\n const destination = resolvePath(rootDir, name);\n\n if (await fs.pathExists(destination)) {\n const existing = chalk.cyan(destination.replace(`${rootDir}/`, ''));\n throw new Error(\n `A directory with the same name already exists: ${existing}\\nPlease try again with a different app name`,\n );\n }\n });\n}\n\n/**\n * Verify that application `path` exists, otherwise create the directory\n *\n * @param path - target to create directory\n * @throws if `path` is a file, or `fs.mkdir` fails\n */\nexport async function checkPathExistsTask(path: string) {\n await Task.forItem('checking', path, async () => {\n try {\n await fs.mkdirs(path);\n } catch (error) {\n // will fail if a file already exists at given `path`\n throw new Error(`Failed to create app directory: ${error.message}`);\n }\n });\n}\n\n/**\n * Run `yarn install` and `run tsc` in application directory\n *\n * @param appDir - location of application to build\n */\nexport async function buildAppTask(appDir: string) {\n process.chdir(appDir);\n\n const runCmd = async (cmd: string) => {\n await Task.forItem('executing', cmd, async () => {\n await exec(cmd).catch(error => {\n process.stdout.write(error.stderr);\n process.stdout.write(error.stdout);\n throw new Error(`Could not execute command ${chalk.cyan(cmd)}`);\n });\n });\n };\n\n const installTimeout = setTimeout(() => {\n Task.error(\n \"\\n⏱️ It's taking a long time to install dependencies, you may want to exit (Ctrl-C) and run 'yarn install' and 'yarn tsc' manually\",\n );\n }, TEN_MINUTES_MS);\n\n await runCmd('yarn install').finally(() => clearTimeout(installTimeout));\n await runCmd('yarn tsc');\n}\n\n/**\n * Move temporary directory to destination application folder\n *\n * @param tempDir - source path to copy files from\n * @param destination - target path to copy files\n * @param id - item ID\n * @throws if `fs.move` fails\n */\nexport async function moveAppTask(\n tempDir: string,\n destination: string,\n id: string,\n) {\n await Task.forItem('moving', id, async () => {\n await fs\n .move(tempDir, destination)\n .catch(error => {\n throw new Error(\n `Failed to move app from ${tempDir} to ${destination}: ${error.message}`,\n );\n })\n .finally(() => {\n // remove temporary files on both success and failure\n fs.removeSync(tempDir);\n });\n });\n}\n\n/**\n * Read git configs by creating a temp folder and initializing a repo\n *\n * @throws if `exec` fails\n */\nexport async function readGitConfig(): Promise<GitConfig | undefined> {\n const tempDir = await fs.mkdtemp(resolvePath(os.tmpdir(), 'git-temp-dir-'));\n\n try {\n await exec('git init', { cwd: tempDir });\n await exec('git commit --allow-empty -m \"Initial commit\"', {\n cwd: tempDir,\n });\n\n const getDefaultBranch = await exec(\n 'git branch --format=\"%(refname:short)\"',\n { cwd: tempDir },\n );\n\n return {\n defaultBranch: getDefaultBranch.stdout?.trim() || undefined,\n };\n } catch (error) {\n return undefined;\n } finally {\n await fs.rm(tempDir, { recursive: true });\n }\n}\n\n/**\n * Initializes a git repository in the destination folder if possible\n *\n * @param dir - source path to initialize git repository in\n * @returns true if git repository was initialized\n */\nexport async function tryInitGitRepository(dir: string) {\n try {\n // Check if we're already in a git repo\n await exec('git rev-parse --is-inside-work-tree', { cwd: dir });\n return false;\n } catch {\n /* ignored */\n }\n\n try {\n await exec('git init', { cwd: dir });\n await exec('git add .', { cwd: dir });\n await exec('git commit -m \"Initial commit\"', { cwd: dir });\n return true;\n } catch (error) {\n try {\n await fs.rm(resolvePath(dir, '.git'), { recursive: true, force: true });\n } catch {\n throw new Error('Failed to remove .git folder');\n }\n\n return false;\n }\n}\n\n/**\n * This fetches the yarn.lock seed file at https://github.com/backstage/backstage/blob/master/packages/create-app/seed-yarn.lock\n * Its purpose is to lock individual dependencies with broken releases to known working versions.\n * This flow is decoupled from the release of the create-app package in order to avoid\n * the need to re-publish the create-app package whenever we want to update the seed file.\n *\n * @returns true if the yarn.lock seed file was fetched successfully\n */\nexport async function fetchYarnLockSeedTask(dir: string) {\n try {\n await Task.forItem('fetching', 'yarn.lock seed', async () => {\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 3000);\n const res = await fetch(\n 'https://raw.githubusercontent.com/backstage/backstage/master/packages/create-app/seed-yarn.lock',\n {\n signal: controller.signal,\n },\n );\n clearTimeout(timeout);\n\n if (!res.ok) {\n throw new Error(\n `Request failed with status ${res.status} ${res.statusText}`,\n );\n }\n\n const initialYarnLockContent = await res.text();\n\n await fs.writeFile(\n resolvePath(dir, 'yarn.lock'),\n initialYarnLockContent\n .split('\\n')\n .filter(l => !l.startsWith('//'))\n .join('\\n'),\n 'utf8',\n );\n });\n return true;\n } catch {\n return false;\n }\n}\n"],"names":["promisify","execCb","chalk","ora","recursive","resolvePath","relativePath","fs","dirname","basename","handlebars","packageVersions","os"],"mappings":"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"}
|
package/dist/lib/versions.cjs.js
CHANGED
|
@@ -13,8 +13,8 @@ var _package$9 = require('../packages/core-plugin-api/package.json.cjs.js');
|
|
|
13
13
|
var _package$a = require('../packages/e2e-test-utils/package.json.cjs.js');
|
|
14
14
|
var _package$b = require('../packages/errors/package.json.cjs.js');
|
|
15
15
|
var _package$c = require('../packages/integration-react/package.json.cjs.js');
|
|
16
|
-
var _package$
|
|
17
|
-
var _package$
|
|
16
|
+
var _package$Q = require('../packages/test-utils/package.json.cjs.js');
|
|
17
|
+
var _package$R = require('../packages/theme/package.json.cjs.js');
|
|
18
18
|
var _package$d = require('../packages/repo-tools/package.json.cjs.js');
|
|
19
19
|
var _package$e = require('../plugins/api-docs/package.json.cjs.js');
|
|
20
20
|
var _package$f = require('../plugins/app-backend/package.json.cjs.js');
|
|
@@ -41,18 +41,19 @@ var _package$y = require('../plugins/permission-node/package.json.cjs.js');
|
|
|
41
41
|
var _package$A = require('../plugins/proxy-backend/package.json.cjs.js');
|
|
42
42
|
var _package$B = require('../plugins/scaffolder/package.json.cjs.js');
|
|
43
43
|
var _package$C = require('../plugins/scaffolder-backend/package.json.cjs.js');
|
|
44
|
-
var _package$D = require('../plugins/
|
|
45
|
-
var _package$E = require('../plugins/search
|
|
46
|
-
var _package$F = require('../plugins/search-
|
|
47
|
-
var _package$G = require('../plugins/search-backend
|
|
48
|
-
var _package$H = require('../plugins/search-backend-module-
|
|
49
|
-
var _package$I = require('../plugins/search-backend-module-
|
|
50
|
-
var _package$J = require('../plugins/search-backend-
|
|
51
|
-
var _package$K = require('../plugins/
|
|
52
|
-
var _package$L = require('../plugins/techdocs
|
|
53
|
-
var _package$M = require('../plugins/techdocs-
|
|
54
|
-
var _package$N = require('../plugins/techdocs-
|
|
55
|
-
var _package$O = require('../plugins/
|
|
44
|
+
var _package$D = require('../plugins/scaffolder-backend-module-github/package.json.cjs.js');
|
|
45
|
+
var _package$E = require('../plugins/search/package.json.cjs.js');
|
|
46
|
+
var _package$F = require('../plugins/search-react/package.json.cjs.js');
|
|
47
|
+
var _package$G = require('../plugins/search-backend/package.json.cjs.js');
|
|
48
|
+
var _package$H = require('../plugins/search-backend-module-catalog/package.json.cjs.js');
|
|
49
|
+
var _package$I = require('../plugins/search-backend-module-pg/package.json.cjs.js');
|
|
50
|
+
var _package$J = require('../plugins/search-backend-module-techdocs/package.json.cjs.js');
|
|
51
|
+
var _package$K = require('../plugins/search-backend-node/package.json.cjs.js');
|
|
52
|
+
var _package$L = require('../plugins/techdocs/package.json.cjs.js');
|
|
53
|
+
var _package$M = require('../plugins/techdocs-react/package.json.cjs.js');
|
|
54
|
+
var _package$N = require('../plugins/techdocs-module-addons-contrib/package.json.cjs.js');
|
|
55
|
+
var _package$O = require('../plugins/techdocs-backend/package.json.cjs.js');
|
|
56
|
+
var _package$P = require('../plugins/user-settings/package.json.cjs.js');
|
|
56
57
|
|
|
57
58
|
const packageVersions = {
|
|
58
59
|
root: _package.version,
|
|
@@ -94,20 +95,21 @@ const packageVersions = {
|
|
|
94
95
|
"@backstage/plugin-proxy-backend": _package$A.version,
|
|
95
96
|
"@backstage/plugin-scaffolder": _package$B.version,
|
|
96
97
|
"@backstage/plugin-scaffolder-backend": _package$C.version,
|
|
97
|
-
"@backstage/plugin-
|
|
98
|
-
"@backstage/plugin-search
|
|
99
|
-
"@backstage/plugin-search-
|
|
100
|
-
"@backstage/plugin-search-backend
|
|
101
|
-
"@backstage/plugin-search-backend-module-
|
|
102
|
-
"@backstage/plugin-search-backend-module-
|
|
103
|
-
"@backstage/plugin-search-backend-
|
|
104
|
-
"@backstage/plugin-
|
|
105
|
-
"@backstage/plugin-techdocs
|
|
106
|
-
"@backstage/plugin-techdocs-
|
|
107
|
-
"@backstage/plugin-techdocs-
|
|
108
|
-
"@backstage/plugin-
|
|
109
|
-
"@backstage/
|
|
110
|
-
"@backstage/
|
|
98
|
+
"@backstage/plugin-scaffolder-backend-module-github": _package$D.version,
|
|
99
|
+
"@backstage/plugin-search": _package$E.version,
|
|
100
|
+
"@backstage/plugin-search-react": _package$F.version,
|
|
101
|
+
"@backstage/plugin-search-backend": _package$G.version,
|
|
102
|
+
"@backstage/plugin-search-backend-module-catalog": _package$H.version,
|
|
103
|
+
"@backstage/plugin-search-backend-module-pg": _package$I.version,
|
|
104
|
+
"@backstage/plugin-search-backend-module-techdocs": _package$J.version,
|
|
105
|
+
"@backstage/plugin-search-backend-node": _package$K.version,
|
|
106
|
+
"@backstage/plugin-techdocs": _package$L.version,
|
|
107
|
+
"@backstage/plugin-techdocs-react": _package$M.version,
|
|
108
|
+
"@backstage/plugin-techdocs-module-addons-contrib": _package$N.version,
|
|
109
|
+
"@backstage/plugin-techdocs-backend": _package$O.version,
|
|
110
|
+
"@backstage/plugin-user-settings": _package$P.version,
|
|
111
|
+
"@backstage/test-utils": _package$Q.version,
|
|
112
|
+
"@backstage/theme": _package$R.version
|
|
111
113
|
};
|
|
112
114
|
|
|
113
115
|
exports.packageVersions = packageVersions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versions.cjs.js","sources":["../../src/lib/versions.ts"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/* eslint-disable @backstage/no-relative-monorepo-imports */\n\n/*\nThis is a list of all packages used by the template. If dependencies are added or removed,\nthis list should be updated as well.\n\nThere is a release step that ensures that this package is always bumped with every\nrelease, meaning these version will always be up to date.\n\nThis does not create an actual dependency on these packages and does not bring in any code.\nRelative imports are used rather than package imports to make sure the packages aren't externalized.\nRollup will extract the value of the version field in each package at build time without\nleaving any imports in place.\n*/\n\nimport { version as root } from '../../../../package.json';\n\nimport { version as appDefaults } from '../../../app-defaults/package.json';\nimport { version as backendDefaults } from '../../../backend-defaults/package.json';\nimport { version as catalogClient } from '../../../catalog-client/package.json';\nimport { version as catalogModel } from '../../../catalog-model/package.json';\nimport { version as cli } from '../../../cli/package.json';\nimport { version as config } from '../../../config/package.json';\nimport { version as coreAppApi } from '../../../core-app-api/package.json';\nimport { version as coreComponents } from '../../../core-components/package.json';\nimport { version as corePluginApi } from '../../../core-plugin-api/package.json';\nimport { version as e2eTestUtils } from '../../../e2e-test-utils/package.json';\nimport { version as errors } from '../../../errors/package.json';\nimport { version as integrationReact } from '../../../integration-react/package.json';\nimport { version as testUtils } from '../../../test-utils/package.json';\nimport { version as theme } from '../../../theme/package.json';\nimport { version as repoTools } from '../../../repo-tools/package.json';\n\nimport { version as pluginApiDocs } from '../../../../plugins/api-docs/package.json';\nimport { version as pluginAppBackend } from '../../../../plugins/app-backend/package.json';\nimport { version as pluginAuthBackend } from '../../../../plugins/auth-backend/package.json';\nimport { version as pluginAuthBackendModuleGithubProvider } from '../../../../plugins/auth-backend-module-github-provider/package.json';\nimport { version as pluginAuthBackendModuleGuestProvider } from '../../../../plugins/auth-backend-module-guest-provider/package.json';\nimport { version as pluginAuthNode } from '../../../../plugins/auth-node/package.json';\nimport { version as pluginCatalog } from '../../../../plugins/catalog/package.json';\nimport { version as pluginCatalogCommon } from '../../../../plugins/catalog-common/package.json';\nimport { version as pluginCatalogReact } from '../../../../plugins/catalog-react/package.json';\nimport { version as pluginCatalogBackend } from '../../../../plugins/catalog-backend/package.json';\nimport { version as pluginCatalogBackendModuleLogs } from '../../../../plugins/catalog-backend-module-logs/package.json';\nimport { version as pluginCatalogBackendModuleScaffolderEntityModel } from '../../../../plugins/catalog-backend-module-scaffolder-entity-model/package.json';\nimport { version as pluginCatalogGraph } from '../../../../plugins/catalog-graph/package.json';\nimport { version as pluginCatalogImport } from '../../../../plugins/catalog-import/package.json';\nimport { version as pluginKubernetes } from '../../../../plugins/kubernetes/package.json';\nimport { version as pluginKubernetesBackend } from '../../../../plugins/kubernetes-backend/package.json';\nimport { version as pluginOrg } from '../../../../plugins/org/package.json';\nimport { version as pluginPermissionBackend } from '../../../../plugins/permission-backend/package.json';\nimport { version as pluginPermissionBackendModulePolicyAllowAll } from '../../../../plugins/permission-backend-module-policy-allow-all/package.json';\nimport { version as pluginPermissionCommon } from '../../../../plugins/permission-common/package.json';\nimport { version as pluginPermissionReact } from '../../../../plugins/permission-react/package.json';\nimport { version as pluginPermissionNode } from '../../../../plugins/permission-node/package.json';\nimport { version as pluginProxyBackend } from '../../../../plugins/proxy-backend/package.json';\nimport { version as pluginScaffolder } from '../../../../plugins/scaffolder/package.json';\nimport { version as pluginScaffolderBackend } from '../../../../plugins/scaffolder-backend/package.json';\nimport { version as pluginSearch } from '../../../../plugins/search/package.json';\nimport { version as pluginSearchReact } from '../../../../plugins/search-react/package.json';\nimport { version as pluginSearchBackend } from '../../../../plugins/search-backend/package.json';\nimport { version as pluginSearchBackendModuleCatalog } from '../../../../plugins/search-backend-module-catalog/package.json';\nimport { version as pluginSearchBackendModulePg } from '../../../../plugins/search-backend-module-pg/package.json';\nimport { version as pluginSearchBackendModuleTechdocs } from '../../../../plugins/search-backend-module-techdocs/package.json';\nimport { version as pluginSearchBackendNode } from '../../../../plugins/search-backend-node/package.json';\nimport { version as pluginTechdocs } from '../../../../plugins/techdocs/package.json';\nimport { version as pluginTechdocsReact } from '../../../../plugins/techdocs-react/package.json';\nimport { version as pluginTechdocsModuleAddonsContrib } from '../../../../plugins/techdocs-module-addons-contrib/package.json';\nimport { version as pluginTechdocsBackend } from '../../../../plugins/techdocs-backend/package.json';\nimport { version as pluginUserSettings } from '../../../../plugins/user-settings/package.json';\n\nexport const packageVersions = {\n root,\n '@backstage/app-defaults': appDefaults,\n '@backstage/backend-defaults': backendDefaults,\n '@backstage/catalog-client': catalogClient,\n '@backstage/catalog-model': catalogModel,\n '@backstage/cli': cli,\n '@backstage/config': config,\n '@backstage/core-app-api': coreAppApi,\n '@backstage/core-components': coreComponents,\n '@backstage/core-plugin-api': corePluginApi,\n '@backstage/e2e-test-utils': e2eTestUtils,\n '@backstage/errors': errors,\n '@backstage/integration-react': integrationReact,\n '@backstage/repo-tools': repoTools,\n '@backstage/plugin-api-docs': pluginApiDocs,\n '@backstage/plugin-app-backend': pluginAppBackend,\n '@backstage/plugin-auth-backend': pluginAuthBackend,\n '@backstage/plugin-auth-backend-module-github-provider':\n pluginAuthBackendModuleGithubProvider,\n '@backstage/plugin-auth-backend-module-guest-provider':\n pluginAuthBackendModuleGuestProvider,\n '@backstage/plugin-auth-node': pluginAuthNode,\n '@backstage/plugin-catalog': pluginCatalog,\n '@backstage/plugin-catalog-common': pluginCatalogCommon,\n '@backstage/plugin-catalog-react': pluginCatalogReact,\n '@backstage/plugin-catalog-backend': pluginCatalogBackend,\n '@backstage/plugin-catalog-backend-module-logs':\n pluginCatalogBackendModuleLogs,\n '@backstage/plugin-catalog-backend-module-scaffolder-entity-model':\n pluginCatalogBackendModuleScaffolderEntityModel,\n '@backstage/plugin-catalog-graph': pluginCatalogGraph,\n '@backstage/plugin-catalog-import': pluginCatalogImport,\n '@backstage/plugin-kubernetes': pluginKubernetes,\n '@backstage/plugin-kubernetes-backend': pluginKubernetesBackend,\n '@backstage/plugin-org': pluginOrg,\n '@backstage/plugin-permission-backend': pluginPermissionBackend,\n '@backstage/plugin-permission-backend-module-allow-all-policy':\n pluginPermissionBackendModulePolicyAllowAll,\n '@backstage/plugin-permission-common': pluginPermissionCommon,\n '@backstage/plugin-permission-node': pluginPermissionNode,\n '@backstage/plugin-permission-react': pluginPermissionReact,\n '@backstage/plugin-proxy-backend': pluginProxyBackend,\n '@backstage/plugin-scaffolder': pluginScaffolder,\n '@backstage/plugin-scaffolder-backend': pluginScaffolderBackend,\n '@backstage/plugin-search': pluginSearch,\n '@backstage/plugin-search-react': pluginSearchReact,\n '@backstage/plugin-search-backend': pluginSearchBackend,\n '@backstage/plugin-search-backend-module-catalog':\n pluginSearchBackendModuleCatalog,\n '@backstage/plugin-search-backend-module-pg': pluginSearchBackendModulePg,\n '@backstage/plugin-search-backend-module-techdocs':\n pluginSearchBackendModuleTechdocs,\n '@backstage/plugin-search-backend-node': pluginSearchBackendNode,\n '@backstage/plugin-techdocs': pluginTechdocs,\n '@backstage/plugin-techdocs-react': pluginTechdocsReact,\n '@backstage/plugin-techdocs-module-addons-contrib':\n pluginTechdocsModuleAddonsContrib,\n '@backstage/plugin-techdocs-backend': pluginTechdocsBackend,\n '@backstage/plugin-user-settings': pluginUserSettings,\n '@backstage/test-utils': testUtils,\n '@backstage/theme': theme,\n};\n"],"names":["root","appDefaults","backendDefaults","catalogClient","catalogModel","cli","config","coreAppApi","coreComponents","corePluginApi","e2eTestUtils","errors","integrationReact","repoTools","pluginApiDocs","pluginAppBackend","pluginAuthBackend","pluginAuthBackendModuleGithubProvider","pluginAuthBackendModuleGuestProvider","pluginAuthNode","pluginCatalog","pluginCatalogCommon","pluginCatalogReact","pluginCatalogBackend","pluginCatalogBackendModuleLogs","pluginCatalogBackendModuleScaffolderEntityModel","pluginCatalogGraph","pluginCatalogImport","pluginKubernetes","pluginKubernetesBackend","pluginOrg","pluginPermissionBackend","pluginPermissionBackendModulePolicyAllowAll","pluginPermissionCommon","pluginPermissionNode","pluginPermissionReact","pluginProxyBackend","pluginScaffolder","pluginScaffolderBackend","pluginSearch","pluginSearchReact","pluginSearchBackend","pluginSearchBackendModuleCatalog","pluginSearchBackendModulePg","pluginSearchBackendModuleTechdocs","pluginSearchBackendNode","pluginTechdocs","pluginTechdocsReact","pluginTechdocsModuleAddonsContrib","pluginTechdocsBackend","pluginUserSettings","testUtils","theme"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuFO,MAAM,eAAkB,GAAA;AAAA,QAC7BA,gBAAA;AAAA,EACA,yBAA2B,EAAAC,kBAAA;AAAA,EAC3B,6BAA+B,EAAAC,kBAAA;AAAA,EAC/B,2BAA6B,EAAAC,kBAAA;AAAA,EAC7B,0BAA4B,EAAAC,kBAAA;AAAA,EAC5B,gBAAkB,EAAAC,kBAAA;AAAA,EAClB,mBAAqB,EAAAC,kBAAA;AAAA,EACrB,yBAA2B,EAAAC,kBAAA;AAAA,EAC3B,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,2BAA6B,EAAAC,kBAAA;AAAA,EAC7B,mBAAqB,EAAAC,kBAAA;AAAA,EACrB,8BAAgC,EAAAC,kBAAA;AAAA,EAChC,uBAAyB,EAAAC,kBAAA;AAAA,EACzB,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,+BAAiC,EAAAC,kBAAA;AAAA,EACjC,gCAAkC,EAAAC,kBAAA;AAAA,EAClC,uDACE,EAAAC,kBAAA;AAAA,EACF,sDACE,EAAAC,kBAAA;AAAA,EACF,6BAA+B,EAAAC,kBAAA;AAAA,EAC/B,2BAA6B,EAAAC,kBAAA;AAAA,EAC7B,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,mCAAqC,EAAAC,kBAAA;AAAA,EACrC,+CACE,EAAAC,kBAAA;AAAA,EACF,kEACE,EAAAC,kBAAA;AAAA,EACF,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,8BAAgC,EAAAC,kBAAA;AAAA,EAChC,sCAAwC,EAAAC,kBAAA;AAAA,EACxC,uBAAyB,EAAAC,kBAAA;AAAA,EACzB,sCAAwC,EAAAC,kBAAA;AAAA,EACxC,8DACE,EAAAC,kBAAA;AAAA,EACF,qCAAuC,EAAAC,kBAAA;AAAA,EACvC,mCAAqC,EAAAC,kBAAA;AAAA,EACrC,oCAAsC,EAAAC,kBAAA;AAAA,EACtC,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,8BAAgC,EAAAC,kBAAA;AAAA,EAChC,sCAAwC,EAAAC,kBAAA;AAAA,EACxC,0BAA4B,EAAAC,kBAAA;AAAA,EAC5B,gCAAkC,EAAAC,kBAAA;AAAA,EAClC,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,iDACE,EAAAC,kBAAA;AAAA,EACF,4CAA8C,EAAAC,kBAAA;AAAA,EAC9C,kDACE,EAAAC,kBAAA;AAAA,EACF,uCAAyC,EAAAC,kBAAA;AAAA,EACzC,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,kDACE,EAAAC,kBAAA;AAAA,EACF,oCAAsC,EAAAC,kBAAA;AAAA,EACtC,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,uBAAyB,EAAAC,kBAAA;AAAA,EACzB,kBAAoB,EAAAC;AACtB;;;;"}
|
|
1
|
+
{"version":3,"file":"versions.cjs.js","sources":["../../src/lib/versions.ts"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/* eslint-disable @backstage/no-relative-monorepo-imports */\n\n/*\nThis is a list of all packages used by the template. If dependencies are added or removed,\nthis list should be updated as well.\n\nThere is a release step that ensures that this package is always bumped with every\nrelease, meaning these version will always be up to date.\n\nThis does not create an actual dependency on these packages and does not bring in any code.\nRelative imports are used rather than package imports to make sure the packages aren't externalized.\nRollup will extract the value of the version field in each package at build time without\nleaving any imports in place.\n*/\n\nimport { version as root } from '../../../../package.json';\n\nimport { version as appDefaults } from '../../../app-defaults/package.json';\nimport { version as backendDefaults } from '../../../backend-defaults/package.json';\nimport { version as catalogClient } from '../../../catalog-client/package.json';\nimport { version as catalogModel } from '../../../catalog-model/package.json';\nimport { version as cli } from '../../../cli/package.json';\nimport { version as config } from '../../../config/package.json';\nimport { version as coreAppApi } from '../../../core-app-api/package.json';\nimport { version as coreComponents } from '../../../core-components/package.json';\nimport { version as corePluginApi } from '../../../core-plugin-api/package.json';\nimport { version as e2eTestUtils } from '../../../e2e-test-utils/package.json';\nimport { version as errors } from '../../../errors/package.json';\nimport { version as integrationReact } from '../../../integration-react/package.json';\nimport { version as testUtils } from '../../../test-utils/package.json';\nimport { version as theme } from '../../../theme/package.json';\nimport { version as repoTools } from '../../../repo-tools/package.json';\n\nimport { version as pluginApiDocs } from '../../../../plugins/api-docs/package.json';\nimport { version as pluginAppBackend } from '../../../../plugins/app-backend/package.json';\nimport { version as pluginAuthBackend } from '../../../../plugins/auth-backend/package.json';\nimport { version as pluginAuthBackendModuleGithubProvider } from '../../../../plugins/auth-backend-module-github-provider/package.json';\nimport { version as pluginAuthBackendModuleGuestProvider } from '../../../../plugins/auth-backend-module-guest-provider/package.json';\nimport { version as pluginAuthNode } from '../../../../plugins/auth-node/package.json';\nimport { version as pluginCatalog } from '../../../../plugins/catalog/package.json';\nimport { version as pluginCatalogCommon } from '../../../../plugins/catalog-common/package.json';\nimport { version as pluginCatalogReact } from '../../../../plugins/catalog-react/package.json';\nimport { version as pluginCatalogBackend } from '../../../../plugins/catalog-backend/package.json';\nimport { version as pluginCatalogBackendModuleLogs } from '../../../../plugins/catalog-backend-module-logs/package.json';\nimport { version as pluginCatalogBackendModuleScaffolderEntityModel } from '../../../../plugins/catalog-backend-module-scaffolder-entity-model/package.json';\nimport { version as pluginCatalogGraph } from '../../../../plugins/catalog-graph/package.json';\nimport { version as pluginCatalogImport } from '../../../../plugins/catalog-import/package.json';\nimport { version as pluginKubernetes } from '../../../../plugins/kubernetes/package.json';\nimport { version as pluginKubernetesBackend } from '../../../../plugins/kubernetes-backend/package.json';\nimport { version as pluginOrg } from '../../../../plugins/org/package.json';\nimport { version as pluginPermissionBackend } from '../../../../plugins/permission-backend/package.json';\nimport { version as pluginPermissionBackendModulePolicyAllowAll } from '../../../../plugins/permission-backend-module-policy-allow-all/package.json';\nimport { version as pluginPermissionCommon } from '../../../../plugins/permission-common/package.json';\nimport { version as pluginPermissionReact } from '../../../../plugins/permission-react/package.json';\nimport { version as pluginPermissionNode } from '../../../../plugins/permission-node/package.json';\nimport { version as pluginProxyBackend } from '../../../../plugins/proxy-backend/package.json';\nimport { version as pluginScaffolder } from '../../../../plugins/scaffolder/package.json';\nimport { version as pluginScaffolderBackend } from '../../../../plugins/scaffolder-backend/package.json';\nimport { version as pluginScaffolderBackendModuleGithub } from '../../../../plugins/scaffolder-backend-module-github/package.json';\nimport { version as pluginSearch } from '../../../../plugins/search/package.json';\nimport { version as pluginSearchReact } from '../../../../plugins/search-react/package.json';\nimport { version as pluginSearchBackend } from '../../../../plugins/search-backend/package.json';\nimport { version as pluginSearchBackendModuleCatalog } from '../../../../plugins/search-backend-module-catalog/package.json';\nimport { version as pluginSearchBackendModulePg } from '../../../../plugins/search-backend-module-pg/package.json';\nimport { version as pluginSearchBackendModuleTechdocs } from '../../../../plugins/search-backend-module-techdocs/package.json';\nimport { version as pluginSearchBackendNode } from '../../../../plugins/search-backend-node/package.json';\nimport { version as pluginTechdocs } from '../../../../plugins/techdocs/package.json';\nimport { version as pluginTechdocsReact } from '../../../../plugins/techdocs-react/package.json';\nimport { version as pluginTechdocsModuleAddonsContrib } from '../../../../plugins/techdocs-module-addons-contrib/package.json';\nimport { version as pluginTechdocsBackend } from '../../../../plugins/techdocs-backend/package.json';\nimport { version as pluginUserSettings } from '../../../../plugins/user-settings/package.json';\n\nexport const packageVersions = {\n root,\n '@backstage/app-defaults': appDefaults,\n '@backstage/backend-defaults': backendDefaults,\n '@backstage/catalog-client': catalogClient,\n '@backstage/catalog-model': catalogModel,\n '@backstage/cli': cli,\n '@backstage/config': config,\n '@backstage/core-app-api': coreAppApi,\n '@backstage/core-components': coreComponents,\n '@backstage/core-plugin-api': corePluginApi,\n '@backstage/e2e-test-utils': e2eTestUtils,\n '@backstage/errors': errors,\n '@backstage/integration-react': integrationReact,\n '@backstage/repo-tools': repoTools,\n '@backstage/plugin-api-docs': pluginApiDocs,\n '@backstage/plugin-app-backend': pluginAppBackend,\n '@backstage/plugin-auth-backend': pluginAuthBackend,\n '@backstage/plugin-auth-backend-module-github-provider':\n pluginAuthBackendModuleGithubProvider,\n '@backstage/plugin-auth-backend-module-guest-provider':\n pluginAuthBackendModuleGuestProvider,\n '@backstage/plugin-auth-node': pluginAuthNode,\n '@backstage/plugin-catalog': pluginCatalog,\n '@backstage/plugin-catalog-common': pluginCatalogCommon,\n '@backstage/plugin-catalog-react': pluginCatalogReact,\n '@backstage/plugin-catalog-backend': pluginCatalogBackend,\n '@backstage/plugin-catalog-backend-module-logs':\n pluginCatalogBackendModuleLogs,\n '@backstage/plugin-catalog-backend-module-scaffolder-entity-model':\n pluginCatalogBackendModuleScaffolderEntityModel,\n '@backstage/plugin-catalog-graph': pluginCatalogGraph,\n '@backstage/plugin-catalog-import': pluginCatalogImport,\n '@backstage/plugin-kubernetes': pluginKubernetes,\n '@backstage/plugin-kubernetes-backend': pluginKubernetesBackend,\n '@backstage/plugin-org': pluginOrg,\n '@backstage/plugin-permission-backend': pluginPermissionBackend,\n '@backstage/plugin-permission-backend-module-allow-all-policy':\n pluginPermissionBackendModulePolicyAllowAll,\n '@backstage/plugin-permission-common': pluginPermissionCommon,\n '@backstage/plugin-permission-node': pluginPermissionNode,\n '@backstage/plugin-permission-react': pluginPermissionReact,\n '@backstage/plugin-proxy-backend': pluginProxyBackend,\n '@backstage/plugin-scaffolder': pluginScaffolder,\n '@backstage/plugin-scaffolder-backend': pluginScaffolderBackend,\n '@backstage/plugin-scaffolder-backend-module-github':\n pluginScaffolderBackendModuleGithub,\n '@backstage/plugin-search': pluginSearch,\n '@backstage/plugin-search-react': pluginSearchReact,\n '@backstage/plugin-search-backend': pluginSearchBackend,\n '@backstage/plugin-search-backend-module-catalog':\n pluginSearchBackendModuleCatalog,\n '@backstage/plugin-search-backend-module-pg': pluginSearchBackendModulePg,\n '@backstage/plugin-search-backend-module-techdocs':\n pluginSearchBackendModuleTechdocs,\n '@backstage/plugin-search-backend-node': pluginSearchBackendNode,\n '@backstage/plugin-techdocs': pluginTechdocs,\n '@backstage/plugin-techdocs-react': pluginTechdocsReact,\n '@backstage/plugin-techdocs-module-addons-contrib':\n pluginTechdocsModuleAddonsContrib,\n '@backstage/plugin-techdocs-backend': pluginTechdocsBackend,\n '@backstage/plugin-user-settings': pluginUserSettings,\n '@backstage/test-utils': testUtils,\n '@backstage/theme': theme,\n};\n"],"names":["root","appDefaults","backendDefaults","catalogClient","catalogModel","cli","config","coreAppApi","coreComponents","corePluginApi","e2eTestUtils","errors","integrationReact","repoTools","pluginApiDocs","pluginAppBackend","pluginAuthBackend","pluginAuthBackendModuleGithubProvider","pluginAuthBackendModuleGuestProvider","pluginAuthNode","pluginCatalog","pluginCatalogCommon","pluginCatalogReact","pluginCatalogBackend","pluginCatalogBackendModuleLogs","pluginCatalogBackendModuleScaffolderEntityModel","pluginCatalogGraph","pluginCatalogImport","pluginKubernetes","pluginKubernetesBackend","pluginOrg","pluginPermissionBackend","pluginPermissionBackendModulePolicyAllowAll","pluginPermissionCommon","pluginPermissionNode","pluginPermissionReact","pluginProxyBackend","pluginScaffolder","pluginScaffolderBackend","pluginScaffolderBackendModuleGithub","pluginSearch","pluginSearchReact","pluginSearchBackend","pluginSearchBackendModuleCatalog","pluginSearchBackendModulePg","pluginSearchBackendModuleTechdocs","pluginSearchBackendNode","pluginTechdocs","pluginTechdocsReact","pluginTechdocsModuleAddonsContrib","pluginTechdocsBackend","pluginUserSettings","testUtils","theme"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwFO,MAAM,eAAkB,GAAA;AAAA,QAC7BA,gBAAA;AAAA,EACA,yBAA2B,EAAAC,kBAAA;AAAA,EAC3B,6BAA+B,EAAAC,kBAAA;AAAA,EAC/B,2BAA6B,EAAAC,kBAAA;AAAA,EAC7B,0BAA4B,EAAAC,kBAAA;AAAA,EAC5B,gBAAkB,EAAAC,kBAAA;AAAA,EAClB,mBAAqB,EAAAC,kBAAA;AAAA,EACrB,yBAA2B,EAAAC,kBAAA;AAAA,EAC3B,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,2BAA6B,EAAAC,kBAAA;AAAA,EAC7B,mBAAqB,EAAAC,kBAAA;AAAA,EACrB,8BAAgC,EAAAC,kBAAA;AAAA,EAChC,uBAAyB,EAAAC,kBAAA;AAAA,EACzB,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,+BAAiC,EAAAC,kBAAA;AAAA,EACjC,gCAAkC,EAAAC,kBAAA;AAAA,EAClC,uDACE,EAAAC,kBAAA;AAAA,EACF,sDACE,EAAAC,kBAAA;AAAA,EACF,6BAA+B,EAAAC,kBAAA;AAAA,EAC/B,2BAA6B,EAAAC,kBAAA;AAAA,EAC7B,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,mCAAqC,EAAAC,kBAAA;AAAA,EACrC,+CACE,EAAAC,kBAAA;AAAA,EACF,kEACE,EAAAC,kBAAA;AAAA,EACF,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,8BAAgC,EAAAC,kBAAA;AAAA,EAChC,sCAAwC,EAAAC,kBAAA;AAAA,EACxC,uBAAyB,EAAAC,kBAAA;AAAA,EACzB,sCAAwC,EAAAC,kBAAA;AAAA,EACxC,8DACE,EAAAC,kBAAA;AAAA,EACF,qCAAuC,EAAAC,kBAAA;AAAA,EACvC,mCAAqC,EAAAC,kBAAA;AAAA,EACrC,oCAAsC,EAAAC,kBAAA;AAAA,EACtC,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,8BAAgC,EAAAC,kBAAA;AAAA,EAChC,sCAAwC,EAAAC,kBAAA;AAAA,EACxC,oDACE,EAAAC,kBAAA;AAAA,EACF,0BAA4B,EAAAC,kBAAA;AAAA,EAC5B,gCAAkC,EAAAC,kBAAA;AAAA,EAClC,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,iDACE,EAAAC,kBAAA;AAAA,EACF,4CAA8C,EAAAC,kBAAA;AAAA,EAC9C,kDACE,EAAAC,kBAAA;AAAA,EACF,uCAAyC,EAAAC,kBAAA;AAAA,EACzC,4BAA8B,EAAAC,kBAAA;AAAA,EAC9B,kCAAoC,EAAAC,kBAAA;AAAA,EACpC,kDACE,EAAAC,kBAAA;AAAA,EACF,oCAAsC,EAAAC,kBAAA;AAAA,EACtC,iCAAmC,EAAAC,kBAAA;AAAA,EACnC,uBAAyB,EAAAC,kBAAA;AAAA,EACzB,kBAAoB,EAAAC;AACtB;;;;"}
|
package/dist/package.json.cjs.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package.json.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@backstage/create-app",
|
|
3
|
-
"version": "0.5.23-next.
|
|
3
|
+
"version": "0.5.23-next.2",
|
|
4
4
|
"description": "A CLI that helps you create your own Backstage app",
|
|
5
5
|
"backstage": {
|
|
6
6
|
"role": "cli"
|
|
@@ -49,19 +49,18 @@
|
|
|
49
49
|
"fs-extra": "^11.2.0",
|
|
50
50
|
"handlebars": "^4.7.3",
|
|
51
51
|
"inquirer": "^8.2.0",
|
|
52
|
-
"node-fetch": "^2.7.0",
|
|
53
52
|
"ora": "^5.3.0",
|
|
54
53
|
"recursive-readdir": "^2.2.2"
|
|
55
54
|
},
|
|
56
55
|
"devDependencies": {
|
|
57
|
-
"@backstage/backend-test-utils": "1.2.0-next.
|
|
58
|
-
"@backstage/cli": "0.29.3-next.
|
|
56
|
+
"@backstage/backend-test-utils": "1.2.0-next.2",
|
|
57
|
+
"@backstage/cli": "0.29.3-next.2",
|
|
59
58
|
"@types/command-exists": "^1.2.0",
|
|
60
59
|
"@types/fs-extra": "^11.0.0",
|
|
61
60
|
"@types/inquirer": "^8.1.3",
|
|
62
61
|
"@types/node": "^20.16.0",
|
|
63
62
|
"@types/recursive-readdir": "^2.2.0",
|
|
64
|
-
"msw": "^
|
|
63
|
+
"msw": "^2.0.0",
|
|
65
64
|
"nodemon": "^3.0.1"
|
|
66
65
|
}
|
|
67
66
|
}
|
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
"@backstage/plugin-permission-node": "^{{version '@backstage/plugin-permission-node'}}",
|
|
34
34
|
"@backstage/plugin-proxy-backend": "^{{version '@backstage/plugin-proxy-backend'}}",
|
|
35
35
|
"@backstage/plugin-scaffolder-backend": "^{{version '@backstage/plugin-scaffolder-backend'}}",
|
|
36
|
+
"@backstage/plugin-scaffolder-backend-module-github": "^{{version '@backstage/plugin-scaffolder-backend-module-github'}}",
|
|
36
37
|
"@backstage/plugin-search-backend": "^{{version '@backstage/plugin-search-backend'}}",
|
|
37
38
|
"@backstage/plugin-search-backend-module-catalog": "^{{version '@backstage/plugin-search-backend-module-catalog'}}",
|
|
38
39
|
"@backstage/plugin-search-backend-module-pg": "^{{version '@backstage/plugin-search-backend-module-pg'}}",
|
|
@@ -13,6 +13,7 @@ const backend = createBackend();
|
|
|
13
13
|
backend.add(import('@backstage/plugin-app-backend'));
|
|
14
14
|
backend.add(import('@backstage/plugin-proxy-backend'));
|
|
15
15
|
backend.add(import('@backstage/plugin-scaffolder-backend'));
|
|
16
|
+
backend.add(import('@backstage/plugin-scaffolder-backend-module-github'));
|
|
16
17
|
backend.add(import('@backstage/plugin-techdocs-backend'));
|
|
17
18
|
|
|
18
19
|
// auth plugin
|